aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/ali.ads
diff options
context:
space:
mode:
authorVincent Celier <celier@adacore.com>2010-06-14 09:22:35 +0000
committerArnaud Charlet <charlet@gcc.gnu.org>2010-06-14 11:22:35 +0200
commit5d993afdcbc8174b8edc27911da2d371838b4c07 (patch)
tree67bd26981d944dcf47ffdd97d64395c9921ade20 /gcc/ada/ali.ads
parent49d140bba45474cb8153c4fdc56db0387261d3b1 (diff)
downloadgcc-5d993afdcbc8174b8edc27911da2d371838b4c07.zip
gcc-5d993afdcbc8174b8edc27911da2d371838b4c07.tar.gz
gcc-5d993afdcbc8174b8edc27911da2d371838b4c07.tar.bz2
gnatbind.adb: Call Scan_ALI with Directly_Scanned set to True for all the ALI files on the...
2010-06-14 Vincent Celier <celier@adacore.com> * gnatbind.adb: Call Scan_ALI with Directly_Scanned set to True for all the ALI files on the command line. * ali.adb (Scan_ALI): Set component Directly_Scanned of the unit(s) to the same value as the parameter of the same name. * ali.ads (Scan_ALI): New Boolean parameter Directly_Scanned, defaulted to False. * bindgen.adb (Gen_Versions_Ada): Never emit version symbols for Stand-Alone Library interfaces. When binding Stand-Alone Libraries, emit version symbols only for the units of the library. (Gen_Versions_C): Ditto. From-SVN: r160715
Diffstat (limited to 'gcc/ada/ali.ads')
-rw-r--r--gcc/ada/ali.ads26
1 files changed, 18 insertions, 8 deletions
diff --git a/gcc/ada/ali.ads b/gcc/ada/ali.ads
index 9e8da30..94f7647 100644
--- a/gcc/ada/ali.ads
+++ b/gcc/ada/ali.ads
@@ -342,6 +342,9 @@ package ALI is
SAL_Interface : Boolean;
-- Set True when this is an interface to a standalone library
+ Directly_Scanned : Boolean;
+ -- True iff it is a unit from an ALI file specified to gnatbind
+
Body_Needed_For_SAL : Boolean;
-- Indicates that the source for the body of the unit (subprogram,
-- package, or generic unit) must be included in a standalone library.
@@ -933,14 +936,15 @@ package ALI is
-- Initialize the ALI tables. Also resets all switch values to defaults
function Scan_ALI
- (F : File_Name_Type;
- T : Text_Buffer_Ptr;
- Ignore_ED : Boolean;
- Err : Boolean;
- Read_Xref : Boolean := False;
- Read_Lines : String := "";
- Ignore_Lines : String := "X";
- Ignore_Errors : Boolean := False) return ALI_Id;
+ (F : File_Name_Type;
+ T : Text_Buffer_Ptr;
+ Ignore_ED : Boolean;
+ Err : Boolean;
+ Read_Xref : Boolean := False;
+ Read_Lines : String := "";
+ Ignore_Lines : String := "X";
+ Ignore_Errors : Boolean := False;
+ Directly_Scanned : Boolean := False) return ALI_Id;
-- Given the text, T, of an ALI file, F, scan and store the information
-- from the file, and return the Id of the resulting entry in the ALI
-- table. Switch settings may be modified as described above in the
@@ -986,5 +990,11 @@ package ALI is
-- Scan_ALI was completely unable to process the file (e.g. it did not
-- look like an ALI file at all). Ignore_Errors is intended to improve
-- the downward compatibility of new compilers with old tools.
+ --
+ -- Directly_Scanned is normally False. If it is set to True, then the
+ -- units (spec and/or body) corresponding to the ALI file are marked as
+ -- such. It is used to decide for what units gnatbind should generate
+ -- the symbols corresponding to 'Version or 'Body_Version in
+ -- Stand-Alone Libraries.
end ALI;