diff options
author | Vincent Celier <celier@adacore.com> | 2007-04-06 11:19:38 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2007-04-06 11:19:38 +0200 |
commit | 958a816e69e829d04e175512a09f8b6f43cd2ffd (patch) | |
tree | f5cd92cf0c8355154424935e5aa51a46816033b9 /gcc/ada/vms_data.ads | |
parent | fea9e956ec1b3e1b95f79e44309cfa93314ddbce (diff) | |
download | gcc-958a816e69e829d04e175512a09f8b6f43cd2ffd.zip gcc-958a816e69e829d04e175512a09f8b6f43cd2ffd.tar.gz gcc-958a816e69e829d04e175512a09f8b6f43cd2ffd.tar.bz2 |
errutil.adb (Initialize): Initialize warnings table...
2007-04-06 Vincent Celier <celier@adacore.com>
* errutil.adb (Initialize): Initialize warnings table, if all warnings
are suppressed, supply an initial dummy entry covering all possible
source locations.
* make.adb (Scan_Make_Arg): Reject options that should start with "--"
and start with only one, such as "-RTS=none".
(Collect_Arguments): Do not check for sources outside of projects.
Do not collect arguments if project is externally built.
(Compile_Sources): Do nothing, not even check if the source is up to
date, if its project is externally built.
(Compile): When compiling a predefined source, add -gnatpg
as the second switch, after -c.
(Compile_Sources): Allow compilation of Annex J renames without -a
(Is_In_Object_Directory): Check if the ALI file is in the object
even if there is no project extension.
(Create_Binder_Mapping_File): Only put a unit in the mapping file for
gnatbind if the ALI file effectively exists.
(Initialize): Add the directory where gnatmake is invoked in front of
the path if it is invoked from a bin directory, even without directory
information, so that the correct GNAT tools will be used when spawned
without directory information.
* makeusg.adb: Change switch -S to -eS
Add lines for new switches -we, -wn and -ws
Add line for new switch -p
* prj-proc.adb (Process): Set Success to False when Warning_Mode is
Treat_As_Error and there are warnings.
* switch-m.ads, switch-m.adb (Normalize_Compiler_Switches): Do not skip
-gnatww Change gnatmake switch -S to -eS
(Scan_Make_Switches): Code reorganisation. Process separately multi
character switches and single character switches.
(Scan_Make_Switches): New Boolean out parameter Success. Set Success to
False when switch is not recognized by gnatmake.
(Scan_Make_Switches): Set Setup_Projects True when -p or
--create-missing-dirs is specified.
* fname.adb (Is_Predefined_File_Name): Return True for annex J
renamings Calendar, Machine_Code, Unchecked_Conversion and
Unchecked_Deallocation only when Renamings_Included is True.
* par.adb: Allow library units Calendar, Machine_Code,
Unchecked_Conversion and Unchecked_Deallocation to be recompiled even
when -gnatg is not specified.
(P_Interface_Type_Definition): Remove the formal Is_Synchronized because
there is no need to generate always a record_definition_node in case
of synchronized interface types.
(SIS_Entry_Active): Initialize global variable to False
(P_Null_Exclusion): For AI-447: Add parameter Allow_Anonymous_In_95 to
indicate cases where AI-447 says "not null" is legal.
* makeutl.ads, makeutil.adb (Executable_Prefix_Path): New function
* makegpr.adb (Check_Compilation_Needed): Take into account dependency
files with with several lines starting with the object fileb name.
(Scan_Arg): Set Setup_Projects True when -p or --create-missing-dirs
is specified.
(Initialize): Add the directory where gprmake is invoked in front of the
path, if it is invoked from a bin directory or with directory
information, so that the correct GNAT tools will be used when invoked
directly.
(Check_Compilation_Needed): Process correctly backslashes on Windows.
* vms_data.ads: Update switches/qualifiers
From-SVN: r123560
Diffstat (limited to 'gcc/ada/vms_data.ads')
-rw-r--r-- | gcc/ada/vms_data.ads | 292 |
1 files changed, 228 insertions, 64 deletions
diff --git a/gcc/ada/vms_data.ads b/gcc/ada/vms_data.ads index e7e19ef..9aa3939 100644 --- a/gcc/ada/vms_data.ads +++ b/gcc/ada/vms_data.ads @@ -1961,6 +1961,8 @@ package VMS_Data is "-gnaty9 " & "ATTRIBUTE " & "-gnatya " & + "ARRAY_INDEXES " & + "-gnatyA " & "BLANKS " & "-gnatyb " & "COMMENTS " & @@ -2030,6 +2032,12 @@ package VMS_Data is -- underscore must be uppercase. -- All other letters must be lowercase. -- + -- ARRAY_INDEXES Check indexes of array attributes. + -- For array attributes First, Last, Range, + -- or Length, the index number must be omitted + -- for one-dimensional arrays and is required + -- for multi-dimensional arrays. + -- -- BLANKS Blanks not allowed at statement end. -- Trailing blanks are not allowed at the end of -- statements. The purpose of this rule, together @@ -4101,6 +4109,14 @@ package VMS_Data is -- when the only modifications to a source file consist in -- adding/removing comments, empty lines, spaces or tabs. + S_Make_Missing : aliased constant S := "/CREATE_MISSING_DIRS " & + "-p"; + -- /NOCREATE_MISSING_DIRS (D) + -- /CREATE_MISSING_DIRS + -- + -- When an object directory, a library directory or an exec directory + -- in missing, attempt to create the directory. + S_Make_Nolink : aliased constant S := "/NOLINK " & "-c"; -- /NOLINK @@ -4212,7 +4228,7 @@ package VMS_Data is -- When looking for source files also look in the specified directories. S_Make_Stand : aliased constant S := "/STANDARD_OUTPUT_FOR_COMMANDS " & - "-S"; + "-eS"; -- /NOSTANDARD_OUTPUT_FOR_COMMANDS (D) -- /STANDARD_OUTPUT_FOR_COMMANDS -- @@ -4286,6 +4302,7 @@ package VMS_Data is S_Make_Med_Verb'Access, S_Make_Mess 'Access, S_Make_Minimal 'Access, + S_Make_Missing 'Access, S_Make_Nolink 'Access, S_Make_Nomain 'Access, S_Make_Nonpro 'Access, @@ -4993,6 +5010,36 @@ package VMS_Data is -- used in the default dictionary file, are defined in the GNAT User's -- Guide. + S_Pretty_Encoding : aliased constant S := "/RESULT_ENCODING=" & + "BRACKETS " & + "-Wb " & + "HEX_ESC " & + "-Wh " & + "UPPER_HALF " & + "-Wu " & + "SHIFT_JIS " & + "-Ws " & + "EUC " & + "-We " & + "UTF_8 " & + "-W8"; + -- /RESULT_ENCODING[=encoding-option] + -- + -- Specify the wide character encoding of the result file. + -- '=encoding-option' may be one of: + -- + -- BRACKETS (D) Brackets encoding. + -- + -- HEX_ESC Hex ESC encoding. + -- + -- UPPER_HALF Upper half encoding. + -- + -- SHIFT_JIS Shift-JIS encoding. + -- + -- EUC EUC Encoding. + -- + -- UTF_8 UTF-8 encoding. + S_Pretty_Files : aliased constant S := "/FILES=@" & "-files=@"; -- /FILES=filename @@ -5225,6 +5272,7 @@ package VMS_Data is S_Pretty_Dico 'Access, S_Pretty_Eol 'Access, S_Pretty_Ext 'Access, + S_Pretty_Encoding 'Access, S_Pretty_Files 'Access, S_Pretty_Forced 'Access, S_Pretty_Formfeed 'Access, @@ -5249,69 +5297,6 @@ package VMS_Data is S_Pretty_Verbose 'Access, S_Pretty_Warnings 'Access); - ----------------------------- - -- Switches for GNAT SETUP -- - ----------------------------- - - S_Setup_Ext : aliased constant S := "/EXTERNAL_REFERENCE=" & '"' & - "-X" & '"'; - -- /EXTERNAL_REFERENCE="name=val" - -- - -- Specifies an external reference to the project manager. Useful only if - -- /PROJECT_FILE is used. - -- - -- Example: - -- /EXTERNAL_REFERENCE="DEBUG=TRUE" - - S_Setup_Mess : aliased constant S := "/MESSAGES_PROJECT_FILE=" & - "DEFAULT " & - "-vP0 " & - "MEDIUM " & - "-vP1 " & - "HIGH " & - "-vP2"; - -- /MESSAGES_PROJECT_FILE[=messages-option] - -- - -- Specifies the "verbosity" of the parsing of project files. - -- messages-option may be one of the following: - -- - -- DEFAULT (D) No messages are output if there is no error or warning. - -- - -- MEDIUM A small number of messages are output. - -- - -- HIGH A great number of messages are output, most of them not - -- being useful for the user. - - S_Setup_Project : aliased constant S := "/PROJECT_FILE=<" & - "-P>"; - -- /PROJECT_FILE=filename - -- - -- Specifies the main project file to be used. The project files rooted - -- at the main project file are parsed and non existing object - -- directories, library directories and exec directories are created. - - S_Setup_Quiet : aliased constant S := "/QUIET " & - "-q"; - -- /NOQUIET (D) - -- /QUIET - -- - -- Work quietly, only output warnings and errors. - - S_Setup_Verbose : aliased constant S := "/VERBOSE " & - "-v"; - -- /NOVERBOSE (D) - -- /VERBOSE - -- - -- Verbose mode; GNAT PRETTY generates version information and then a - -- trace of the actions it takes to produce or obtain the ASIS tree. - - Setup_Switches : aliased constant Switches := - (S_Setup_Ext 'Access, - S_Setup_Mess 'Access, - S_Setup_Project 'Access, - S_Setup_Quiet 'Access, - S_Setup_Verbose 'Access); - ------------------------------ -- Switches for GNAT SHARED -- ------------------------------ @@ -5390,6 +5375,185 @@ package VMS_Data is S_Shared_Verb 'Access, S_Shared_ZZZZZ 'Access); + ----------------------------- + -- Switches for GNAT STACK -- + ----------------------------- + + S_Stack_All : aliased constant S := "/ALL_SUBPROGRAMS " & + "-a"; + -- /NOALL_SUBPROGRAMS (D) + -- /ALL_SUBPROGRAMS + -- + -- Consider all subprograms as entry points. + + S_Stack_All_Cycles : aliased constant S := "/ALL_CYCLES " & + "-ca"; + -- /NOALL_CYCLES (D) + -- /ALL_CYCLES + -- + -- Extract all possible cycles in the call graph. + + S_Stack_All_Prjs : aliased constant S := "/ALL_PROJECTS " & + "-U"; + -- /NOALL_PROJECTS (D) + -- /ALL_PROJECTS + -- + -- When GNAT STACK is used with a Project File and no source is + -- specified, the underlying tool gnatstack is called for all the + -- units of all the Project Files in the project tree. + + S_Stack_Debug : aliased constant S := "/DEBUG " & + "-g"; + -- /NODEBUG (D) + -- /DEBUG + -- + -- Generate internal debug information. + + S_Stack_Directory : aliased constant S := "/DIRECTORY=*" & + "-aO*"; + -- /DIRECTORY=(direc[,...]) + -- + -- When looking for .ci files look also in directories specified. + + S_Stack_Entries : aliased constant S := "/ENTRIES=*" & + "-e*"; + -- + -- /ENTRY=(entry_point[,...]) + -- + -- Name of symbol to be used as entry point for the analysis. + + S_Stack_Files : aliased constant S := "/FILES=@" & + "-files=@"; + -- /FILES=filename + -- + -- Take as arguments the files that are listed in the specified + -- text file. + + S_Stack_Help : aliased constant S := "/HELP " & + "-h"; + -- /NOHELP (D) + -- /HELP + -- + -- Output a message explaining the usage of gnatstack. + + S_Stack_List : aliased constant S := "/LIST=#" & + "-l#"; + -- /LIST=nnn + -- + -- Print the nnn subprograms requiring the biggest local stack usage. By + -- default none will be displayed. + + S_Stack_Order : aliased constant S := "/ORDER=" & + "STACK " & + "-os " & + "ALPHABETICAL " & + "-oa"; + -- /ORDER[=order-option] + -- + -- Specifies the order for displaying the different call graphs. + -- order-option may be one of the following: + -- + -- STACK (D) Select stack usage order + -- + -- ALPHABETICAL Select alphabetical order + + S_Stack_Path : aliased constant S := "/PATH " & + "-p"; + -- /NOPATH (D) + -- /PATH + -- + -- Print all the subprograms that make up the worst-case path for every + -- entry point. + + S_Stack_Project : aliased constant S := "/PROJECT_FILE=<" & + "-P>"; + -- /PROJECT_FILE=filename + -- + -- Specifies the main project file to be used. The project files rooted + -- at the main project file will be parsed before the invocation of + -- gnatstack. + + S_Stack_Output : aliased constant S := "/OUTPUT=@" & + "-f@"; + -- /OUTPUT=filename + -- + -- Name of the file containing the generated graph (VCG format). + + S_Stack_Regexp : aliased constant S := "/EXPRESSION=|" & + "-r|"; + -- + -- /EXPRESSION=regular-expression + -- + -- Any symbol matching the regular expression will be considered as a + -- potential entry point for the analysis. + + S_Stack_Unbounded : aliased constant S := "/UNBOUNDED=#" & + "-d#"; + -- /UNBOUNDED=nnn + -- + -- Default stack size to be used for unbounded (dynamic) frames. + + S_Stack_Unknown : aliased constant S := "/UNKNOWN=#" & + "-u#"; + -- /UNKNOWN=nnn + -- + -- Default stack size to be used for unknown (external) calls. + + S_Stack_Verbose : aliased constant S := "/VERBOSE " & + "-v"; + -- /NOVERBOSE (D) + -- /VERBOSE + -- + -- Specifies the amount of information to be displayed about the + -- different subprograms. In verbose mode the full location of the + -- subprogram will be part of the output, as well as detailed information + -- about inaccurate data. + + S_Stack_Warnings : aliased constant S := "/WARNINGS=" & + "ALL " & + "-Wa " & + "CYCLES " & + "-Wc " & + "UNBOUNDED " & + "-Wu " & + "EXTERNAL " & + "-We " & + "INDIRECT " & + "-Wi"; + -- /WARNINGS[=(keyword[,...])] + -- + -- The following keywords are supported: + -- + -- ALL Turn on all optional warnings + -- + -- CYCLES Turn on warnings for cycles + -- + -- UNBOUNDED Turn on warnings for unbounded frames + -- + -- EXTERNAL Turn on warnings for external calls + -- + -- INDIRECT Turn on warnings for indirect calls + + Stack_Switches : aliased constant Switches := + (S_Stack_All 'Access, + S_Stack_All_Cycles 'Access, + S_Stack_All_Prjs 'Access, + S_Stack_Debug 'Access, + S_Stack_Directory 'Access, + S_Stack_Entries 'Access, + S_Stack_Files 'Access, + S_Stack_Help 'Access, + S_Stack_List 'Access, + S_Stack_Order 'Access, + S_Stack_Path 'Access, + S_Stack_Project 'Access, + S_Stack_Output 'Access, + S_Stack_Regexp 'Access, + S_Stack_Unbounded 'Access, + S_Stack_Unknown 'Access, + S_Stack_Verbose 'Access, + S_Stack_Warnings 'Access); + ---------------------------- -- Switches for GNAT STUB -- ---------------------------- |