diff options
author | Bob Duff <duff@adacore.com> | 2021-12-03 12:01:14 -0500 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2022-01-06 17:11:34 +0000 |
commit | 0590ed7248a46c06c9f0d166af7eb8c9bb046a66 (patch) | |
tree | 72f4ed5ca2eab8b298f3822b2635f0cb42627346 /gcc/ada/libgnat/a-except.ads | |
parent | 337417795afd624c479c49529a935ee096700457 (diff) | |
download | gcc-0590ed7248a46c06c9f0d166af7eb8c9bb046a66.zip gcc-0590ed7248a46c06c9f0d166af7eb8c9bb046a66.tar.gz gcc-0590ed7248a46c06c9f0d166af7eb8c9bb046a66.tar.bz2 |
[Ada] New restriction No_Tagged_Type_Registration
gcc/ada/
* libgnat/s-rident.ads (No_Tagged_Type_Registration): New
restriction identifier.
* restrict.ads (Implementation_Restriction): Add restriction.
* exp_ch7.adb (Process_Declarations): Suppress
tagged-type-related finalization actions if the restriction is
active. Call RTE_Available last.
* exp_disp.adb (Make_DT): Likewise.
* exp_util.adb (Requires_Cleanup_Actions): Return False for a
tagged type declaration if No_Tagged_Type_Registration is
active.
* sem_attr.adb (Check_Stream_Attribute): Check restriction
No_Tagged_Type_Registration.
* libgnat/a-except.ads (Null_Occurrence): Minor: Initialize, to
avoid stopping at a warning in gdb.
* doc/gnat_rm/standard_and_implementation_defined_restrictions.rst:
Document new restriction.
* gnat_rm.texi: Regenerate.
Diffstat (limited to 'gcc/ada/libgnat/a-except.ads')
-rw-r--r-- | gcc/ada/libgnat/a-except.ads | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/ada/libgnat/a-except.ads b/gcc/ada/libgnat/a-except.ads index b6c8bb5..0258d0e 100644 --- a/gcc/ada/libgnat/a-except.ads +++ b/gcc/ada/libgnat/a-except.ads @@ -286,8 +286,10 @@ private pragma Stream_Convert (Exception_Occurrence, String_To_EO, EO_To_String); -- Functions for implementing Exception_Occurrence stream attributes - pragma Warnings (Off, "aggregate not fully initialized"); - Null_Occurrence : constant Exception_Occurrence := (others => <>); - pragma Warnings (On, "aggregate not fully initialized"); + Null_Occurrence : constant Exception_Occurrence := + (Machine_Occurrence => System.Null_Address, + Msg => (others => '*'), + Tracebacks => (others => System.Traceback_Entries.Null_TB_Entry), + others => <>); end Ada.Exceptions; |