aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/vms_data.ads
diff options
context:
space:
mode:
authorVincent Celier <celier@adacore.com>2007-04-06 11:19:38 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2007-04-06 11:19:38 +0200
commit958a816e69e829d04e175512a09f8b6f43cd2ffd (patch)
treef5cd92cf0c8355154424935e5aa51a46816033b9 /gcc/ada/vms_data.ads
parentfea9e956ec1b3e1b95f79e44309cfa93314ddbce (diff)
downloadgcc-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.ads292
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 --
----------------------------