annotate gcc/ada/spark_xrefs.adb @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 84e7813d76e9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 ------------------------------------------------------------------------------
kono
parents:
diff changeset
2 -- --
kono
parents:
diff changeset
3 -- GNAT COMPILER COMPONENTS --
kono
parents:
diff changeset
4 -- --
kono
parents:
diff changeset
5 -- S P A R K _ X R E F S --
kono
parents:
diff changeset
6 -- --
kono
parents:
diff changeset
7 -- B o d y --
kono
parents:
diff changeset
8 -- --
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
9 -- Copyright (C) 2011-2019, Free Software Foundation, Inc. --
111
kono
parents:
diff changeset
10 -- --
kono
parents:
diff changeset
11 -- GNAT is free software; you can redistribute it and/or modify it under --
kono
parents:
diff changeset
12 -- terms of the GNU General Public License as published by the Free Soft- --
kono
parents:
diff changeset
13 -- ware Foundation; either version 3, or (at your option) any later ver- --
kono
parents:
diff changeset
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
kono
parents:
diff changeset
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
kono
parents:
diff changeset
16 -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
kono
parents:
diff changeset
17 -- for more details. You should have received a copy of the GNU General --
kono
parents:
diff changeset
18 -- Public License distributed with GNAT; see file COPYING3. If not, go to --
kono
parents:
diff changeset
19 -- http://www.gnu.org/licenses for a complete copy of the license. --
kono
parents:
diff changeset
20 -- --
kono
parents:
diff changeset
21 -- GNAT was originally developed by the GNAT team at New York University. --
kono
parents:
diff changeset
22 -- Extensive contributions were provided by Ada Core Technologies Inc. --
kono
parents:
diff changeset
23 -- --
kono
parents:
diff changeset
24 ------------------------------------------------------------------------------
kono
parents:
diff changeset
25
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
26 with Lib.Xref;
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
27 with Output; use Output;
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
28 with Sem_Util; use Sem_Util;
111
kono
parents:
diff changeset
29
kono
parents:
diff changeset
30 package body SPARK_Xrefs is
kono
parents:
diff changeset
31
kono
parents:
diff changeset
32 ------------
kono
parents:
diff changeset
33 -- dspark --
kono
parents:
diff changeset
34 ------------
kono
parents:
diff changeset
35
kono
parents:
diff changeset
36 procedure dspark is
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
37
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
38 procedure Dump (Index : Nat; AXR : SPARK_Xref_Record);
111
kono
parents:
diff changeset
39
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
40 procedure Dump_SPARK_Xrefs is new
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
41 Lib.Xref.SPARK_Specific.Iterate_SPARK_Xrefs (Dump);
111
kono
parents:
diff changeset
42
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
43 ----------
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
44 -- Dump --
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
45 ----------
111
kono
parents:
diff changeset
46
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
47 procedure Dump (Index : Nat; AXR : SPARK_Xref_Record) is
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
48 begin
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
49 Write_Str (" ");
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
50 Write_Int (Index);
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
51 Write_Char ('.');
111
kono
parents:
diff changeset
52
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
53 Write_Str (" Entity = " & Unique_Name (AXR.Entity));
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
54 Write_Str (" (");
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
55 Write_Int (Nat (AXR.Entity));
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
56 Write_Str (")");
111
kono
parents:
diff changeset
57
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
58 Write_Str (" Scope = " & Unique_Name (AXR.Ref_Scope));
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
59 Write_Str (" (");
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
60 Write_Int (Nat (AXR.Ref_Scope));
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
61 Write_Str (")");
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
62
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
63 Write_Str (" Ref_Type = '" & AXR.Rtype & "'");
111
kono
parents:
diff changeset
64
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
65 Write_Eol;
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
66 end Dump;
111
kono
parents:
diff changeset
67
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
68 -- Start of processing for dspark
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
69
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
70 begin
111
kono
parents:
diff changeset
71 -- Dump SPARK cross-reference table
kono
parents:
diff changeset
72
kono
parents:
diff changeset
73 Write_Eol;
kono
parents:
diff changeset
74 Write_Line ("SPARK Xref Table");
kono
parents:
diff changeset
75 Write_Line ("----------------");
kono
parents:
diff changeset
76
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
77 Dump_SPARK_Xrefs;
111
kono
parents:
diff changeset
78
kono
parents:
diff changeset
79 end dspark;
kono
parents:
diff changeset
80
kono
parents:
diff changeset
81 end SPARK_Xrefs;