On Tue, Nov 20, 2007 at 10:43:37PM +0000, John Birrell wrote: > On Tue, Nov 20, 2007 at 07:35:42AM -0800, John Merryweather Cooper wrote: > > Could not -fno-strict-aliasing be considered as just another WARN level? > > At least then, there might be some pressure to eliminate strict aliasing > > warnings as a necessary component to moving to a higher WARN level. > > > > This is something I'd like to do right now as "a step in the right > direction". > > RCS file: /u/freebsd/cvsup/src/src/share/mk/bsd.sys.mk,v > retrieving revision 1.43 > diff -r1.43 bsd.sys.mk > 11,12d10 > < NO_WERROR= > < > 78a77,80 > > .if defined(NO_WARNS) || (defined(WARNS) && ${WARNS} == 0) > > CFLAGS += -fno-strict-aliasing > > .endif > > > > > and remove it from the default CFLAGS in sys.mk > You seem to misunderstand what -fno-strict-aliasing does. Its purpose is not to disable some warnings, but to disable certain optimizations which can easily cause not-quite-correct code to behave differently than the programmer intended. Such incorrect code is unfortunately fairly common, which is why -fno-strict-aliasing is often needed. Which optimizations are enabled or disabled should not depend on which WARN level is used. If gcc gives a warning about strict aliasing this means that there is almost certainly a bug in the code which need to be fixed, to make it safe to compile with the extra optimizations that an assumption of strict aliasing enables. -- <Insert your favourite quote here.> Erik Trulsson ertr1013_at_student.uu.seReceived on Tue Nov 20 2007 - 22:34:57 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:22 UTC