[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: |
Sat, 3 Mar 2007 19:40:33 -0600 (CST) |
On Fri, 2 Mar 2007, Camm Maguire wrote:
| > | 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.
| >
|
| Agreed.
Interestingly, ECL -- another CL implementation with KCL as
grandfather -- invokes GCC explicitly with -fstrict-aliasing, e.g. it
is explicitly askign the compiler to exploit aliasing rules, when
compiling generated C codes.
-- Gaby