From 38d7a13afcafa6d5b53ec2caa8d2d9eda1989152 Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Thu, 16 Jun 2005 10:44:56 +0200 Subject: [PATCH] s-atacco.ads: Put a pragma No_Strict_Aliasing on Object_Pointer. 2005-06-14 Eric Botcazou * s-atacco.ads: Put a pragma No_Strict_Aliasing on Object_Pointer. From-SVN: r101055 --- gcc/ada/s-atacco.ads | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gcc/ada/s-atacco.ads b/gcc/ada/s-atacco.ads index 6f8bd94..7ccb339 100644 --- a/gcc/ada/s-atacco.ads +++ b/gcc/ada/s-atacco.ads @@ -62,6 +62,13 @@ pragma Elaborate_Body; type Object_Pointer is access all Object; for Object_Pointer'Size use Standard'Address_Size; + pragma No_Strict_Aliasing (Object_Pointer); + -- Strictly speaking, this routine should not be used to generate pointers + -- to other than proper values of the proper type, but in practice, this + -- is done all the time. This pragma stops the compiler from doing some + -- optimizations that may cause unexpected results based on the assumption + -- of no strict aliasing. + function To_Pointer (Value : Address) return Object_Pointer; function To_Address (Value : Object_Pointer) return Address; -- 2.7.4