Do not build with -Winline
authorFlorian Weimer <fweimer@redhat.com>
Fri, 24 Apr 2015 09:10:24 +0000 (11:10 +0200)
committerFlorian Weimer <fweimer@redhat.com>
Fri, 24 Apr 2015 15:06:39 +0000 (17:06 +0200)
-Winline causes architecture- and optimization-dependent build failures
due to -Werror.  -Winline warns about inlining decisions based on
branch hints, in effect preventing the use of inline functions in
header files (because they might be called on unlikely branches, leading
to a decision not to inline).

The option was apparently added to the glibc build at a time when GCC
did not support the always_inline attribute.  With current GCC versions,
inlining failure for functions declared always_inline will receive a
warning under -Wattributes, which is enabled by default, so -Winline
appears unnecessary.

ChangeLog
Makeconfig

index 97fb9fe..f515a2a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2015-04-24  Florian Weimer  <fweimer@redhat.com>
+
+       * Makeconfig (+gccwarn): Remove -Winline.
+
 2015-04-24  Stefan Liebler  <stli@linux.vnet.ibm.com>
 
        * sysdeps/s390/fpu/libm-test-upls: Regenerate.
index dc7f208..77752c0 100644 (file)
@@ -739,9 +739,9 @@ endif
 
 # Extra flags to pass to GCC.
 ifeq ($(all-warnings),yes)
-+gccwarn := -Wall -Wwrite-strings -Winline -Wcast-qual -Wbad-function-cast -Wmissing-noreturn -Wmissing-prototypes -Wmissing-declarations -Wcomment -Wcomments -Wtrigraphs -Wsign-compare -Wfloat-equal -Wmultichar
++gccwarn := -Wall -Wwrite-strings -Wcast-qual -Wbad-function-cast -Wmissing-noreturn -Wmissing-prototypes -Wmissing-declarations -Wcomment -Wcomments -Wtrigraphs -Wsign-compare -Wfloat-equal -Wmultichar
 else
-+gccwarn := -Wall -Wwrite-strings -Winline
++gccwarn := -Wall -Wwrite-strings
 endif
 +gccwarn += -Wundef
 ifeq ($(enable-werror),yes)