This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Ada] Clean up -gnatG of run time routine names


This patch does two things for the output of run-time routine names.
First it only outputs the single direct name, fully qualified in the
case where there is package testing, instead of redundant qualified
name notation, and second it avoids separation of the $ from the name
it precedes.

The following test:

procedure vcasn is
   package t is
      type r is tagged record
         x, y : character;
      end record;

      for r use record
         x at 5 range 0 .. 7;
         y at 7 range 0 .. 7;
      end record;

      procedure assign (r1 : out r; r2 : r);

      type r1 is new r with record
         m, n, p : character;
      end record;

      for r1 use record
         m at 4 range 0 .. 7;
         n at 6 range 0 .. 7;
      end record;
   end;

   package body t is
      procedure assign (r1 : out r; r2 : r) is
      begin
         r1 := r2;
      end;
   end;
begin
   null;
end;

(the same test used for testing placement of tagged components)
compiled with -gnatG yields an output file that given
grep "raise_from_controlled_operation" log

generates two lines:

              $ada__exceptions__raise_from_controlled_operation
          $ada__exceptions__raise_from_controlled_operation

Before one of the $ signs got separated from the name

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

2009-07-20  Robert Dewar  <dewar@adacore.com>

	* sprint.adb (Write_Subprogram_Name): New procedure to output
	subprogram name with possible preceding $ (replaces
	Note_Implicit_Run_Time_Call).

Attachment: difs
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]