Xcode 6.3上的可空性问题

时间:2015-04-10 02:49:27

标签: ios xcode parse-platform nullable

我昨天升级到了Xcode 6.3。从那以后,我一直无法构建任何具有Parse.framework的东西。对于PFConstants.h,我得到像

这样的错误

nullability specifier '_nullable' cannot be applied to non-pointer

我之前从未见过这个错误,除了更新到6.3之外什么都没有改变。有什么想法吗?

2 个答案:

答案 0 :(得分:19)

Parse已经实现了Xcode 6.3中提供的新的 nullability 注释 - 请参阅他们的blog post,但似乎旧框架中的方法会导致这些编译错误。

只需从最新的API downloads更新Parse框架,您就可以恢复营业了

答案 1 :(得分:1)

这似乎是您正在使用的Parse版本的问题。虽然一个明显的答案是更新你的Parse版本,但这可能会导致应用程序产生连锁效应。

我不想更新到最新版本的Parse,因为这需要进行重大更改以适应新的Facebook SDK和其他所需的库。

我发现此修复程序适用于项目编译和工作:

在问题变量中切换PF_NULLABLE_S的位置,似乎解决了问题

所以切换这个:

typedef void (^PFArrayResultBlock)(PF_NULLABLE_S NSArray *objects, PF_NULLABLE_S NSError *error);

到此:

typedef void (^PFArrayResultBlock)(NSArray * PF_NULLABLE_S objects, NSError * PF_NULLABLE_S error);

这使我的应用程序能够正常编译和运行而无需更改库。这个答案肯定不是对潜在问题的解决方案,但在许多情况下非常有用,例如。您希望能够测试旧版本,不想更新它但仍希望能够运行它