gpt4 book ai didi

ios - Swift 编译器在handleDeferredImports 中出现段错误

转载 作者:行者123 更新时间:2023-11-30 10:57:22 25 4
gpt4 key购买 nike

我们开始看到一个奇怪的问题,它突然出现,编译器在 handleDeferredImports 中出现段错误。 。这种情况并不总是发生,有时我需要清理和重建 2-3 次才能再次触发它,因此很难确定其根本原因是什么。

我也无法在单独的示例项目中重现它,但经过两天的寻找解决方案后,我一片空白。

这是段错误:error: Segmentation fault: 11具有以下堆栈:

0  swift                    0x000000011307064a PrintStackTraceSignalHandler(void*) + 42
1 swift 0x000000011306fdfe SignalHandler(int) + 302
2 libsystem_platform.dylib 0x00007fff76391b3d _sigtramp + 29
3 libsystem_platform.dylib 000000000000000000 _sigtramp + 2311513312
4 swift 0x0000000110605df0 swift::ClangImporter::Implementation::handleDeferredImports() + 512
5 swift 0x00000001106058dc swift::ClangImporter::Implementation::importHeader(swift::ModuleDecl*, llvm::StringRef, swift::SourceLoc, bool, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer> >, bool) + 1804
6 swift 0x0000000110606754 swift::ClangImporter::importBridgingHeader(llvm::StringRef, swift::ModuleDecl*, swift::SourceLoc, bool, bool) + 932
7 swift 0x000000011010acfd swift::CompilerInstance::performSema() + 2029
8 swift 0x000000010f2f859b performCompile(swift::CompilerInstance&, swift::CompilerInvocation&, llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*, swift::UnifiedStatsReporter*) + 731
9 swift 0x000000010f2f4dc5 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) + 7717
10 swift 0x000000010f29aa35 main + 1349
11 libdyld.dylib 0x00007fff761a808d start + 1
12 libdyld.dylib 0x0000000000000123 start + 2313519255

没有指示单个文件或 header 。

我们混合使用 Objective-C 和 Swift,导入 ProjectModuleName-Swift.h在很多文件中,类似的,都有一个非常大的ProjectModuleName-Bridging-Header.h文件。除此之外,由于遗留原因,还有一个 ProjectModuleName-Prefix.pch对于默认的 Objective-C 包含(是的,我知道这很糟糕)。

这里奇怪的是 handleDeferredImports 中的段错误这与 Stack Overflow 上发现的所有其他 Swift 编译器段错误问题不同。

Swift 版本是 4.2,我们在 Xcode 10 中使用“新构建系统”(它在“旧版构建系统”上也会出现段错误)。

最佳答案

Swift 4 编译器的解决方法是为所有构建启用整个模块优化。

该问题本身似乎已在 Swift 5.0 中得到解决

如果以后有人看到此问题,请参阅 https://bugs.swift.org/browse/SR-9528

关于ios - Swift 编译器在handleDeferredImports 中出现段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53802097/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com