我有一个警告,我希望在
Xcode中抑制,但我似乎无法找到警告的名称.我启用了-fdiagnostics-show-category = name,日志显示这是一个语义问题.看看Clang的来源,我想我找到了一个
test for this scenario,但似乎无法找到它的名字.
目前,构建日志显示:
m:89:29: warning: assigning to 'id<AProtocol>' from incompatible type 'AViewController *' [Semantic Issue] self.tableView.delegate = self.aController;
警告的ID也是2 – 但无论我尝试什么,我似乎无法让它消失:
#pragma clang diagnostic push #pragma clang diagnostic ignored "-WNO-CLUE-WHAT-THE-WARNING-FLAG-IS" self.tableView.delegate = self.aController; #pragma clang diagnostic pop
当然,我知道总是修复警告是首选,我可以使用协议强制转换.但是在这一点上,我看起来很难找到警告,感觉就像未完成的事情,我很想知道答案.我也搜索过“freakingclangwarnings.com”,据我所知,它并不存在.
解决方法
搜索源代码,我猜它是在DiagnosticSemaKinds.td中定义的warn_incompatible_qualified_id,它是
existing warnings that currently have no associated -W flag中的一个,可能是
revision log中添加时的更多信息.