在Xcode中,如何抑制特定源文件中的所有警告?

Bob*_*sky 134 xcode warnings

在我的应用程序中,我使用第三方代码触发一些警告.我查看了它们,可以安全地忽略它们.

现在我想以某种方式"标记"文件,因此Xcode不会对该文件中的代码显示任何警告.

我该怎么办?

Jon*_*eid 270

选择目标并显示Build Phases.然后在搜索框中输入文件的名称,您应该会在"编译源"阶段中看到它.双击该文件的Compiler Flags列,然后输入-w以关闭该文件的所有警告.

  • 事实证明,所有这些都与编译器有关.我的意思是,在一个使用LLVM GCC编译器`-w`的项目中,这个技巧和其他使用普通GCC编译器的项目`-Wno-name-of-warning`是唯一的方法. (14认同)
  • 不适用于使用Xcode 7.0和Apple LLVM 7.0的Swift 2 (11认同)
  • 嗯,我希望`-w`能够关闭所有警告,但也许新编译器不会注意这一点.在这种情况下,请关闭个别警告.在Build Settings中找到有问题的警告,并在Utilities视图中显示Quick Help.您应该看到一个带有`-Wname-of-warning`语法的描述.在名称前加上"no-"并在Compiler Flags中指定.示例:关闭`-Wunused-parameter`指定`-Wno-unused-parameter` (9认同)
  • 谢谢你的提示,也为我工作(`-w`和LLVM).当您包含第三方文件时,您不需要修改即可. (6认同)

Spy*_*ydy 6

在左侧导航器中选择Project,然后在目标文件的Build Phase中选择target to build phase和Put -w.它将隐藏所有编译器警告 在此输入图像描述

  • 不适用于使用Xcode 7.0和Apple LLVM 7.0的Swift 2 (17认同)
  • 将clang编译器标志传递给外部编译器不起作用.quelle surprise ... google swift编译器的警告标志,并添加它. (2认同)

Cal*_*l S 5

这适用于 Xcode 10.2+ 和 Swift 5

手动修复:

-w -Xanalyzer -analyzer-disable-all-checks从 Xcode > 项目 > 目标 > 编译源 > 双击要关闭警告的文件添加到有问题的文件。

Cocoapods 修复:

如果您尝试抑制来自有问题的 pod 的警告,您可以使用podfileinhibit_warnings中的标志自动抑制来自依赖项的所有警告:

pod 'Kingfisher', '~> 4.6', :inhibit_warnings => true
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述