Commit 3c2815d8 by Robert Dewar Committed by Arnaud Charlet

opt.ads, [...]: Minor reformatting

2009-07-13  Robert Dewar  <dewar@adacore.com>

	* opt.ads, prj-conf.adb, prj-env.adb, prj-ext.adb, prj-nmsc.adb,
	prj-proc.adb, prj-tree.adb, prj-tree.ads: Minor reformatting

From-SVN: r149570
parent 197e4514
2009-07-13 Robert Dewar <dewar@adacore.com>
* opt.ads, prj-conf.adb, prj-env.adb, prj-ext.adb, prj-nmsc.adb,
prj-proc.adb, prj-tree.adb, prj-tree.ads: Minor reformatting
2009-07-13 Emmanuel Briot <briot@adacore.com>
* prj.adb, prj.ads, prj-env.adb, prj-conf.adb, prj-tree.adb,
......
......@@ -640,10 +640,9 @@ package Opt is
Inspector_Mode : Boolean renames Debug.Debug_Flag_Dot_II;
-- GNAT
-- Set True to activate Inspector mode (-gnatd.I switch). In particular
-- this enables SCIL generation.
-- When VM_Target /= None, the compiler will also attempt to
-- generate code even in case of unsupported construct instead of
-- displaying an error.
-- this enables SCIL generation. When VM_Target /= None, the compiler will
-- also attempt to generate code even in case of unsupported construct
-- instead of displaying an error.
Invalid_Value_Used : Boolean := False;
-- GNAT
......@@ -651,17 +650,17 @@ package Opt is
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
-- 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.
-- Set to True if directories can be links in this project, and therefore
-- additional system calls must be performed to ensure that we always see
-- the same full name for each directory.
Front_End_Inlining : Boolean := False;
-- GNAT
......@@ -669,9 +668,9 @@ package Opt is
Inline_Processing_Required : Boolean := False;
-- GNAT
-- Set True if inline processing is required. Inline processing is
-- required if an active Inline pragma is processed. The flag is set
-- for a pragma Inline or Inline_Always that is actually active.
-- Set True if inline processing is required. Inline processing is required
-- if an active Inline pragma is processed. The flag is set for a pragma
-- Inline or Inline_Always that is actually active.
In_Place_Mode : Boolean := False;
-- GNATMAKE
......@@ -681,8 +680,8 @@ package Opt is
Keep_Going : Boolean := False;
-- GNATMAKE, GPRMAKE, GPRBUILD
-- When True signals to ignore compilation errors and keep
-- processing sources until there is no more work.
-- When True signals to ignore compilation errors and keep processing
-- sources until there is no more work.
Keep_Temporary_Files : Boolean := False;
-- GNATCMD
......@@ -696,8 +695,8 @@ package Opt is
Link_Only : Boolean := False;
-- GNATMAKE, GPRMAKE, GPRBUILD
-- Set to True to skip compile and bind steps
-- (except when Bind_Only is set to True).
-- Set to True to skip compile and bind steps (except when Bind_Only is
-- set to True).
List_Restrictions : Boolean := False;
-- GNATBIND
......@@ -730,21 +729,21 @@ package Opt is
List_Representation_Info_To_File : Boolean := False;
-- GNAT
-- Set true by -gnatRs switch. Causes information from -gnatR/1/2/3
-- to be written to file.rep (where file is the name of the source
-- file) instead of stdout. For example, if file x.adb is compiled
-- using -gnatR2s then representation info is written to x.adb.ref.
-- Set true by -gnatRs switch. Causes information from -gnatR/1/2/3 to be
-- written to file.rep (where file is the name of the source file) instead
-- of stdout. For example, if file x.adb is compiled using -gnatR2s then
-- representation info is written to x.adb.ref.
List_Representation_Info_Mechanisms : Boolean := False;
-- GNAT
-- Set true by -gnatRm switch. Causes information on mechanisms to
-- be included in the representation output information.
-- Set true by -gnatRm switch. Causes information on mechanisms to be
-- included in the representation output information.
List_Preprocessing_Symbols : Boolean := False;
-- GNAT, GNATPREP
-- Set to True if symbols for preprocessing a source are to be listed
-- before preprocessing occurs. Set to True by switch -s of gnatprep
-- or -s in preprocessing data file for the compiler.
-- before preprocessing occurs. Set to True by switch -s of gnatprep or
-- -s in preprocessing data file for the compiler.
type Create_Repinfo_File_Proc is access procedure (Src : String);
type Write_Repinfo_Line_Proc is access procedure (Info : String);
......@@ -755,12 +754,11 @@ package Opt is
Write_Repinfo_Line_Access : Write_Repinfo_Line_Proc := null;
Close_Repinfo_File_Access : Close_Repinfo_File_Proc := null;
-- GNAT
-- These three locations are left null when operating in non-compiler
-- (e.g. ASIS mode), but when operating in compiler mode, they are
-- set to point to the three corresponding procedures in Osint-C. The
-- reason for this slightly strange interface is to prevent Repinfo
-- from dragging in Osint in ASIS mode, which would include a lot of
-- unwanted units in the ASIS build.
-- These three locations are left null when operating in non-compiler (e.g.
-- ASIS mode), but when operating in compiler mode, they are set to point
-- to the three corresponding procedures in Osint-C. The reason for this
-- slightly strange interface is to stop Repinfo from dragging in Osint in
-- ASIS mode, which would include lots of unwanted units in the ASIS build.
type Create_List_File_Proc is access procedure (S : String);
type Write_List_Info_Proc is access procedure (S : String);
......@@ -780,21 +778,21 @@ package Opt is
Locking_Policy : Character := ' ';
-- GNAT, GNATBIND
-- Set to ' ' for the default case (no locking policy specified).
-- Reset to first character (uppercase) of locking policy name if a
-- valid pragma Locking_Policy is encountered.
-- Set to ' ' for the default case (no locking policy specified). Reset to
-- first character (uppercase) of locking policy name if a valid pragma
-- Locking_Policy is encountered.
Locking_Policy_Sloc : Source_Ptr := No_Location;
-- GNAT, GNATBIND
-- Remember location of previous Locking_Policy pragma. This is used
-- for inconsistency error messages. A value of System_Location is
-- used if the policy is set in package System.
-- Remember location of previous Locking_Policy pragma. This is used for
-- inconsistency error messages. A value of System_Location is used if the
-- policy is set in package System.
Look_In_Primary_Dir : Boolean := True;
-- GNAT, GNATBIND, GNATMAKE, GNATCLEAN
-- Set to False if a -I- was present on the command line.
-- When True we are allowed to look in the primary directory to locate
-- other source or library files.
-- Set to False if a -I- was present on the command line. When True we are
-- allowed to look in the primary directory to locate other source or
-- library files.
Make_Steps : Boolean := False;
-- GNATMAKE
......@@ -902,9 +900,9 @@ package Opt is
Original_Operating_Mode : Operating_Mode_Type := Generate_Code;
-- GNAT
-- Indicates the original operating mode of the compiler as set by
-- compiler options. This is identical to Operating_Mode except that
-- this is not affected by errors.
-- Indicates the original operating mode of the compiler as set by compiler
-- options. This is identical to Operating_Mode except that this is not
-- affected by errors.
Optimization_Level : Int;
pragma Import (C, Optimization_Level, "optimize");
......@@ -934,7 +932,7 @@ package Opt is
Overflow_Checks_Unsuppressed : Boolean := False;
-- GNAT
-- Set to True if at least one pragma Unsuppress
-- Set to True if at least one occurrence of pragma Unsuppress
-- (All_Checks|Overflow_Checks) has been processed.
Persistent_BSS_Mode : Boolean := False;
......@@ -974,20 +972,20 @@ package Opt is
type Usage is (Unknown, Not_In_Use, In_Use);
Project_File_In_Use : Usage := Unknown;
-- GNAT
-- Indicates if a project file is used or not.
-- Set to In_Use by the first SFNP pragma.
-- Indicates if a project file is used or not. Set to In_Use by the first
-- SFNP pragma.
Queuing_Policy : Character := ' ';
-- GNAT, GNATBIND
-- Set to ' ' for the default case (no queuing policy specified).
-- Reset to first character (uppercase) of locking policy name if a valid
-- Set to ' ' for the default case (no queuing policy specified). Reset to
-- first character (uppercase) of locking policy name if a valid
-- Queuing_Policy pragma is encountered.
Queuing_Policy_Sloc : Source_Ptr := No_Location;
-- GNAT, GNATBIND
-- Remember location of previous Queuing_Policy pragma. This is used
-- for inconsistency error messages. A value of System_Location is
-- used if the policy is set in package System.
-- Remember location of previous Queuing_Policy pragma. This is used for
-- inconsistency error messages. A value of System_Location is used if the
-- policy is set in package System.
Quiet_Output : Boolean := False;
-- GNATMAKE, GNATCLEAN, GPRMAKE, GPRBUILD, GPRCLEAN
......@@ -1014,17 +1012,17 @@ package Opt is
Search_Directory_Present : Boolean := False;
-- GNAT
-- Set to True when argument is -I. Reset to False when next argument,
-- a search directory path is taken into account. Note that this is
-- quite different from other switches in this section in that it is
-- only set in a transitory manner as a result of scanning a -I switch
-- with no file name, and if set, is an indication that the next argument
-- is to be treated as a file name.
-- Set to True when argument is -I. Reset to False when next argument, a
-- search directory path is taken into account. Note that this is quite
-- different from other switches in this section in that it is only set in
-- a transitory manner as a result of scanning a -I switch with no file
-- name, and if set, is an indication that the next argument is to be
-- treated as a file name.
Sec_Stack_Used : Boolean := False;
-- GNAT, GBATBIND
-- Set True if generated code uses the System.Secondary_Stack package.
-- For the binder, set if any unit uses the secondary stack package.
-- Set True if generated code uses the System.Secondary_Stack package. For
-- the binder, set if any unit uses the secondary stack package.
Setup_Projects : Boolean := False;
-- GNAT DRIVER
......@@ -1033,9 +1031,9 @@ package Opt is
Shared_Libgnat : Boolean;
-- GNATBIND
-- Set to True if a shared libgnat is requested by using the -shared
-- option for GNATBIND and to False when using the -static option. The
-- value of this flag is set by Gnatbind.Scan_Bind_Arg.
-- Set to True if a shared libgnat is requested by using the -shared option
-- for GNATBIND and to False when using the -static option. The value of
-- this flag is set by Gnatbind.Scan_Bind_Arg.
Sprint_Line_Limit : Nat := 72;
-- Limit values for chopping long lines in Sprint output, can be reset
......@@ -1052,9 +1050,9 @@ package Opt is
Style_Check : Boolean := False;
-- GNAT
-- Set True to perform style checks. Activates checks carried out
-- in package Style (see body of this package for details of checks)
-- This flag is set True by either the -gnatg or -gnaty switches.
-- Set True to perform style checks. Activates checks carried out 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
......@@ -1113,9 +1111,9 @@ package Opt is
Tagged_Type_Expansion : Boolean := True;
-- GNAT
-- Set True if tagged types and interfaces should be expanded by the
-- front-end. If False, the original tree is left unexpanded for
-- tagged types and dispatching calls, assuming the underlying target
-- supports it (e.g. case of JVM).
-- front-end. If False, the original tree is left unexpanded for tagged
-- types and dispatching calls, assuming the underlying target supports
-- it (e.g. in the JVM case).
Task_Dispatching_Policy : Character := ' ';
-- GNAT, GNATBIND
......
......@@ -1176,6 +1176,8 @@ package body Prj.Conf is
Name : Name_Id;
Naming : Project_Node_Id;
-- Start of processing for Add_Default_GNAT_Naming_Scheme
begin
if Config_File = Empty_Node then
......@@ -1186,6 +1188,7 @@ package body Prj.Conf is
Name := Name_Find;
-- An invalid project name to avoid conflicts with user-created ones
Name_Len := 5;
Name_Buffer (1 .. Name_Len) := "_auto";
......@@ -1215,8 +1218,8 @@ package body Prj.Conf is
Create_Attribute (Name_Library_Auto_Init_Supported, "false");
end if;
-- Setup Ada support (Ada is the default language here, since this is
-- only called when no config file existed initially, ie for
-- Setup Ada support (Ada is the default language here, since this
-- is only called when no config file existed initially, ie for
-- gnatmake).
Create_Attribute (Name_Default_Language, "ada");
......@@ -1234,7 +1237,6 @@ package body Prj.Conf is
(Project => Config_File,
In_Tree => Project_Tree,
Backward_Compatibility => False);
end if;
end if;
end Add_Default_GNAT_Naming_Scheme;
......
......@@ -126,8 +126,11 @@ package body Prj.Env is
Dummy : Boolean := False;
-- Start of processing for Ada_Include_Path
begin
if Recursive then
-- If it is the first time we call this function for
-- this project, compute the source path
......@@ -186,6 +189,7 @@ package body Prj.Env is
procedure For_All_Projects is
new For_Every_Project_Imported (Boolean, Add);
Dummy : Boolean := False;
-- Start of processing for Ada_Objects_Path
......@@ -899,7 +903,8 @@ package body Prj.Env is
procedure Create_New_Path_File
(In_Tree : Project_Tree_Ref;
Path_FD : out File_Descriptor;
Path_Name : out Path_Name_Type) is
Path_Name : out Path_Name_Type)
is
begin
Create_Temp_File (In_Tree, Path_FD, Path_Name, "path file");
end Create_New_Path_File;
......
......@@ -244,6 +244,7 @@ package body Prj.Ext is
if Add_Default_Dir then
declare
Prefix : String_Ptr := Sdefault.Search_Dir_Prefix;
begin
if Prefix = null then
Prefix := new String'(Executable_Prefix_Path);
......
......@@ -287,10 +287,9 @@ package body Prj.Nmsc is
Data : Tree_Processing_Data);
-- Output an error message. If Data.Error_Report is null, simply call
-- Prj.Err.Error_Msg. Otherwise, disregard Flag_Location and use
-- Error_Report.
-- If Msg starts with "?", this is a warning, and Warning: is adding at the
-- beginning. If Msg starts with "<", see comment
-- for Err_Vars.Error_Msg_Warn
-- Error_Report. If Msg starts with "?", this is a warning, and the
-- string "Warning :" is adding at the beginning. If Msg starts with "<",
-- see comment for Err_Vars.Error_Msg_Warn
procedure Search_Directories
(Project : in out Project_Processing_Data;
......
......@@ -453,13 +453,14 @@ package body Prj.Proc is
Index : Name_Id) return Name_Id
is
Lower : Boolean;
begin
Get_Name_String (Index);
Lower := Case_Insensitive (Attr, Tree);
-- The index is always case insensitive if it does not include any dot.
-- ??? Why not use the properties from prj-attr, simply, maybe because
-- we don't know whether we have a file as an index ?
-- we don't know whether we have a file as an index?
if not Lower then
Lower := True;
......
......@@ -2877,6 +2877,7 @@ package body Prj.Tree is
Real_Parent : Project_Node_Id;
New_Decl, Decl, Next : Project_Node_Id;
Last, L : Project_Node_Id;
begin
if Kind_Of (Expr, Tree) /= N_Declarative_Item then
New_Decl := Default_Project_Node (Tree, N_Declarative_Item);
......@@ -2901,16 +2902,17 @@ package body Prj.Tree is
exit when Next = Empty_Node
or else
(Add_Before_First_Pkg
and then Kind_Of (Current_Item_Node (Next, Tree), Tree)
= N_Package_Declaration)
and then Kind_Of (Current_Item_Node (Next, Tree), Tree) =
N_Package_Declaration)
or else
(Add_Before_First_Case
and then Kind_Of (Current_Item_Node (Next, Tree), Tree)
= N_Case_Construction);
and then Kind_Of (Current_Item_Node (Next, Tree), Tree) =
N_Case_Construction);
Decl := Next;
end loop;
-- In case Expr is in fact a range of declarative items
Last := New_Decl;
loop
L := Next_Declarative_Item (Last, Tree);
......@@ -2919,6 +2921,7 @@ package body Prj.Tree is
end loop;
-- In case Expr is in fact a range of declarative items
Last := New_Decl;
loop
L := Next_Declarative_Item (Last, Tree);
......@@ -2937,8 +2940,7 @@ package body Prj.Tree is
function Create_Literal_String
(Str : Namet.Name_Id;
Tree : Project_Node_Tree_Ref)
return Project_Node_Id
Tree : Project_Node_Tree_Ref) return Project_Node_Id
is
Node : Project_Node_Id;
begin
......@@ -2975,6 +2977,7 @@ package body Prj.Tree is
is
Pack : Project_Node_Id;
N : Name_Id;
begin
Name_Len := Pkg'Length;
Name_Buffer (1 .. Name_Len) := Pkg;
......@@ -2983,7 +2986,6 @@ package body Prj.Tree is
-- Check if the package already exists
Pack := First_Package_Of (Project, Tree);
while Pack /= Empty_Node loop
if Prj.Tree.Name_Of (Pack, Tree) = N then
return Pack;
......@@ -3002,6 +3004,7 @@ package body Prj.Tree is
Set_Package_Id_Of (Pack, Tree, Package_Node_Id_Of (N));
-- Add it to the list of packages
Set_Next_Package_In_Project
(Pack, Tree, First_Package_Of (Project, Tree));
Set_First_Package_Of (Project, Tree, Pack);
......@@ -3025,10 +3028,12 @@ package body Prj.Tree is
is
Node : constant Project_Node_Id :=
Default_Project_Node (Tree, N_Attribute_Declaration, Kind);
Case_Insensitive : Boolean;
Pkg : Package_Node_Id;
Start_At : Attribute_Node_Id;
begin
Set_Name_Of (Node, Tree, Name);
......
......@@ -599,16 +599,15 @@ package Prj.Tree is
Full_Path : Path_Name_Type;
Is_Config_File : Boolean := False) return Project_Node_Id;
-- Create a new node for a project and register it in the tree so that it
-- can be retrieved later on
-- can be retrieved later on.
function Create_Package
(Tree : Project_Node_Tree_Ref;
Project : Project_Node_Id;
Pkg : String) return Project_Node_Id;
-- Create a new package in Project. If the package already exists, it is
-- returned.
-- The name of the package *must* be lower-cases, or none of its attributes
-- will be recognized.
-- returned. The name of the package *must* be lower-cases, or none of its
-- attributes will be recognized.
function Create_Attribute
(Tree : Project_Node_Tree_Ref;
......@@ -617,20 +616,17 @@ package Prj.Tree is
Index_Name : Name_Id := No_Name;
Kind : Variable_Kind := List;
At_Index : Integer := 0) return Project_Node_Id;
-- Create a new attribute.
-- The new declaration is added at the end of the declarative item list for
-- Prj_Or_Pkg (a project or a package), but before any package
-- declaration). No addition is done if Prj_Or_Pkg is Empty_Node.
-- If Index_Name is not "", then if creates an attribute value for a
-- specific index.
-- At_Index is used for the " at <idx>" in the naming exceptions.
-- Use Set_Expression_Of to set the value of the attribute (in which case
-- Enclose_In_Expression might be useful)
-- Create a new attribute. The new declaration is added at the end of the
-- declarative item list for Prj_Or_Pkg (a project or a package), but
-- before any package declaration). No addition is done if Prj_Or_Pkg is
-- Empty_Node. If Index_Name is not "", then if creates an attribute value
-- for a specific index. At_Index is used for the " at <idx>" in the naming
-- exceptions. Use Set_Expression_Of to set the value of the attribute (in
-- which case Enclose_In_Expression might be useful)
function Create_Literal_String
(Str : Namet.Name_Id;
Tree : Project_Node_Tree_Ref)
return Project_Node_Id;
Tree : Project_Node_Tree_Ref) return Project_Node_Id;
-- Create a literal string whose value is Str
procedure Add_At_End
......@@ -639,15 +635,14 @@ package Prj.Tree is
Expr : Project_Node_Id;
Add_Before_First_Pkg : Boolean := False;
Add_Before_First_Case : Boolean := False);
-- Add a new declarative item in the list in Parent.
-- This new declarative item will contain Expr (unless Expr is already a
-- declarative item, in which case it is added directly to the list). The
-- new item is inserted at the end of the list, unless Add_Before_First_Pkg
-- is True. In the latter case, it is added just before the first case
-- construction is seen, or before the first package (this assumes that all
-- packages are found at the end of the project, which isn't true in the
-- general case unless you have normalized the project to match this
-- description).
-- Add a new declarative item in the list in Parent. This new declarative
-- item will contain Expr (unless Expr is already a declarative item, in
-- which case it is added directly to the list). The new item is inserted
-- at the end of the list, unless Add_Before_First_Pkg is True. In the
-- latter case, it is added just before the first case construction is
-- seen, or before the first package (this assumes that all packages are
-- found at the end of the project, which isn't true in the general case
-- unless you have normalized the project to match this description).
function Enclose_In_Expression
(Node : Project_Node_Id;
......@@ -660,6 +655,7 @@ package Prj.Tree is
-- The following procedures are part of the abstract interface of the
-- Project File tree.
-- Each Set_* procedure is valid only for the same Project_Node_Kind
-- nodes as the corresponding query function above.
-- These are very low-level, and manipulate the tree itself directly. You
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment