diff options
author | Robert Dewar <dewar@adacore.com> | 2006-10-31 18:58:16 +0100 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2006-10-31 18:58:16 +0100 |
commit | 3f1ede06fc28db443347a22c579551d926e626d6 (patch) | |
tree | 822b27575fa161de1d3401c4f2b7073cea546bbb /gcc/ada/xref_lib.adb | |
parent | ac3b962ec3965793916eea80eab7f5dd42aa7570 (diff) | |
download | gcc-3f1ede06fc28db443347a22c579551d926e626d6.zip gcc-3f1ede06fc28db443347a22c579551d926e626d6.tar.gz gcc-3f1ede06fc28db443347a22c579551d926e626d6.tar.bz2 |
freeze.adb: Add handling of Last_Assignment field
2006-10-31 Robert Dewar <dewar@adacore.com>
Ed Schonberg <schonberg@adacore.com>
* freeze.adb: Add handling of Last_Assignment field
(Warn_Overlay): Supply missing continuation marks in error msgs
(Freeze_Entity): Add check for Preelaborable_Initialization
* g-comlin.adb: Add Warnings (Off) to prevent new warning
* g-expect.adb: Add Warnings (Off) to prevent new warning
* lib-xref.adb: Add handling of Last_Assignment field
(Generate_Reference): Centralize handling of pragma Obsolescent here
(Generate_Reference): Accept an implicit reference generated for a
default in an instance.
(Generate_Reference): Accept a reference for a node that is not in the
main unit, if it is the generic body corresponding to an subprogram
instantiation.
* xref_lib.adb: Add pragma Warnings (Off) to avoid new warnings
* sem_warn.ads, sem_warn.adb (Set_Warning_Switch): Add processing for
-gnatwq/Q.
(Warn_On_Useless_Assignment): Suppress warning if enclosing inner
exception handler.
(Output_Obsolescent_Entity_Warnings): Rewrite to avoid any messages on
use clauses, to avoid messages on packages used to qualify, and also
to avoid messages from obsolescent units.
(Warn_On_Useless_Assignments): Don't generate messages for imported
and exported variables.
(Warn_On_Useless_Assignments): New procedure
(Output_Obsolescent_Entity_Warnings): New procedure
(Check_Code_Statement): New procedure
* einfo.ads, einfo.adb (Has_Static_Discriminants): New flag
Change name Is_Ada_2005 to Is_Ada_2005_Only
(Last_Assignment): New field for useless assignment warning
From-SVN: r118271
Diffstat (limited to 'gcc/ada/xref_lib.adb')
-rw-r--r-- | gcc/ada/xref_lib.adb | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/gcc/ada/xref_lib.adb b/gcc/ada/xref_lib.adb index b04b5a6..004b277 100644 --- a/gcc/ada/xref_lib.adb +++ b/gcc/ada/xref_lib.adb @@ -136,12 +136,14 @@ package body Xref_Lib is Entity : String; Glob : Boolean := False) is - File_Start : Natural; - Line_Start : Natural; - Col_Start : Natural; - Line_Num : Natural := 0; - Col_Num : Natural := 0; - File_Ref : File_Reference := Empty_File; + File_Start : Natural; + Line_Start : Natural; + Col_Start : Natural; + Line_Num : Natural := 0; + Col_Num : Natural := 0; + + File_Ref : File_Reference := Empty_File; + pragma Warnings (Off, File_Ref); begin -- Find the end of the first item in Entity (pattern or file?) @@ -275,7 +277,9 @@ package body Xref_Lib is Add_To_Xref_File (Entity (File_Start .. Line_Start - 1), Visited => True); Pattern.File_Ref := File_Ref; + Add_Line (Pattern.File_Ref, Line_Num, Col_Num); + File_Ref := Add_To_Xref_File (ALI_File_Name (Entity (File_Start .. Line_Start - 1)), |