diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-03-22 14:06:28 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-03-22 14:06:28 +0000 |
commit | 2d204d4bd483a93e635fac3c18ca5460e88c3734 (patch) | |
tree | 046250c44426ffdf888413277208b576e9375d91 /gcc/ada/gnatls.adb | |
parent | a3906cad6bbde297c09833740c294b9bb0259258 (diff) | |
download | gcc-2d204d4bd483a93e635fac3c18ca5460e88c3734.tar.gz |
2004-03-22 Cyrille Comar <comar@act-europe.fr>
* ali.ads: Fix Comment about Dynamic_Elab.
* gnatls.adb (Output_Unit): Add output of many flags (Dynamic_Elab,
Has_RACW, Is_Generic, etc.)
(Output_Object, Gnatls): Take into account ALI files not attached to
an object.
2004-03-22 Vincent Celier <celier@gnat.com>
* gprep.adb: Change all String_Access to Name_Id
(Is_ASCII_Letter): new function
(Double_File_Name_Buffer): New procedure
(Preprocess_Infile_Name): New procedure
(Process_Files): New procedure
(Gnatprep): Check if output and input are existing directories.
Call Process_Files to do the real job.
2004-03-22 Robert Dewar <dewar@gnat.com>
* prj-env.adb, prj-nmsc.ads, prj-proc.ads,
s-stache.ads, s-stache.adb: Comment updates. Minor reformatting.
2004-03-22 Sergey Rybin <rybin@act-europe.fr>
* scn.adb (Contains): Add check for EOF, is needed for a degenerated
case when the source contains only comments.
2004-03-22 Ed Schonberg <schonberg@gnat.com>
* sem_ch10.adb (Analyze_Compilation_Unit): When generating a
declaration for a child subprogram body that acts as a spec, indicate
that the entity in the declaration needs debugging information.
* sem_ch3.adb (Complete_Private_Subtype): Do not build an underlying
full view if the subtype is created for a constrained record component;
gigi has enough information to construct the record, and there is no
place in the tree for the declaration.
* sem_ch6.adb (Build_Body_To_Inline): Use an internal name without
serial number for the dummy body that is built for analysis, to avoid
inconsistencies in the generation of internal names when compiling
with -gnatN.
2004-03-22 Thomas Quinot <quinot@act-europe.fr>
* sem_util.adb (Is_Object_Reference): A view conversion denotes an
object.
2004-03-22 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79826 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/gnatls.adb')
-rw-r--r-- | gcc/ada/gnatls.adb | 96 |
1 files changed, 80 insertions, 16 deletions
diff --git a/gcc/ada/gnatls.adb b/gcc/ada/gnatls.adb index 3d0854914a6..c66725114c0 100644 --- a/gcc/ada/gnatls.adb +++ b/gcc/ada/gnatls.adb @@ -45,6 +45,8 @@ procedure Gnatls is Max_Column : constant := 80; + No_Obj : aliased String := "<no_obj>"; + type File_Status is ( OK, -- matching timestamp Checksum_OK, -- only matching checksum @@ -271,8 +273,13 @@ procedure Gnatls is end if; if Print_Object then - Get_Name_String (ALIs.Table (Id).Ofile_Full_Name); - Max_Obj_Length := Integer'Max (Max_Obj_Length, Name_Len + 1); + if ALIs.Table (Id).No_Object then + Max_Obj_Length := + Integer'Max (Max_Obj_Length, No_Obj'Length); + else + Get_Name_String (ALIs.Table (Id).Ofile_Full_Name); + Max_Obj_Length := Integer'Max (Max_Obj_Length, Name_Len + 1); + end if; end if; end if; end loop; @@ -363,8 +370,13 @@ procedure Gnatls is begin if Print_Object then - Get_Name_String (O); - Object_Name := To_Host_File_Spec (Name_Buffer (1 .. Name_Len)); + if O /= No_File then + Get_Name_String (O); + Object_Name := To_Host_File_Spec (Name_Buffer (1 .. Name_Len)); + else + Object_Name := No_Obj'Unchecked_Access; + end if; + Write_Str (Object_Name.all); if Print_Source or else Print_Unit then @@ -501,14 +513,21 @@ procedure Gnatls is end if; if Verbose_Mode then - if U.Preelab or - U.No_Elab or - U.Pure or - U.Elaborate_Body or - U.Remote_Types or - U.Shared_Passive or - U.RCI or - U.Predefined + if U.Preelab or + U.No_Elab or + U.Pure or + U.Dynamic_Elab or + U.Has_RACW or + U.Remote_Types or + U.Shared_Passive or + U.RCI or + U.Predefined or + U.Internal or + U.Is_Generic or + U.Init_Scalars or + U.Interface or + U.Body_Needed_For_SAL or + U.Elaborate_Body then Write_Eol; Write_Str (" Flags =>"); @@ -524,6 +543,50 @@ procedure Gnatls is Write_Str (" Pure"); end if; + if U.Dynamic_Elab then + Write_Str (" Dynamic_Elab"); + end if; + + if U.Has_RACW then + Write_Str (" Has_RACW"); + end if; + + if U.Remote_Types then + Write_Str (" Remote_Types"); + end if; + + if U.Shared_Passive then + Write_Str (" Shared_Passive"); + end if; + + if U.RCI then + Write_Str (" RCI"); + end if; + + if U.Predefined then + Write_Str (" Predefined"); + end if; + + if U.Internal then + Write_Str (" Internal"); + end if; + + if U.Is_Generic then + Write_Str (" Is_Generic"); + end if; + + if U.Init_Scalars then + Write_Str (" Init_Scalars"); + end if; + + if U.Interface then + Write_Str (" Interface"); + end if; + + if U.Body_Needed_For_SAL then + Write_Str (" Body_Needed_For_SAL"); + end if; + if U.Elaborate_Body then Write_Str (" Elaborate Body"); end if; @@ -540,9 +603,6 @@ procedure Gnatls is Write_Str (" Predefined"); end if; - if U.RCI then - Write_Str (" Remote_Call_Interface"); - end if; end if; end if; @@ -966,7 +1026,11 @@ begin Get_Name_String (Units.Table (ALIs.Table (Id).First_Unit).Uname); if Also_Predef or else not Is_Internal_Unit then - Output_Object (ALIs.Table (Id).Ofile_Full_Name); + if ALIs.Table (Id).No_Object then + Output_Object (No_File); + else + Output_Object (ALIs.Table (Id).Ofile_Full_Name); + end if; -- In verbose mode print all main units in the ALI file, otherwise -- just print the first one to ease columnwise printout |