[Ada] Elaboration order v4.0 activation

Programming / Compilers / GCC - pmderodat [138bc75d-0d04-0410-961f-82ee72b054a4] - 9 July 2019 07:54 EDT

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

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.

f71974500d7 [Ada] Elaboration order v4.0 activation
gcc/ada/ChangeLog | 22 +
gcc/ada/bindo.adb | 33 +-
gcc/ada/bindusg.adb | 7 +-
gcc/ada/debug.adb | 9 +-
.../building_executable_programs_with_gnat.rst | 66 +-
.../elaboration_order_handling_in_gnat.rst | 1405 ++++++++------------
gcc/ada/gnat_ugn.texi | 1320 ++++++++----------
gcc/ada/sem_elab.adb | 17 +-
gcc/ada/switch-b.adb | 9 +-
9 files changed, 1150 insertions(+), 1738 deletions(-)

Upstream: gcc.gnu.org


  • Share