我试图在Xcode 11中构建我的项目,并抛出26个相同的错误
.switchWindow
调用<unknown>:0: error: '==' is only available in iOS 13.0 or newer
时,错误发生在Compile Swift source files stage
上。没有上下文帮助指向文件中的任何 。这些文件完全不同,但看起来无害,并且没有任何共同之处。
答案 0 :(得分:1)
经过一番痛苦,我发现4个月大的应用程序版本可以正常编译。因此,我做了CompileSwift normal arm64 /long/path/to/MyClass.swift ...
,发现了令人反感的提交,然后输入了以下代码:
git bisect
结果证明,struct Config: Equatable {
let formatDescription: CMFormatDescription
let orientation: CGImagePropertyOrientation
}
仅在iOS 13中才变成CMFormatDescription
,而应用程序的部署目标是iOS11。它可能在Xcode 10中回到Equatable
,但在Xcode11。由于Swift在后台自动生成[NSObject isEqual:]
一致性,因此在指出错误的确切位置时遇到了麻烦。解决方案是为Equatable
添加自己的Equatable
实现:
CMFormatDescription