[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Axiom-developer] GCC/GCL warning messages
From: |
Gabriel Dos Reis |
Subject: |
Re: [Axiom-developer] GCC/GCL warning messages |
Date: |
18 Feb 2007 17:26:37 -0600 |
address@hidden writes:
| Camm,
|
| I'm building the next Axiom release. During the GCL build I see a large
| number of messages that read:
|
| gcl_defmacro.c:In function `L12':
| gcl_defmacro.c:79: warning: dereferencing type-punned pointer will
| break strict-aliasing rules
|
| C99 language semantics now assume that pointers to different types
| point to different memory locations, which is obvious nonsense, but
| part of the new standard.
That statement is obviously untrue.
The non-aliasing rule, which has always been there since I don't know
when -- certainly, it is part of C89, and it is not a C99 invention --
says that the following is undefined behaviour
double z;
*(long*)&z = 1;
printf ("%g", z);
That makes perfect sense. Why would you think it is nonsense?
| You might want to add -fno-strict-aliasing option to the GCC command line.
Instead of papering over the incorrectness, I would suggest to fix it.
-- Gaby