title: How can -Wgnu-zero-variadic-macro-arguments warning be turned off with Clang?
body: <p><strong>Context</strong></p>
  
  <p>I read <a href="http://clang.llvm.org/docs/UsersManual.html#id22" rel="nofollow">Clang's "Controlling Diagnostics via Pragmas"</a> section about turning off particular warnings. It works well in general for all warnings except for <em>-Wgnu-zero-variadic-macro-arguments</em>. </p>
  
  <p>The code is:</p>
  
  <p>MyHeader.hpp</p>
  
  <pre><code>#pragma clang diagnostic push
  #pragma clang diagnostic ignored "-Wgnu-zero-variadic-macro-arguments"
  
  #import "header generating -Wgnu-zero-variadic-macro-arguments warning"
  
  #pragma clang diagnostic pop
  </code></pre>
  
  <p><strong>Problem</strong></p>
  
  <p>Clang generates <em>-Wgnu-zero-variadic-macro-arguments</em> warnings while compiling translation units importing MyHeader.hpp.</p>
  
  <p><strong>Env</strong></p>
  
  <p>Clang Version: 
  Apple LLVM version 6.0 (clang-600.0.51) (based on LLVM 3.5svn)
  Target: x86_64-apple-darwin13.4.0
  Thread model: posix</p>
  
  <p>OS: Mac OS X 10.9.5</p>