Apple LLVM编译器 - 使用编译指示禁止文件的一部分的所有警告?

时间:2011-08-14 02:09:04

标签: iphone xcode warnings llvm pragma

我需要为我的一个源文件禁止警告。这就是我所拥有的。它不起作用。

 #pragma GCC diagnostic push
 #pragma GCC "-w"  // also tried "-Wall"

     // code that generates warnings here

 #pragma GCC diagnostic pop

2 个答案:

答案 0 :(得分:2)

您可以使用以下格式禁用个别警告:

#pragma GCC diagnostic ignored "-Wwarning-to-disable"

除此之外,这对"-Wall"不起作用,仅适用于个别警告。我建议只禁用您遇到的特定警告,并且只有在您无法控制的源文件中。如果它在您的代码中,您应该认真考虑以正确的方式修复警告。

修改:请参阅Section 3.8, Options to Request or Suppress Warnings中的GCC docs

编辑2:啊,没有意识到这不是一个全面的清单。似乎没有任何文档包含全面的列表,但您始终可以检查源。在clang源周围,看起来include/clang/Basic/DiagnosticGroups.td列出了一大堆。

答案 1 :(得分:0)

如果使用XCode,您可以转到构建日志并展开编译器输出,它会告诉您在pragma中使用的警告名称