diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2015-05-22 14:42:05 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2015-05-22 14:42:05 +0200 |
commit | 167b47d9da9a82c0c8f426f1853a961f10322be0 (patch) | |
tree | 35d7ac1037a5211f5a217b67c5f16e70ebeb113c /gcc/ada/makeutl.ads | |
parent | 7ac5a14092e76fe71a3d8660a30079e35d2618f5 (diff) | |
download | gcc-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.ads | 12 |
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"; |