如何让 xcode 8 对可为空的块指针发出警告?

How can I make xcode 8 warn on nullable block pointers?

测试最近的nullable/nonnull注解我写的简单的基本方法:

- (void)testAnalyzer:(nullable void (^)(BOOL success))completion
{
    // Do stuff
    completion(YES);
}

我原以为编译器会拒绝此代码,或者至少将其标记为要求 completion() 调用有条件,但 xcode 不介意。另一方面,如果我将参数设置为 nonnull,那么 xcode 将不会编译将 nil 传递给方法的代码。

查看 xcode 构建设置,我看到一个名为 "Misuse of 'nonnull'" 的设置,因此没有 "Misuse of 'nullable'"?

的等效项

你不能。至少,我看不到你可以的方法。

捕获于rdar://30309846.

感谢您的提问——编译器确实应该捕捉到这一点。