[Ada] Do not query the representation information in CodePeer/GNATprove

Message ID 20180611092239.GA134964@adacore.com
State New
Headers show
Series
  • [Ada] Do not query the representation information in CodePeer/GNATprove
Related show

Commit Message

Pierre-Marie de Rodat June 11, 2018, 9:22 a.m.
Representation information generated when user calls the compiler with -gnatR
switch is not available when running the frontend inside CodePeer or GNATprove.
Do not query such information in that case, as this leads to spurious messages
that it is not available.

There is no impact on compilation.

Tested on x86_64-pc-linux-gnu, committed on trunk

2018-06-11  Yannick Moy  <moy@adacore.com>

gcc/ada/

	* gnat1drv.adb: Do not check representation information in CodePeer and
	GNATprove modes, as these modes call a special backend instead of gigi,
	so do not have the information.

Patch

--- gcc/ada/gnat1drv.adb
+++ gcc/ada/gnat1drv.adb
@@ -1455,6 +1455,9 @@  begin
       --  representation information will be provided by the GNSA back end, not
       --  gigi.
 
+      --  A special back end is always called in CodePeer and GNATprove modes,
+      --  unless this is a subunit.
+
       if Back_End_Mode = Declarations_Only
         and then
           (not (Back_Annotate_Rep_Info or Generate_SCIL or GNATprove_Mode)
@@ -1468,7 +1471,11 @@  begin
          Tree_Dump;
          Tree_Gen;
          Namet.Finalize;
-         Check_Rep_Info;
+
+         if not (Generate_SCIL or GNATprove_Mode) then
+            Check_Rep_Info;
+         end if;
+
          return;
       end if;