Mercurial > hg > CbC > CbC_gcc
comparison gcc/ada/ali.adb @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children | 1830386684a0 |
comparison
equal
deleted
inserted
replaced
111:04ced10e8804 | 131:84e7813d76e9 |
---|---|
4 -- -- | 4 -- -- |
5 -- A L I -- | 5 -- A L I -- |
6 -- -- | 6 -- -- |
7 -- B o d y -- | 7 -- B o d y -- |
8 -- -- | 8 -- -- |
9 -- Copyright (C) 1992-2017, Free Software Foundation, Inc. -- | 9 -- Copyright (C) 1992-2018, Free Software Foundation, Inc. -- |
10 -- -- | 10 -- -- |
11 -- GNAT is free software; you can redistribute it and/or modify it under -- | 11 -- GNAT is free software; you can redistribute it and/or modify it under -- |
12 -- terms of the GNU General Public License as published by the Free Soft- -- | 12 -- terms of the GNU General Public License as published by the Free Soft- -- |
13 -- ware Foundation; either version 3, or (at your option) any later ver- -- | 13 -- ware Foundation; either version 3, or (at your option) any later ver- -- |
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- | 14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- |
33 package body ALI is | 33 package body ALI is |
34 | 34 |
35 use ASCII; | 35 use ASCII; |
36 -- Make control characters visible | 36 -- Make control characters visible |
37 | 37 |
38 -- The following variable records which characters currently are | 38 -- The following variable records which characters currently are used as |
39 -- used as line type markers in the ALI file. This is used in | 39 -- line type markers in the ALI file. This is used in Scan_ALI to detect |
40 -- Scan_ALI to detect (or skip) invalid lines. | 40 -- (or skip) invalid lines. The following letters are still available: |
41 -- | |
42 -- B F G H J K O Q Z | |
41 | 43 |
42 Known_ALI_Lines : constant array (Character range 'A' .. 'Z') of Boolean := | 44 Known_ALI_Lines : constant array (Character range 'A' .. 'Z') of Boolean := |
43 ('V' => True, -- version | 45 ('V' => True, -- version |
44 'M' => True, -- main program | 46 'M' => True, -- main program |
45 'A' => True, -- argument | 47 'A' => True, -- argument |
55 'X' => True, -- xref | 57 'X' => True, -- xref |
56 'S' => True, -- specific dispatching | 58 'S' => True, -- specific dispatching |
57 'Y' => True, -- limited_with | 59 'Y' => True, -- limited_with |
58 'Z' => True, -- implicit with from instantiation | 60 'Z' => True, -- implicit with from instantiation |
59 'C' => True, -- SCO information | 61 'C' => True, -- SCO information |
60 'F' => True, -- SPARK cross-reference information | |
61 'T' => True, -- task stack information | 62 'T' => True, -- task stack information |
62 others => False); | 63 others => False); |
63 | 64 |
64 -------------------- | 65 -------------------- |
65 -- Initialize_ALI -- | 66 -- Initialize_ALI -- |
2026 Withs.Table (Withs.Last).Elaborate_All := False; | 2027 Withs.Table (Withs.Last).Elaborate_All := False; |
2027 Withs.Table (Withs.Last).Elab_Desirable := False; | 2028 Withs.Table (Withs.Last).Elab_Desirable := False; |
2028 Withs.Table (Withs.Last).Elab_All_Desirable := False; | 2029 Withs.Table (Withs.Last).Elab_All_Desirable := False; |
2029 Withs.Table (Withs.Last).SAL_Interface := False; | 2030 Withs.Table (Withs.Last).SAL_Interface := False; |
2030 Withs.Table (Withs.Last).Limited_With := (C = 'Y'); | 2031 Withs.Table (Withs.Last).Limited_With := (C = 'Y'); |
2031 Withs.Table (Withs.Last).Implicit_With_From_Instantiation | 2032 Withs.Table (Withs.Last).Implicit_With := (C = 'Z'); |
2032 := (C = 'Z'); | |
2033 | 2033 |
2034 -- Generic case with no object file available | 2034 -- Generic case with no object file available |
2035 | 2035 |
2036 if At_Eol then | 2036 if At_Eol then |
2037 Withs.Table (Withs.Last).Sfile := No_File; | 2037 Withs.Table (Withs.Last).Sfile := No_File; |
2339 -- a bug, or it deserves a special comment as to why this is so??? | 2339 -- a bug, or it deserves a special comment as to why this is so??? |
2340 | 2340 |
2341 -- The file/path name may be quoted | 2341 -- The file/path name may be quoted |
2342 | 2342 |
2343 Sdep.Table (Sdep.Last).Sfile := | 2343 Sdep.Table (Sdep.Last).Sfile := |
2344 Get_File_Name (May_Be_Quoted => True); | 2344 Get_File_Name (May_Be_Quoted => True); |
2345 | 2345 |
2346 Sdep.Table (Sdep.Last).Stamp := Get_Stamp; | 2346 Sdep.Table (Sdep.Last).Stamp := Get_Stamp; |
2347 Sdep.Table (Sdep.Last).Dummy_Entry := | 2347 Sdep.Table (Sdep.Last).Dummy_Entry := |
2348 (Sdep.Table (Sdep.Last).Stamp = Dummy_Time_Stamp); | 2348 (Sdep.Table (Sdep.Last).Stamp = Dummy_Time_Stamp); |
2349 | 2349 |