aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/lib-xref.adb
diff options
context:
space:
mode:
authorPiotr Trojanek <trojanek@adacore.com>2022-04-26 15:21:00 +0200
committerPierre-Marie de Rodat <derodat@adacore.com>2022-05-30 08:29:03 +0000
commitb341b8130f80c9acec384e7acc98283bccd349d2 (patch)
tree877fa8247a83be3f169c3d130028151e802b1598 /gcc/ada/lib-xref.adb
parent6a91be29578fa466376cd482d3abed5eb20685b4 (diff)
downloadgcc-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.adb65
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