On 08/10/2012 07:51 AM, Chad Versace wrote: > On 08/09/2012 01:22 PM, Kenneth Graunke wrote: >> On 08/09/2012 01:10 PM, Chad Versace wrote: >>> Add -Wno-narrowing to CXXFLAGS for gcc. >>> >>> This removes warnings of the form >>> warning: narrowing conversion of X from 'int' to 'float' inside { } is >>> ill-formed in C++11 [-Wnarrowing] >>> in ff_fragment_shader.cpp and gen6_blorp.cpp of the form. When building >>> i965, I observed no other difference in the build output. >>> >>> CC: Kenneth Graunke <kenn...@whitecape.org> >>> Signed-off-by: Chad Versace <chad.vers...@linux.intel.com> >>> --- >>> configure.ac | 3 +++ >>> 1 file changed, 3 insertions(+) >>> >>> diff --git a/configure.ac b/configure.ac >>> index 89686b4..fa4fd71 100644 >>> --- a/configure.ac >>> +++ b/configure.ac >>> @@ -228,6 +228,9 @@ if test "x$GXX" = xyes; then >>> # gcc's builtin memcmp is slower than glibc's >>> # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43052 >>> CXXFLAGS="$CXXFLAGS -fno-builtin-memcmp" >>> + >>> + # Silence C++11 warnings that we don't care about. >>> + CXXFLAGS="$CXXFLAGS -Wno-narrowing" >>> fi >>> >>> dnl even if the compiler appears to support it, using visibility >>> attributes isn't >> >> Nak. I believe this will break the build if using a g++ too old to >> recognize -Wno-narrowing. You'd need to do the whole rigamarole used in >> the compiler flag checks a bit earlier. Or import the handy m4 macro >> from xorg-util-macros which does all the rigamarole in one line. > > It's safe to do this. If an old gcc encounters a -Wno option that it does not > recognize, then it will usually silently ignore it. I verified this by > building > with -Wno-whatever, and the option was silently ignored, as expected. > > From the GCC Manual [http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html], > emphasis mine: > > When an unrecognized warning option is requested (e.g., -Wunknown-warning), > GCC > emits a diagnostic stating that the option is not recognized. However, if the > -Wno- form is used, the behavior is slightly different: no diagnostic is > produced for -Wno-unknown-warning unless other diagnostics are being produced. > ***This allows the use of new -Wno- options with old compilers***, but if > something goes wrong, the compiler warns that an unrecognized option is > present.
Oh cool! :D I had no idea it did that. Reviewed-by: Kenneth Graunke <kenn...@whitecape.org> _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev