summaryrefslogtreecommitdiff
path: root/gcc/ada/prj-proc.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-06-23 09:57:45 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-06-23 09:57:45 +0000
commit7527b812ce9dd981de48513070f69c51814d87ff (patch)
tree63b071b08e39559bcd93745051792552ce1c32a4 /gcc/ada/prj-proc.adb
parentb277625712249e7b51bf006e7269f3b303d4ce8a (diff)
downloadgcc-7527b812ce9dd981de48513070f69c51814d87ff.tar.gz
2009-06-23 Emmanuel Briot <briot@adacore.com>
* prj-proc.adb, prj-proc.ads, prj-nmsc.adb, prj-nmsc.ads, prj-conf.adb, prj-conf.ads (Check_Configuration): New parameter Compiler_Driver_Mandatory. 2009-06-23 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Analyze_With_Clause): If a subprogram instance in the context of the current unit has an inline pragma, the instance is not rewritten as the declaration of the package wrapper. Handle both possibilities when retrieving the visible subprogram that renames the instantiation itself. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@148839 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/prj-proc.adb')
-rw-r--r--gcc/ada/prj-proc.adb16
1 files changed, 12 insertions, 4 deletions
diff --git a/gcc/ada/prj-proc.adb b/gcc/ada/prj-proc.adb
index 31efd8199a2..c65a286a464 100644
--- a/gcc/ada/prj-proc.adb
+++ b/gcc/ada/prj-proc.adb
@@ -83,7 +83,8 @@ package body Prj.Proc is
Project : Project_Id;
Current_Dir : String;
When_No_Sources : Error_Warning;
- Is_Config_File : Boolean);
+ Is_Config_File : Boolean;
+ Compiler_Driver_Mandatory : Boolean);
-- Set all projects to not checked, then call Recursive_Check for the
-- main project Project. Project is set to No_Project if errors occurred.
-- Current_Dir is for optimization purposes, avoiding extra system calls.
@@ -152,6 +153,7 @@ package body Prj.Proc is
When_No_Sources : Error_Warning;
Proc_Data : Processing_Data;
Is_Config_File : Boolean;
+ Compiler_Driver_Mandatory : Boolean;
end record;
-- Data passed to Recursive_Check
-- Current_Dir is for optimization purposes, avoiding extra system calls.
@@ -283,7 +285,8 @@ package body Prj.Proc is
Project : Project_Id;
Current_Dir : String;
When_No_Sources : Error_Warning;
- Is_Config_File : Boolean)
+ Is_Config_File : Boolean;
+ Compiler_Driver_Mandatory : Boolean)
is
Dir : aliased String := Current_Dir;
@@ -297,6 +300,7 @@ package body Prj.Proc is
Data.Current_Dir := Dir'Unchecked_Access;
Data.When_No_Sources := When_No_Sources;
Data.Is_Config_File := Is_Config_File;
+ Data.Compiler_Driver_Mandatory := Compiler_Driver_Mandatory;
Initialize (Data.Proc_Data);
Check_All_Projects (Project, Data, Imported_First => True);
@@ -1259,6 +1263,7 @@ package body Prj.Proc is
Report_Error => Report_Error,
When_No_Sources => When_No_Sources,
Current_Dir => Current_Dir,
+ Compiler_Driver_Mandatory => True,
Is_Config_File => Is_Config_File);
end if;
end Process;
@@ -2313,7 +2318,8 @@ package body Prj.Proc is
Report_Error : Put_Line_Access;
When_No_Sources : Error_Warning := Error;
Current_Dir : String;
- Is_Config_File : Boolean)
+ Is_Config_File : Boolean;
+ Compiler_Driver_Mandatory : Boolean)
is
Obj_Dir : Path_Name_Type;
Extending : Project_Id;
@@ -2328,7 +2334,8 @@ package body Prj.Proc is
if Project /= No_Project then
Check (In_Tree, Project, Current_Dir, When_No_Sources,
- Is_Config_File => Is_Config_File);
+ Is_Config_File => Is_Config_File,
+ Compiler_Driver_Mandatory => Compiler_Driver_Mandatory);
end if;
-- If main project is an extending all project, set the object
@@ -2452,6 +2459,7 @@ package body Prj.Proc is
Prj.Nmsc.Check
(Project, Data.In_Tree, Error_Report, Data.When_No_Sources,
Data.Current_Dir.all, Data.Proc_Data,
+ Compiler_Driver_Mandatory => Data.Compiler_Driver_Mandatory,
Is_Config_File => Data.Is_Config_File);
end Recursive_Check;