【发布时间】:2015-09-21 13:23:57
【问题描述】:
从 Apple 开发者论坛 (https://forums.developer.apple.com/message/59905#59905) 交叉发布。
我们最近首次尝试使用 Xcode 7 GM 版本构建我们的项目。我们遇到的问题(我将在下面解释)在 Xcode 7.0 (7A220) 中仍然存在。
该项目部分由旧的 Objective-C 代码和部分较新的 Swift 代码组成。编译时,构建过程失败并出现以下错误:
<unknown>:0: error: cannot convert value of type 'Int' to raw type 'DarwinBoolean'
<unknown>:0: error: cannot convert value of type 'Int' to raw type 'DarwinBoolean'
在此错误之前运行的行是:
CompileSwift normal x86_64 <path_to_project>/PDFViewController.swift
由于这似乎没有多大帮助,我们开始尝试通过使用古老的“注释所有代码并取消注释直到它中断”方法来定位错误。
我跟踪了该文件 (PDFViewController.swift) 中引发错误的位置。当我注释掉那行代码时,代码会编译,如果我把它留在里面,我会收到上述错误。该行没有什么特别之处,它只是调用了一个应该返回属性字符串的 NSArray 的 Objective-C 服务:
var attributedStrings: [NSAttributedString] = orderService.attributedStringsForNotes(notes)
thet 方法的声明是:
- (NSArray<NSAttributedString *> *) attributedStringsForNotes:(NSString *) aString;
评论它的整个实现并不能解决编译时问题,所以我开始认为这可能是一个 Xcode 错误。
我有什么遗漏吗?或者我可以获得一些更详细的错误消息?
提前感谢您的帮助!
对不起,我不能提供一个更小的最小工作示例,我只是不知道如何隔离这个......
【问题讨论】: