aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/makeutl.ads
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2015-05-22 14:42:05 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2015-05-22 14:42:05 +0200
commit167b47d9da9a82c0c8f426f1853a961f10322be0 (patch)
tree35d7ac1037a5211f5a217b67c5f16e70ebeb113c /gcc/ada/makeutl.ads
parent7ac5a14092e76fe71a3d8660a30079e35d2618f5 (diff)
downloadgcc-167b47d9da9a82c0c8f426f1853a961f10322be0.zip
gcc-167b47d9da9a82c0c8f426f1853a961f10322be0.tar.gz
gcc-167b47d9da9a82c0c8f426f1853a961f10322be0.tar.bz2
[multiple changes]
2015-05-22 Ed Schonberg <schonberg@adacore.com> * einfo.ads, einfo.adb (Incomplete_Actuals): New attribute of package instantiations. Holds the list of actuals in the instance that are incomplete types, to determine where the corresponding instance body must be placed. * sem_ch6.adb (Conforming_Types): An incomplete type used as an actual in an instance matches an incomplete formal. * sem_disp.adb (Check_Dispatching_Call): Handle missing case of explicit dereference. (Inherited_Subprograms): In the presence of a limited view there are no subprograms to inherit. * sem_ch12.adb (Preanalyze_Actuals): Build list of incomplete actuals of instance, for later placement of instance body and freeze nodes for actuals. (Install_Body): In the presence of actuals that incomplete types from a limited view, the instance body cannot be placed after the declaration because full views have not been seen yet. Any use of the non-limited views in the instance body requires the presence of a regular with_clause in the enclosing unit, and will fail if this with_clause is missing. We place the instance body at the beginning of the enclosing body, which is the unit being compiled, and ensure that freeze nodes for the full views of the incomplete types appear before the instance. 2015-05-22 Pascal Obry <obry@adacore.com> * makeutl.ads, prj-conf.adb, prj-nmsc.adb, prj.ads (In_Place_Option): Removed. (Relocate_Build_Tree_Option): New constant. (Root_Dir_Option): New constant. (Obj_Root_Dir): Removed. (Build_Tree_Dir): New variable. (Root_Src_Tree): Removed. (Root_Dir): New variable. * prj-conf.adb (Get_Or_Create_Configuration_File): Add check for improper relocation. * prj-nmsc.adb (Locate_Directory): Add check for improper relocation. From-SVN: r223553
Diffstat (limited to 'gcc/ada/makeutl.ads')
-rw-r--r--gcc/ada/makeutl.ads12
1 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ada/makeutl.ads b/gcc/ada/makeutl.ads
index 5a318aa..45442c8 100644
--- a/gcc/ada/makeutl.ads
+++ b/gcc/ada/makeutl.ads
@@ -66,9 +66,17 @@ package Makeutl is
-- Switch used to indicate that the real directories (object, exec,
-- library, ...) are subdirectories of those in the project file.
- In_Place_Option : constant String := "--in-place";
+ Relocate_Build_Tree_Option : constant String := "--relocate-build-tree";
-- Switch to build out-of-tree. In this context the object, exec and
- -- library directories are relocated to the current working directory.
+ -- library directories are relocated to the current working directory
+ -- or the directory specified as parameter to this option.
+
+ Root_Dir_Option : constant String := "--root-dir";
+ -- The root directory under which all artifacts (objects, library, ali)
+ -- directory are to be found for the current compilation. This directory
+ -- will be use to relocate artifacts based on this directory. If this
+ -- option is not specificed the default value is the directory of the
+ -- main project.
Unchecked_Shared_Lib_Imports : constant String :=
"--unchecked-shared-lib-imports";