From: Eric Botcazou Date: Thu, 16 Jun 2005 08:44:56 +0000 (+0200) Subject: s-atacco.ads: Put a pragma No_Strict_Aliasing on Object_Pointer. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=38d7a13afcafa6d5b53ec2caa8d2d9eda1989152;p=gcc.git 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 --- diff --git a/gcc/ada/s-atacco.ads b/gcc/ada/s-atacco.ads index 6f8bd94b81a..7ccb3395a30 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;