<div dir="ltr">On Thu, Jan 31, 2013 at 9:46 AM, David Blaikie <span dir="ltr"><<a href="mailto:dblaikie@gmail.com" target="_blank" class="cremed">dblaikie@gmail.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">+Chandler, CMake owner<br>
<br>
Not sure if we need to do the flag support check (ala<br>
-Wcovered-switch-default) when adding -Wmissing-field-initializers (in<br>
case we're dealing with non-Clang non-GCC compilers (that are still<br>
GCC compatible?)?)<br></blockquote><div style><br></div><div style>Yea, i think at least the else branch needs the test. Personally, I would sink both sides under the test just for clarity.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="HOEnZb"><div class="h5"><br>
On Thu, Jan 31, 2013 at 6:51 AM, Edwin Vane <<a href="mailto:edwin.vane@intel.com" class="cremed">edwin.vane@intel.com</a>> wrote:<br>
> Hi gribozavr, dblaikie,<br>
><br>
> gcc produces false positives for empty braces so turning the warning<br>
> off. Instead, turning the warning on for clang so proper warnings aren't<br>
> missed.<br>
><br>
> <a href="http://llvm-reviews.chandlerc.com/D358" target="_blank" class="cremed">http://llvm-reviews.chandlerc.com/D358</a><br>
><br>
> Files:<br>
>   cmake/modules/HandleLLVMOptions.cmake<br>
><br>
> Index: cmake/modules/HandleLLVMOptions.cmake<br>
> ===================================================================<br>
> --- cmake/modules/HandleLLVMOptions.cmake<br>
> +++ cmake/modules/HandleLLVMOptions.cmake<br>
> @@ -178,6 +178,14 @@<br>
>  elseif( LLVM_COMPILER_IS_GCC_COMPATIBLE )<br>
>    if (LLVM_ENABLE_WARNINGS)<br>
>      add_llvm_definitions( -Wall -W -Wno-unused-parameter -Wwrite-strings )<br>
> +    # Turn off missing field initializer warnings for gcc to avoid noise from<br>
> +    # false positives with empty {}. Turn them on otherwise (they're off by<br>
> +    # default for clang).<br>
> +    if (CMAKE_COMPILER_IS_GNUCXX)<br>
> +      add_llvm_definitions( -Wno-missing-field-initializers )<br>
> +    else()<br>
> +      add_llvm_definitions( -Wmissing-field-initializers )<br>
> +    endif()<br>
>      if (LLVM_ENABLE_PEDANTIC)<br>
>        add_llvm_definitions( -pedantic -Wno-long-long )<br>
>      endif (LLVM_ENABLE_PEDANTIC)<br>
</div></div></blockquote></div><br></div></div>