测试最近的nullable / nonnull注释我编写了简单的基本方法:
- (void)testAnalyzer:(nullable void (^)(BOOL success))completion
{
// Do stuff
completion(YES);
}
我原本期望编译器拒绝这段代码,或者至少标记它需要围绕completion()
调用的条件,但xcode并不介意。另一方面,如果我将参数设置为nonnull
,则xcode不会编译将nil传递给方法的代码。
通过xcode构建设置,我看到一个名为"误用' nonnull'",因此没有等同于"误用' nullable&#39 ;"
答案 0 :(得分:2)
你做不到。至少,我看不到你能做到的方式。
在rdar:// 30309846中捕获。
感谢您的提问 - 编译器确实应该抓住这个。