如何禁用Xcode静态分析(Clang)消息?

如何禁用Xcode静态分析(Clang)消息?,xcode,clang,warnings,Xcode,Clang,Warnings,我希望我的Xcode项目在不生成任何错误、警告或静态分析消息的情况下完成构建和分析步骤。这样做的一个问题是,我的项目包含生成(可能是无害的)警告和静态分析消息的库 我找不到一种方法来禁用特定的叮当声警告,以便“我的”代码生成时不会出现任何问题。这可能吗?构建和分析步骤是叮当声-这是“分析”部分。分析代码而不让clang告诉您它发现的问题是没有意义的。这就像去洗车场告诉他们不要碰汽车一样 从与WWDC编写clang的人的交谈来看,它确定为问题的任何东西实际上都不太可能不存在。如果你认为你有一些代码

我希望我的Xcode项目在不生成任何错误、警告或静态分析消息的情况下完成构建和分析步骤。这样做的一个问题是,我的项目包含生成(可能是无害的)警告和静态分析消息的库


我找不到一种方法来禁用特定的叮当声警告,以便“我的”代码生成时不会出现任何问题。这可能吗?

构建和分析步骤叮当声-这是“分析”部分。分析代码而不让clang告诉您它发现的问题是没有意义的。这就像去洗车场告诉他们不要碰汽车一样

从与WWDC编写clang的人的交谈来看,它确定为问题的任何东西实际上都不太可能不存在。如果你认为你有一些代码的例子可以很好的工作,但叮当抱怨,请提交一个例子代码,以便苹果可以修复


您可以使用标志,但并非所有标志都是可选的。

我找不到任何方法来实现这一点,并针对Clang提出了一个bug。团队似乎想添加此功能,但目前还没有

错误是:


此外,您还可以使用ifdef输出任何不希望Clang处理的代码。

我理解Clang背后的原理。虽然我不再参与那个项目(事实上,现在我在苹果工作,哈哈),但这并不是一个充分的答案,因为这是一个第三方库,由于政策的原因,我们不会更改它的代码。另外,我在发布这个问题一周后提交了这个bug:D如果你自己得出结论,认为你的问题没有有效的解决方案,而在苹果工作,你将获得比我们其他人更好的信息,如果你删除/关闭你的问题,这样人们就不会浪费精力来帮助你,那将是一件好事。好的观点,事实上,在收到您的答复之前,我已经忘记了这个问题我可以假设我可以用关于挂起的bug的信息来回答这个问题,因为这是我目前所知道的关于这个问题的进展情况。我认为这不是一个现实的答案:Clang static analyzer有bug(虽然很少,但仍然存在),并且可以报告误报。这给Xcode静态分析的输出增加了干扰(在Xcode构建服务器中更是如此),在观察引入的回归时增加了不必要的麻烦。向苹果公司报告这些问题意味着修复这些问题最多需要几个月的时间。如果你的政策不包括对第三方代码进行更改,那就不是问题所在。box2d中的警告也是无害的。。。死气沉沉的商店。这样做是为了避免未初始化的变量(即使它们总是在以后写入)。与其修改第三方代码,不如将其关闭。如果您要回答自己的问题,请至少链接到文档或给出您的clang_analyzer宏的示例。答案中有一个指向信息的链接,这是我所知道的全部。但是,我只是在谷歌上搜索了一下,这里有更多关于clang_analyzer宏的信息。这很简单。我很惊讶你没有在lmgtfy链接中发布它:)谢谢Khakionion,这真是有用的东西。你是苹果的LLVM团队的成员吗?我与前端编译器团队的一位成员进行了沟通。re:添加协方差支持,我想知道是否值得创建一个SO帖子,看看其他人的想法。不,我在iOS SDK上工作。当我在一家使用Box2D的游戏公司工作时,这个问题又出现了。我们不想更改任何库代码,但代码导致analyzer出现问题。宏很好,但由于编码策略,它无法解决我们的特定问题。