summaryrefslogtreecommitdiff
path: root/gcc/ada/opt.ads
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2007-12-13 10:22:25 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2007-12-13 10:22:25 +0000
commit9c5da18f1cd965123c0fcaaee7a9f295ff2f54a7 (patch)
tree4eec5f9fa1871d68b1f804e4f9a512401c2db2ff /gcc/ada/opt.ads
parentd34432fafd1efc1b4aa0aba79a38b633af6c1daa (diff)
downloadgcc-9c5da18f1cd965123c0fcaaee7a9f295ff2f54a7.tar.gz
2007-12-06 Vincent Celier <celier@adacore.com>
* opt.ads: Indicate what flags are used by the Project Manager, gprbuild and gprclean. (Opt.Follow_Links_For_Dirs): New flag (Warn_On_Assertion_Failure): New flag (Wide_Character_Encoding_Method_Specified): New flag (Suppress_All_Inlining): New switch set by -fno-inline (Real_VMS_Target): New flag New pragma Fast_Math git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@130821 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/opt.ads')
-rw-r--r--gcc/ada/opt.ads106
1 files changed, 80 insertions, 26 deletions
diff --git a/gcc/ada/opt.ads b/gcc/ada/opt.ads
index 00a9cef9076..decd1cc4609 100644
--- a/gcc/ada/opt.ads
+++ b/gcc/ada/opt.ads
@@ -36,6 +36,10 @@
-- other GNAT tools. The comments indicate which options are used by which
-- programs (GNAT, GNATBIND, GNATLINK, GNATMAKE, GPRMAKE, etc).
+-- Some flags are labelled "PROJECT MANAGER". These are used by tools that
+-- use the Project Manager. These tools include gnatmake, gnatname, the gnat
+-- driver, gnatclean, gprbuild and gprclean.
+
with Debug;
with Hostparm; use Hostparm;
with Types; use Types;
@@ -177,7 +181,7 @@ package Opt is
-- building a library. May be set to True by Gnatbind.Scan_Bind_Arg.
Bind_Only : Boolean := False;
- -- GNATMAKE, GPRMAKE
+ -- GNATMAKE, GPRMAKE, GPRBUILD
-- Set to True to skip compile and link steps
-- (except when Compile_Only and/or Link_Only are True).
@@ -222,7 +226,7 @@ package Opt is
-- directly modified by gnatmake, to affect the shared binder routines.
Check_Switches : Boolean := False;
- -- GNATMAKE, GPRMAKE
+ -- GNATMAKE, GPRMAKE, GPBUILD
-- Set to True to check compiler options during the make process
Check_Unreferenced : Boolean := False;
@@ -250,11 +254,13 @@ package Opt is
-- in the output file.
Compile_Only : Boolean := False;
- -- GNATMAKE, GNATCLEAN, GPRMAKE
- -- GNATMAKE, GPRMAKE: set to True to skip bind and link steps (except when
- -- Bind_Only is True).
- -- GNATCLEAN: set to True to delete only the files produced by the compiler
- -- but not the library files or the executable files.
+ -- GNATMAKE, GNATCLEAN, GPRMAKE, GPBUILD, GPRCLEAN
+ -- GNATMAKE, GPRMAKE, GPRMAKE:
+ -- set to True to skip bind and link steps (except when Bind_Only is
+ -- True).
+ -- GNATCLEAN, GPRCLEAN:
+ -- set to True to delete only the files produced by the compiler but not
+ -- the library files or the executable files.
Config_File : Boolean := True;
-- GNAT
@@ -323,7 +329,7 @@ package Opt is
-- potentially blocking operations are detected from protected actions.
Display_Compilation_Progress : Boolean := False;
- -- GNATMAKE, GPRMAKE
+ -- GNATMAKE, GPRMAKE, GPRBUILD
-- Set True (-d switch) to display information on progress while compiling
-- files. Internal flag to be used in conjunction with an IDE (e.g GPS).
@@ -466,6 +472,11 @@ package Opt is
-- When True (set by gnatmake switch -x), allow compilation of sources
-- that are not part of any project file.
+ Fast_Math : Boolean := False;
+ -- GNAT
+ -- Indicates the current setting of Fast_Math mode, as set by the use
+ -- of a Fast_Math pragma (set on by Fast_Math (On)).
+
Float_Format : Character := ' ';
-- GNAT
-- A non-blank value indicates that a Float_Format pragma has been
@@ -491,11 +502,11 @@ package Opt is
-- (-F switch set).
Force_Compilations : Boolean := False;
- -- GNATMAKE, GPRMAKE
+ -- GNATMAKE, GPRMAKE, GPRBUILD
-- Set to force recompilations even when the objects are up-to-date.
Full_Path_Name_For_Brief_Errors : Boolean := False;
- -- GNAT, GNATMAKE, GNATCLEAN, GPRMAKE
+ -- PROJECT MANAGER
-- When True, in Brief_Output mode, each error message line
-- will start with the full path name of the source.
-- When False, only the file name without directory information
@@ -609,9 +620,19 @@ package Opt is
-- generate code even in case of unsupported construct, so that the byte
-- code can be used by static analysis tools.
- Follow_Links : Boolean := False;
- -- GNATMAKE
+ Follow_Links_For_Files : Boolean := False;
+ -- PROJECT MANAGER
-- Set to True (-eL) to process the project files in trusted mode
+ -- If Follow_Links is False, it is assumed that the project doesn't contain
+ -- any file duplicated through symbolic links (although the latter are
+ -- still valid if they point to a file which is outside of the project),
+ -- and that no directory has a name which is a valid source name.
+
+ Follow_Links_For_Dirs : Boolean := True;
+ -- PROJECT MANAGER
+ -- Whether directories can be links in this project, and therefore
+ -- additional system calls should be performed to ensure we always see the
+ -- same full name for each directory.
Front_End_Inlining : Boolean := False;
-- GNAT
@@ -630,7 +651,7 @@ package Opt is
-- if not.
Keep_Going : Boolean := False;
- -- GNATMAKE, GPRMAKE
+ -- GNATMAKE, GPRMAKE, GPRBUILD
-- When True signals to ignore compilation errors and keep
-- processing sources until there is no more work.
@@ -645,7 +666,7 @@ package Opt is
-- children.
Link_Only : Boolean := False;
- -- GNATMAKE, GPRMAKE
+ -- GNATMAKE, GPRMAKE, GPRBUILD
-- Set to True to skip compile and bind steps
-- (except when Bind_Only is set to True).
@@ -773,7 +794,7 @@ package Opt is
-- then this value is initialized by Osint to the appropriate value.
Maximum_Processes : Positive := 1;
- -- GNATMAKE, GPRMAKE
+ -- GNATMAKE, GPRMAKE, GPRBUILD
-- Maximum number of processes that should be spawned to carry out
-- compilations.
@@ -920,7 +941,7 @@ package Opt is
-- used if the policy is set in package System.
Quiet_Output : Boolean := False;
- -- GNATMAKE, GNATCLEAN, GPRMAKE
+ -- GNATMAKE, GNATCLEAN, GPRMAKE, GPRBUILD, GPRCLEAN
-- Set to True if the tool should not have any output if there are no
-- errors or warnings.
@@ -982,6 +1003,11 @@ package Opt is
-- in package Style (see body of this package for details of checks)
-- This flag is set True by either the -gnatg or -gnaty switches.
+ Suppress_All_Inlining : Boolean := False;
+ -- GNAT
+ -- Set by -fno-inline. Suppresses all inlining, both front end and back end
+ -- regardless of any other switches that are set.
+
System_Extend_Pragma_Arg : Node_Id := Empty;
-- GNAT
-- Set non-empty if and only if a correct Extend_System pragma was present
@@ -1064,6 +1090,12 @@ package Opt is
-- GNAT
-- Set to True (-gnatt) to generate output tree file
+ True_VMS_Target : Boolean := False;
+ -- Set True if we are on a VMS target. The setting of this flag reflects
+ -- the true state of the compile, unlike Targparm.OpenVMS_On_Target which
+ -- can also be true when debug flag m is set (-gnatdm). This is used in the
+ -- few cases where we do NOT want -gnatdm to trigger the VMS behavior.
+
Try_Semantics : Boolean := False;
-- GNAT
-- Flag set to force attempt at semantic analysis, even if parser errors
@@ -1096,12 +1128,12 @@ package Opt is
-- corresponding attribute set in GNATBIND.
Upper_Half_Encoding : Boolean := False;
- -- GNAT
+ -- GNAT, GNATBIND
-- Normally set False, indicating that upper half ASCII characters are
-- used in the normal way to represent themselves. If the wide character
-- encoding method uses the upper bit for this encoding, then this flag is
-- set True, and upper half characters in the source indicate the start of
- -- a wide character sequence.
+ -- a wide character sequence. Set by -gnatW or -W switches.
Usage_Requested : Boolean := False;
-- GNAT, GNATBIND, GNATMAKE
@@ -1129,7 +1161,7 @@ package Opt is
Verbose_Mode : Boolean := False;
-- GNAT, GNATBIND, GNATMAKE, GNATLINK, GNATLS, GNATNAME, GNATCLEAN,
- -- GPRMAKE
+ -- GPRMAKE, GPRBUILD, GPRCLEAN
-- Set to True to get verbose mode (full error message text and location
-- information sent to standard output, also header, copyright and summary)
@@ -1154,6 +1186,11 @@ package Opt is
-- including warnings on Ada 2005 obsolescent features used in Ada 2005
-- mode. Set False by -gnatwY.
+ Warn_On_Assertion_Failure : Boolean := True;
+ -- GNAT
+ -- Set to True to activate warnings on assertions that can be determined
+ -- at compile time will always fail. Set false by -gnatw.A.
+
Warn_On_Assumed_Low_Bound : Boolean := True;
-- GNAT
-- Set to True to activate warnings for string parameters that are indexed
@@ -1194,13 +1231,16 @@ package Opt is
Warn_On_Modified_Unread : Boolean := False;
-- GNAT
-- Set to True to generate warnings if a variable is assigned but is never
- -- read. The default is that this warning is suppressed.
+ -- read. Also controls warnings for similar cases involving out parameters,
+ -- but only if there is only one out parameter for the procedure involved.
+ -- The default is that this warning is suppressed.
- Warn_On_Out_Parameter_Unread : Boolean := False;
+ Warn_On_All_Unread_Out_Parameters : Boolean := False;
-- GNAT
- -- Set to True to generate warnings if a variable is modified by being
- -- passed as to an IN OUT or OUT formal, but the resulting value is never
- -- read. The default is that this warning is suppressed.
+ -- Set to True to generate warnings in all cases where a variable is
+ -- modified by being passed as to an OUT formal, but the resulting value is
+ -- never read. The default is that this warning is suppressed, except in
+ -- the case of
Warn_On_No_Value_Assigned : Boolean := True;
-- GNAT
@@ -1267,7 +1307,7 @@ package Opt is
-- are generated and are treated as errors.
Wide_Character_Encoding_Method : WC_Encoding_Method := WCEM_Brackets;
- -- GNAT
+ -- GNAT, GNATBIND
-- Method used for encoding wide characters in the source program. See
-- description of type in unit System.WCh_Con for a list of the methods
-- that are currently supported. Note that brackets notation is always
@@ -1275,7 +1315,13 @@ package Opt is
-- variable. The default setting causes only the brackets notation to be
-- recognized. If this is the main unit, this setting also controls the
-- output of the W=? parameter in the ALI file, which is used to provide
- -- the default for Wide_Text_IO files.
+ -- the default for encoding [Wide_[Wide_]]Text_IO files. For the binder,
+ -- the value set here overrides this main unit default.
+
+ Wide_Character_Encoding_Method_Specified : Boolean := False;
+ -- GNAT, GNATBIND
+ -- Set True if the value in Wide_Character_Encoding_Method was set as
+ -- a result of an explicit -gnatW? or -W? switch. False otherwise.
Xref_Active : Boolean := True;
-- GNAT
@@ -1363,6 +1409,13 @@ package Opt is
-- however that the setting of this flag is ignored for internal and
-- predefined units (which are always compiled with Lowercase mode).
+ Fast_Math_Config : Boolean;
+ -- GNAT
+ -- This is the value of the configuration switch that controls Fast_Math
+ -- mode, as set by a Fast_Math pragma in configuration pragmas. It is
+ -- used to set the initial value of Fast_Math at the start of each new
+ -- compilation unit.
+
Persistent_BSS_Mode_Config : Boolean;
-- GNAT
-- This is the value of the configuration switch that controls whether
@@ -1499,6 +1552,7 @@ private
Extensions_Allowed : Boolean;
External_Name_Exp_Casing : External_Casing_Type;
External_Name_Imp_Casing : External_Casing_Type;
+ Fast_Math : Boolean;
Persistent_BSS_Mode : Boolean;
Polling_Required : Boolean;
Use_VADS_Size : Boolean;