preliminary work for gcc 4.4.0
authorDenys Vlasenko <vda.linux@googlemail.com>
Sat, 22 Aug 2009 00:34:10 +0000 (02:34 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Sat, 22 Aug 2009 00:34:10 +0000 (02:34 +0200)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Makefile.flags

index 2109fdf11c46d56bffacf6b99070da11552a6480..032f6c135d6fe345f204d9f88c5e62dcbd25e822 100644 (file)
@@ -32,6 +32,15 @@ CFLAGS += $(call cc-option,-Wdeclaration-after-statement,)
 
 ifeq ($(CONFIG_WERROR),y)
 CFLAGS += $(call cc-option,-Werror,)
+## TODO:
+## gcc version 4.4.0 20090506 (Red Hat 4.4.0-4) (GCC) is a PITA:
+## const char *ptr; ... off_t v = *(off_t*)ptr; -> BOOM
+## and no easy way to convince it to shut the hell up.
+## We have a lot of such things all over the place.
+## Classic *(off_t*)(void*)ptr does not work,
+## and I am unwilling to do crazy gcc specific ({ void *ppp = ...; })
+## stuff in macros. This would obfuscate the code too much.
+#CFLAGS += $(call cc-ifversion, -eq, 0404, -fno-strict-aliasing)
 endif
 # gcc 3.x emits bogus "old style proto" warning on find.c:alloc_action()
 CFLAGS += $(call cc-ifversion, -ge, 0400, -Wold-style-definition)