[Ada] Elaboration order v4.0 activation
authorHristian Kirtchev <kirtchev@adacore.com>
Tue, 9 Jul 2019 07:54:29 +0000 (07:54 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Tue, 9 Jul 2019 07:54:29 +0000 (07:54 +0000)
commit16cc65b61a7c00920ff66d45d3b23a9e313dd1b8
treef81c44045c09863a44e70504872ec7c148f000f3
parentfb95bfcc8138378d4e5786c67f5eb49b84a54683
[Ada] Elaboration order v4.0 activation

This patch enables the elaboration order v4.0 as the default elaboration
order in GNATbind. The previous v3.0 elaboration order is now referred
to as the "legacy elaboration order mechanism" and is available using
binder switch -H.

2019-07-09  Hristian Kirtchev  <kirtchev@adacore.com>

gcc/ada/

* bindo.adb: Remove with and use clauses for Debug.  Add with
and use clauses for Opt.
(Find_Elaboration_Order): Enable the v4.0 elaboration order. The
v3.0 mechanism is now available under binder switch -H.
* bindusg.adb (Display): Enable switch -H.
* debug.adb: Free compiler switch -gnatd_G.  Free binder switch
-d_N.
* sem_elab.adb: Update the section on switches to remove
-gnatd_G.
(Invocation_Graph_Recording_OK): The invocation graph is now
unconditionally recorded in ALI files.
* switch-b.adb (Scan_Binder_Switches): Scan switch -H.
* doc/gnat_ugn/building_executable_programs_with_gnat.rst:
Update the documentation on compiler switches related to
elaboration.  Update the documentation on binder switches to
include switch -H.
* doc/gnat_ugn/elaboration_order_handling_in_gnat.rst: Update
the documentation on elaboration order handling in GNAT.
* gnat_ugn.texi: Regenerate.

From-SVN: r273280
gcc/ada/ChangeLog
gcc/ada/bindo.adb
gcc/ada/bindusg.adb
gcc/ada/debug.adb
gcc/ada/doc/gnat_ugn/building_executable_programs_with_gnat.rst
gcc/ada/doc/gnat_ugn/elaboration_order_handling_in_gnat.rst
gcc/ada/gnat_ugn.texi
gcc/ada/sem_elab.adb
gcc/ada/switch-b.adb