[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Thu, 4 Aug 2011 07:45:20 +0000 (09:45 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Thu, 4 Aug 2011 07:45:20 +0000 (09:45 +0200)
commit824e9320157031e3969aabe742cfddd38a0513cd
treec99f88092f5c194ff8b0d6bd08570d448e0d0837
parent316d9d4f9f86acf8fd0e4b22a80d0134c876502a
[multiple changes]

2011-08-04  Emmanuel Briot  <briot@adacore.com>

* prj-proc.adb, prj-nmsc.adb, prj-env.adb (Process_Declarative_Items):
Add support for overriding the Project_Path in aggregate projects.

2011-08-04  Robert Dewar  <dewar@adacore.com>

* a-cofove.ads: Minor reformatting.

2011-08-04  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb (Build_Adjust_Or_Finalize_Statements): Update the comment
on the generated code.
(Build_Finalize_Statements): Update the comment on the generated code.
(Build_Initialize_Statements): Update the comment on the generated code.
(Build_Object_Declarations): Add local variable Result. The object
declarations are now built in sequence.
* rtsfind.ads: Add RE_Exception_Occurrence_Access to tables RE_Id and
RE_Unit_Table.

2011-08-04  Robert Dewar  <dewar@adacore.com>

* checks.adb, alfa.adb, alfa.ads: Minor reformatting.

2011-08-04  Eric Botcazou  <ebotcazou@adacore.com>

* einfo.ads (Elaboration_Entity): Document new definition and use.
(Elaboration_Entity_Required): Adjust to above change.
* exp_attr.adb (Expand_N_Attribute_Reference): Likewise.
* exp_ch12.adb: And with and use for Snames.
(Expand_N_Generic_Instantiation): Test 'Elaborated attribute.
* exp_util.adb (Set_Elaboration_Flag): Likewise.
* sem_attr.adb (Analyze_Attribute) <Check_Library_Unit>: Delete.
<Check_Unit_Name>: Deal with N_Expanded_Name.
<Attribute_Elaborated>: Extend to all unit names.
* sem_elab.adb: And with and use for Uintp.
(Check_Internal_Call_Continue): Adjust to Elaboration_Entity change.
* sem_util.ads (Build_Elaboration_Entity): Adjust comment.
* sem_util.adb (Build_Elaboration_Entity): Change type to Integer.
* bindgen.adb (Gen_Elab_Externals_Ada): New local subprogram taken
from Gen_Adainit_Ada.
(Gen_Elab_Externals_C): Likewise, but taken from Gen_Adainit_C.
(Gen_Adafinal_Ada): Remove redundant test.  In the non-main program
case, do not call System.Standard_Library.Adafinal; instead call
finalize_library if needed.
(Gen_Adafinal_C): Likewise.
(Gen_Adainit_Ada): Do not set SSL.Finalize_Library_Objects in the
non-main program case.
(Gen_Adainit_C): Generate a couple of external declarations here.
In the main program case, set SSL.Finalize_Library_Objects.
(Gen_Elab_Calls_Ada): Adjust to Elaboration_Entity change.
(Gen_Elab_Calls_C): Likewise.
(Gen_Finalize_Library_Ada): Likewise.  Skip SAL interface units.
(Gen_Finalize_Library_C): Likewise.  Generate a full function.
(Gen_Main_C): Put back call to Ada_Final and don't finalize library
objects here.
(Gen_Output_File_Ada): Generate pragma Linker_Destructor for Ada_Final
if -a is specified.  Call Gen_Elab_Externals_Ada.  Move around call to
Gen_Adafinal_Ada.
(Gen_Output_File_C): Generate __attribute__((destructor)) for Ada_Final
if -a is specified.  Call Gen_Elab_Externals_C.  Remove useless couple
of external declarations.  Call Gen_Finalize_Library_C.

From-SVN: r177318
19 files changed:
gcc/ada/ChangeLog
gcc/ada/a-cofove.ads
gcc/ada/alfa.adb
gcc/ada/alfa.ads
gcc/ada/bindgen.adb
gcc/ada/checks.adb
gcc/ada/einfo.ads
gcc/ada/exp_attr.adb
gcc/ada/exp_ch12.adb
gcc/ada/exp_ch7.adb
gcc/ada/exp_util.adb
gcc/ada/prj-env.adb
gcc/ada/prj-nmsc.adb
gcc/ada/prj-proc.adb
gcc/ada/rtsfind.ads
gcc/ada/sem_attr.adb
gcc/ada/sem_elab.adb
gcc/ada/sem_util.adb
gcc/ada/sem_util.ads