Swift 编译器优化 -O 在添加 Bridging-Header.h 后不起作用



出于某些原因,我试图比较 Swift 和 ObjectiveC 的性能。为了方便起见,我制作了简单的命令行 Swift 项目,并在那里添加了 ObjectiveC 代码。在调试配置中构建和运行正常。但是在发布中运行配置给了我以下编译器错误:

命令/应用程序/Xcode-Beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc 失败,退出代码为 1

当然,我可以通过在构建设置的优化级别中设置 -Onone 来修复此错误。

但正如我上面所说,我需要在最大性能模式下比较代码。

这就是为什么-Onone不是一种选择。你可以在这里看看项目。

有谁知道如何摆脱这个错误?

提前谢谢你!

问题是在扩展方法中定义的class Array2D levenshteinDistanceFromStringSwift .我不知道这是否是一个错误,但是如果你

  • 将类移动到全局级别,
  • class Array2D更改为struct Array2D

然后,您的项目也会在发布模式下编译和运行。

最新更新