diff options
author | Piotr Trojanek <trojanek@adacore.com> | 2022-04-26 15:21:00 +0200 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2022-05-30 08:29:03 +0000 |
commit | b341b8130f80c9acec384e7acc98283bccd349d2 (patch) | |
tree | 877fa8247a83be3f169c3d130028151e802b1598 /gcc/ada/lib-xref.adb | |
parent | 6a91be29578fa466376cd482d3abed5eb20685b4 (diff) | |
download | gcc-b341b8130f80c9acec384e7acc98283bccd349d2.zip gcc-b341b8130f80c9acec384e7acc98283bccd349d2.tar.gz gcc-b341b8130f80c9acec384e7acc98283bccd349d2.tar.bz2 |
[Ada] Deconstruct deferred references
While cleaning up and modifying code for unreferenced warnings we
removed all calls to Defer_Reference, which was the only routine that
populated the Deferred_References table. Consequently, all the code
related to this table became dead.
gcc/ada/
* lib-xref.ads (Deferred_Reference_Entry, Defer_Reference,
Process_Deferred_References, Has_Deferred_Reference): Remove
client API.
* lib-xref.adb (Deferred_References, Defer_Reference,
Has_Deferred_Reference, Process_Deferred_References): Remove
implementation.
* frontend.adb, sem_ch11.adb, sem_ch5.adb, sem_res.adb,
sem_util.adb, sem_warn.adb: Remove uses of Deferred_References.
Diffstat (limited to 'gcc/ada/lib-xref.adb')
-rw-r--r-- | gcc/ada/lib-xref.adb | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/gcc/ada/lib-xref.adb b/gcc/ada/lib-xref.adb index 919e41f..a4ff69a 100644 --- a/gcc/ada/lib-xref.adb +++ b/gcc/ada/lib-xref.adb @@ -57,14 +57,6 @@ package body Lib.Xref is -- Declarations -- ------------------ - package Deferred_References is new Table.Table ( - Table_Component_Type => Deferred_Reference_Entry, - Table_Index_Type => Int, - Table_Low_Bound => 0, - Table_Initial => 512, - Table_Increment => 200, - Table_Name => "Name_Deferred_References"); - -- The Xref table is used to record references. The Loc field is set -- to No_Location for a definition entry. @@ -211,21 +203,6 @@ package body Lib.Xref is end if; end Add_Entry; - --------------------- - -- Defer_Reference -- - --------------------- - - procedure Defer_Reference (Deferred_Reference : Deferred_Reference_Entry) is - begin - -- If Get_Ignore_Errors, then we are in Preanalyze_Without_Errors, and - -- we should not record cross references, because that will cause - -- duplicates when we call Analyze. - - if not Get_Ignore_Errors then - Deferred_References.Append (Deferred_Reference); - end if; - end Defer_Reference; - ----------- -- Equal -- ----------- @@ -1291,21 +1268,6 @@ package body Lib.Xref is return E; end Get_Key; - ---------------------------- - -- Has_Deferred_Reference -- - ---------------------------- - - function Has_Deferred_Reference (Ent : Entity_Id) return Boolean is - begin - for J in Deferred_References.First .. Deferred_References.Last loop - if Deferred_References.Table (J).E = Ent then - return True; - end if; - end loop; - - return False; - end Has_Deferred_Reference; - ---------- -- Hash -- ---------- @@ -2753,33 +2715,6 @@ package body Lib.Xref is end Output_Refs; end Output_References; - --------------------------------- - -- Process_Deferred_References -- - --------------------------------- - - procedure Process_Deferred_References is - begin - for J in Deferred_References.First .. Deferred_References.Last loop - declare - D : Deferred_Reference_Entry renames Deferred_References.Table (J); - - begin - case Known_To_Be_Assigned (D.N) is - when True => - Generate_Reference (D.E, D.N, 'm'); - - when False => - Generate_Reference (D.E, D.N, 'r'); - - end case; - end; - end loop; - - -- Clear processed entries from table - - Deferred_References.Init; - end Process_Deferred_References; - -- Start of elaboration for Lib.Xref begin |