[COMMITTED] ada: Add No_Elaboration_Code_All pragma to System.Storage_Elements

Message ID 20230613073800.239531-1-poulhies@adacore.com
State Committed
Commit 416bb154d5c36f25dd6f54fb0d81bf6b0132ee20
Headers
Series [COMMITTED] ada: Add No_Elaboration_Code_All pragma to System.Storage_Elements |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_gcc_build--master-arm fail Patch failed to apply

Commit Message

Marc Poulhiès June 13, 2023, 7:38 a.m. UTC
  From: Daniel King <dmking@adacore.com>

Allows System.Storage_Elements to be used in units that
have the No_Elaboration_Code_All restriction.

gcc/ada/

	* libgnat/s-stoele.ads: Add No_Elaboration_Code_All pragma.

Tested on x86_64-pc-linux-gnu, committed on master.

---
 gcc/ada/libgnat/s-stoele.ads | 3 +++
 1 file changed, 3 insertions(+)
  

Patch

diff --git a/gcc/ada/libgnat/s-stoele.ads b/gcc/ada/libgnat/s-stoele.ads
index 3262d0329c3..7de150dab59 100644
--- a/gcc/ada/libgnat/s-stoele.ads
+++ b/gcc/ada/libgnat/s-stoele.ads
@@ -43,6 +43,9 @@  package System.Storage_Elements is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada 2005,
    --  this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    pragma Annotate (GNATprove, Always_Return, Storage_Elements);
 
    type Storage_Offset is range -Memory_Size / 2 .. Memory_Size / 2 - 1;