对于iOS8.0,CompileSwift声明“当前部署目标不支持自动__weak引用”

时间:2014-06-06 17:49:18

标签: xcode swift

我正在努力在Swift应用程序中使用静态库(从Objective C编译)。

我有一个包含相关标头的Objective C桥接标头。在构建应用程序时,我收到此错误..

/someDirectory/Xcode/FirstSteps/headers/Acme.h:89: the current deployment target does not support automated __weak references

Acme 使用弱引用,但部署目标是iOS 8.0,它应该支持它们。我吠叫错了树吗?

Acme.h第89行写道:

-(void) addTopicListener:(__weak NSObject<ACMETopicListenerDelegate>*) delegate;

1 个答案:

答案 0 :(得分:1)

事实证明,答案是从方法参数中删除__weak属性,或者在我的情况下将此包含在我的桥接标题中

#undef __weak
#define __weak /* nothing */
#import "Acme.h"

SwiftCompile显然不喜欢__weak属性,没有它,一切正常。它确实让我首先质疑参数__weak属性的必要性。