How to type-pun and why

Perry Smith pedz@easesoftware.com
Mon Jun 12 15:24:00 GMT 2006


Could he add a "volatile" keyword to fix it (from the standard point  
of view)?

On Jun 12, 2006, at 10:18 AM, Gabriel Dos Reis wrote:

>  Mattias Engdegård <mattias@virtutech.se> writes:
>
> | Using a union intermediate instead,
> |
> |   union { double d; uint64_t x; } u;
> |   u.d = something;
> |   uint64_t x = u.x;
> |
> | works as expected, but I would like to know why - if it is a  
> matter of luck
> | with the current implementation it might cease working when the  
> compiler
> | changes or becomes more aggressive in the future.
>
> that union trick is invalid as well, from the standard point of view.
> However, GCC makes a guarantee that it will be supported.
>



More information about the Gcc-help mailing list