Skip to content

Swift compiler 5.9 (built on release/5.9 branch) crash because of "out of memory" during writing diagnostics #67857

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
dreampiggy opened this issue Aug 10, 2023 · 7 comments · May be fixed by #69324
Labels
bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. triage needed This issue needs more specific labels

Comments

@dreampiggy
Copy link

dreampiggy commented Aug 10, 2023

Description

Compiler crash and report stack trace.

Steps to reproduce

Expected behavior

Compile success without crash

Environment

  • Swift compiler version info
  • Xcode version info
  • Deployment target:

Self built Swift toolchain

Version: Apple Swift version 5.9-dev
Target: arm64-apple-ios12.0-simulator

Stacktrace:

LLVM ERROR: out of memory
Allocation failed
Please submit a bug report (https://swift.org/contributing/#reporting-bugs) and include the crash backtrace.
Stack dump:
0.	Program arguments: /Users/foobar/Library/Developer/Toolchains/swift-release-5.9.xctoolchain/usr/bin/swift-frontend -frontend -c "/Users/foobar/workspace/iOS-Demo/Pods/Target Support Files/__assert_patch.swift" /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/BundleConfig.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Debug/DebugItem.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Cache/DiskCache.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Domain/DomainKey.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Domain/DomainSetting.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/DemoAssemble/DomainSettingManager+update.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Setting/Env+Extension.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Debug/Extensions.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Debug/FeatureGatingController.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/FeatureGating/FeatureGatingDataSource.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/DemoAssemble/FeatureGatingDatasourceDefaultImpl.swift -primary-file /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Debug/FeatureGatingDebugView.swift -primary-file /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/FeatureGating/FeatureGatingManager.swift -primary-file /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/FeatureGating/FeatureGatingPropertyWrapper.swift -primary-file /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/FeatureGating/FeatureGatingService.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/FeatureGating/FeatureGatingStorage.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/FeatureGating/FeatureGatingTracker.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Cache/KVStorge.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/FeatureGating/DemoFeature.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Debug/DemoSettingDebugController.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/DemoAssemble/SettingAccountDelegate.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/DemoAssemble/SettingAppDelegate.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/DemoAssemble/SettingAssembly.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Setting/SettingDatasource.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/DemoAssemble/SettingDatasourceDefaultImpl.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Setting/SettingDecodable.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Setting/SettingError.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/DemoAssemble/SettingLaunchTask.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Setting/SettingManager.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Setting/SettingPropertyWrapper.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/DemoAssemble/SettingPushHandler.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Setting/SettingService.swift /Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Setting/SettingStorage.swift -supplementary-output-file-map /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/Objects-normal/arm64/supplementaryOutputs-4517 -target arm64-apple-ios12.0-simulator -Xllvm -aarch64-use-tbi -enable-objc-interop -sdk /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator17.0.sdk -I /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Products/Debug-iphonesimulator/DemoSetting -I /Users/foobar/workspace/iOS-Demo/Pods/BDALog/ios-arch-iphone -I /Users/foobar/workspace/iOS-Demo/Pods/BDDataDecorator/BDDataDecorator/Base -I /Users/foobar/workspace/iOS-Demo/Pods/BDDataDecorator/ios-arch-iphone -I /Users/foobar/workspace/iOS-Demo/Pods/FrameRecover/ios-arch-iphone -I /Users/foobar/workspace/iOS-Demo/Pods/HMDGWPASan/ios-arch-iphone -I /Users/foobar/workspace/iOS-Demo/Pods/DemoSQLCipher/ios -I /Users/foobar/workspace/iOS-Demo/Pods/RustSDK/libraries -I /Users/foobar/workspace/iOS-Demo/Pods/SlardarMalloc/ios-arch-iphone -I /Users/foobar/workspace/iOS-Demo/Pods/TTNetworkManager/Pod/Classes/TTNetworkBase/Chromium/libs -I /Users/foobar/workspace/iOS-Demo/Pods/boringssl -I /Users/foobar/workspace/iOS-Demo/Pods/protobuf_lite -F /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Products/Debug-iphonesimulator/DemoSetting -F /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Products/Debug-iphonesimulator/DemoSetting-Frameworks -F /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Products/Debug-iphonesimulator/DemoSetting-SystemFrameworks -F "/Users/foobar/workspace/iOS-Demo/Pods/Target Support Files/DemoSetting/ios-Frameworks" -F "/Users/foobar/workspace/iOS-Demo/Pods/Target Support Files/DemoSetting/ios-SystemFrameworks" -no-color-diagnostics -enable-testing -g -import-underlying-module -module-cache-path /Users/foobar/Library/Developer/Xcode/DerivedData/ModuleCache.noindex -swift-version 5 -enforce-exclusivity=checked -Onone -D DEBUG -D ALPHA -D USE_BASE_IMP -D USE_DYNAMIC_RESOURCE -D COCOAPODS -module-interface-preserve-types-as-written -external-plugin-path /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins#/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/local/lib/swift/host/plugins#/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-plugin-server -serialize-debugging-options -const-gather-protocols-file /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/Objects-normal/arm64/DemoSetting_const_extract_protocols.json -enable-bare-slash-regex -empty-abi-descriptor -validate-clang-modules-once -clang-build-session-file /Users/foobar/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/foobar/workspace/iOS-Demo/Pods -resource-dir /Users/foobar/Library/Developer/Toolchains/swift-release-5.9.xctoolchain/usr/lib/swift -enable-anonymous-context-mangled-names -Xcc -Wno-nullability-completeness -Xcc -Wno-nonnull -Xcc -Wno-incomplete-umbrella -Xcc -I/Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/DemoSetting-generated-files.hmap -Xcc -I/Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/DemoSetting-own-target-headers.hmap -Xcc -I/Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/DemoSetting-all-non-framework-target-headers.hmap -Xcc -ivfsoverlay -Xcc /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/all-product-headers.yaml -Xcc -iquote -Xcc /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/DemoSetting-project-headers.hmap -Xcc -I/Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Products/Debug-iphonesimulator/DemoSetting/include -Xcc -I/Users/foobar/workspace/iOS-Demo/Pods/Headers/Public -Xcc -I/Users/foobar/workspace/iOS-Demo/Pods/Headers/Public/boringssl -Xcc -I/Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/DerivedSources-normal/arm64 -Xcc -I/Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/DerivedSources/arm64 -Xcc -I/Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/DerivedSources -Xcc -DPOD_CONFIGURATION_DEBUG=1 -Xcc -DDEBUG=1 -Xcc -DCOCOAPODS=1 -Xcc -DALPHA=1 -module-name DemoSetting -frontend-parseable-output -disable-clang-spi -target-sdk-version 17.0 -target-sdk-name iphonesimulator17.0 -external-plugin-path /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator17.0.sdk/usr/lib/swift/host/plugins#/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator17.0.sdk/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator17.0.sdk/usr/local/lib/swift/host/plugins#/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator17.0.sdk/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/lib/swift/host/plugins#/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/local/lib/swift/host/plugins#/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/swift-plugin-server -plugin-path /Users/foobar/Library/Developer/Toolchains/swift-release-5.9.xctoolchain/usr/lib/swift/host/plugins -plugin-path /Users/foobar/Library/Developer/Toolchains/swift-release-5.9.xctoolchain/usr/local/lib/swift/host/plugins -o /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/Objects-normal/arm64/FeatureGatingDebugView.o -o /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/Objects-normal/arm64/FeatureGatingManager.o -o /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/Objects-normal/arm64/FeatureGatingPropertyWrapper.o -o /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Build/Intermediates.noindex/DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/Objects-normal/arm64/FeatureGatingService.o -index-unit-output-path /DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/Objects-normal/arm64/FeatureGatingDebugView.o -index-unit-output-path /DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/Objects-normal/arm64/FeatureGatingManager.o -index-unit-output-path /DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/Objects-normal/arm64/FeatureGatingPropertyWrapper.o -index-unit-output-path /DemoSetting.build/Debug-iphonesimulator/DemoSetting.build/Objects-normal/arm64/FeatureGatingService.o -index-store-path /Users/foobar/Library/Developer/Xcode/DerivedData/Demo-canxcuwkjsxubbcjsxozfrsyljov/Index.noindex/DataStore -index-system-modules
1.	Apple Swift version 5.9-dev
2.	Compiling with the current language version
3.	While evaluating request TypeCheckSourceFileRequest(source_file "/Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Debug/FeatureGatingDebugView.swift")
4.	While evaluating request TypeCheckFunctionBodyRequest(DemoSetting.(file).FeatureGatingDebugView._@/Users/foobar/workspace/iOS-Demo/Modules/Infra/Libs/DemoSetting/src/Core/Debug/FeatureGatingDebugView.swift:72:25)
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0  swift-frontend           0x00000001047d6738 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 56
1  swift-frontend           0x00000001047d5ab4 llvm::sys::RunSignalHandlers() + 112
2  swift-frontend           0x00000001047d6d78 SignalHandler(int) + 304
3  libsystem_platform.dylib 0x0000000199f6ea24 _sigtramp + 56
4  libsystem_pthread.dylib  0x0000000199f3fc28 pthread_kill + 288
5  libsystem_c.dylib        0x0000000199e4dae8 abort + 180
6  swift-frontend           0x00000001047364b8 llvm::report_bad_alloc_error(char const*, bool) + 140
7  swift-frontend           0x000000010477b474 report_size_overflow(unsigned long, unsigned long) + 0
8  swift-frontend           0x00000001047c2e50 llvm::raw_svector_ostream::write_impl(char const*, unsigned long) + 60
9  swift-frontend           0x00000001047c1b64 llvm::raw_ostream::write(char const*, unsigned long) + 596
10 swift-frontend           0x00000001015ffc5c swift::DiagnosticEngine::formatDiagnosticText(llvm::raw_ostream&, llvm::StringRef, llvm::ArrayRef<swift::DiagnosticArgument>, swift::DiagnosticFormatOptions) + 3756
11 swift-frontend           0x00000001015ff51c swift::DiagnosticEngine::formatDiagnosticText(llvm::raw_ostream&, llvm::StringRef, llvm::ArrayRef<swift::DiagnosticArgument>, swift::DiagnosticFormatOptions) + 1900
12 swift-frontend           0x00000001002dfe80 swift::AccumulatingFileDiagnosticConsumer::addDiagnostic(swift::SourceManager&, swift::DiagnosticInfo const&) + 904
13 swift-frontend           0x00000001002dfac0 swift::AccumulatingFileDiagnosticConsumer::handleDiagnostic(swift::SourceManager&, swift::DiagnosticInfo const&) + 32
14 swift-frontend           0x0000000101601ba4 swift::DiagnosticEngine::emitDiagnostic(swift::Diagnostic const&) + 1092
15 swift-frontend           0x000000010160170c swift::DiagnosticEngine::handleDiagnostic(swift::Diagnostic&&) + 176
16 swift-frontend           0x00000001015feb9c swift::InFlightDiagnostic::flush() + 48
17 swift-frontend           0x0000000101189408 swift::TypeChecker::diagnoseIfDeprecated(swift::SourceRange, swift::ExportContext const&, swift::ValueDecl const*, swift::Expr const*) + 516
18 swift-frontend           0x000000010118d1b0 swift::diagnoseDeclAvailability(swift::ValueDecl const*, swift::SourceRange, swift::Expr const*, swift::ExportContext const&, swift::OptionSet<swift::DeclAvailabilityFlag, unsigned char>) + 1252
19 swift-frontend           0x00000001011933ec (anonymous namespace)::ExprAvailabilityWalker::diagnoseDeclRefAvailability(swift::ConcreteDeclRef, swift::SourceRange, swift::Expr const*, swift::OptionSet<swift::DeclAvailabilityFlag, unsigned char>) const + 2044
20 swift-frontend           0x0000000101192010 (anonymous namespace)::ExprAvailabilityWalker::walkToExprPre(swift::Expr*) + 284
21 swift-frontend           0x00000001014cf9d8 (anonymous namespace)::Traversal::visitSelfApplyExpr(swift::SelfApplyExpr*) + 212
22 swift-frontend           0x00000001014ce9d0 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Expr*) + 12824
23 swift-frontend           0x00000001014d359c (anonymous namespace)::Traversal::visit(swift::ArgumentList*) + 160
24 swift-frontend           0x00000001014ceb58 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Expr*) + 13216
25 swift-frontend           0x00000001014caf74 swift::Expr::walk(swift::ASTWalker&) + 112
26 swift-frontend           0x000000010118d460 swift::diagnoseExprAvailability(swift::Expr const*, swift::DeclContext*) + 160
27 swift-frontend           0x0000000101193668 (anonymous namespace)::StmtAvailabilityWalker::walkToExprPre(swift::Expr*) + 40
28 swift-frontend           0x00000001014d250c swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Decl*) + 2868
29 swift-frontend           0x00000001014cb594 (anonymous namespace)::Traversal::doIt(swift::Decl*) + 172
30 swift-frontend           0x00000001014d02a0 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Stmt*) + 1728
31 swift-frontend           0x00000001014cb028 swift::Stmt::walk(swift::ASTWalker&) + 112
32 swift-frontend           0x0000000101192b78 (anonymous namespace)::ExprAvailabilityWalker::walkToStmtPre(swift::Stmt*) + 76
33 swift-frontend           0x00000001014cafe8 swift::Stmt::walk(swift::ASTWalker&) + 48
34 swift-frontend           0x0000000101192a0c (anonymous namespace)::ExprAvailabilityWalker::walkToExprPre(swift::Expr*) + 2840
35 swift-frontend           0x00000001014ccaa0 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Expr*) + 4840
36 swift-frontend           0x00000001014caf74 swift::Expr::walk(swift::ASTWalker&) + 112
37 swift-frontend           0x000000010118d460 swift::diagnoseExprAvailability(swift::Expr const*, swift::DeclContext*) + 160
38 swift-frontend           0x0000000101193668 (anonymous namespace)::StmtAvailabilityWalker::walkToExprPre(swift::Expr*) + 40
39 swift-frontend           0x00000001014cfc64 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Stmt*) + 132
40 swift-frontend           0x00000001014d03cc swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Stmt*) + 2028
41 swift-frontend           0x00000001014cb028 swift::Stmt::walk(swift::ASTWalker&) + 112
42 swift-frontend           0x0000000101192b78 (anonymous namespace)::ExprAvailabilityWalker::walkToStmtPre(swift::Stmt*) + 76
43 swift-frontend           0x00000001014cafe8 swift::Stmt::walk(swift::ASTWalker&) + 48
44 swift-frontend           0x0000000101192a0c (anonymous namespace)::ExprAvailabilityWalker::walkToExprPre(swift::Expr*) + 2840
45 swift-frontend           0x00000001014d356c (anonymous namespace)::Traversal::visit(swift::ArgumentList*) + 112
46 swift-frontend           0x00000001014ceb58 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Expr*) + 13216
47 swift-frontend           0x00000001014d359c (anonymous namespace)::Traversal::visit(swift::ArgumentList*) + 160
48 swift-frontend           0x00000001014ceb58 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Expr*) + 13216
49 swift-frontend           0x00000001014caf74 swift::Expr::walk(swift::ASTWalker&) + 112
50 swift-frontend           0x000000010118d460 swift::diagnoseExprAvailability(swift::Expr const*, swift::DeclContext*) + 160
51 swift-frontend           0x0000000101193668 (anonymous namespace)::StmtAvailabilityWalker::walkToExprPre(swift::Expr*) + 40
52 swift-frontend           0x00000001014d250c swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Decl*) + 2868
53 swift-frontend           0x00000001014cb594 (anonymous namespace)::Traversal::doIt(swift::Decl*) + 172
54 swift-frontend           0x00000001014d02a0 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Stmt*) + 1728
55 swift-frontend           0x00000001014cb028 swift::Stmt::walk(swift::ASTWalker&) + 112
56 swift-frontend           0x0000000101192b78 (anonymous namespace)::ExprAvailabilityWalker::walkToStmtPre(swift::Stmt*) + 76
57 swift-frontend           0x00000001014cafe8 swift::Stmt::walk(swift::ASTWalker&) + 48
58 swift-frontend           0x0000000101192a0c (anonymous namespace)::ExprAvailabilityWalker::walkToExprPre(swift::Expr*) + 2840
59 swift-frontend           0x00000001014d356c (anonymous namespace)::Traversal::visit(swift::ArgumentList*) + 112
60 swift-frontend           0x00000001014ceb58 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Expr*) + 13216
61 swift-frontend           0x00000001014cf980 (anonymous namespace)::Traversal::visitSelfApplyExpr(swift::SelfApplyExpr*) + 124
62 swift-frontend           0x00000001014ce9d0 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Expr*) + 12824
63 swift-frontend           0x00000001014cf980 (anonymous namespace)::Traversal::visitSelfApplyExpr(swift::SelfApplyExpr*) + 124
64 swift-frontend           0x00000001014ce9d0 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Expr*) + 12824
65 swift-frontend           0x00000001014cf980 (anonymous namespace)::Traversal::visitSelfApplyExpr(swift::SelfApplyExpr*) + 124
66 swift-frontend           0x00000001014ce9d0 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Expr*) + 12824
67 swift-frontend           0x00000001014d359c (anonymous namespace)::Traversal::visit(swift::ArgumentList*) + 160
68 swift-frontend           0x00000001014ceb58 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Expr*) + 13216
69 swift-frontend           0x00000001014caf74 swift::Expr::walk(swift::ASTWalker&) + 112
70 swift-frontend           0x000000010118d460 swift::diagnoseExprAvailability(swift::Expr const*, swift::DeclContext*) + 160
71 swift-frontend           0x00000001011355e0 swift::performSyntacticExprDiagnostics(swift::Expr const*, swift::DeclContext const*, bool, bool) + 1384
72 swift-frontend           0x00000001011bbbc0 (anonymous namespace)::FunctionSyntacticDiagnosticWalker::walkToExprPre(swift::Expr*) + 64
73 swift-frontend           0x00000001014d250c swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Decl*) + 2868
74 swift-frontend           0x00000001014cb594 (anonymous namespace)::Traversal::doIt(swift::Decl*) + 172
75 swift-frontend           0x00000001014d02a0 swift::ASTVisitor<(anonymous namespace)::Traversal, swift::Expr*, swift::Stmt*, bool, swift::Pattern*, bool, void>::visit(swift::Stmt*) + 1728
76 swift-frontend           0x00000001014cb028 swift::Stmt::walk(swift::ASTWalker&) + 112
77 swift-frontend           0x00000001011b5344 swift::constraints::performSyntacticDiagnosticsForTarget(swift::constraints::SyntacticElementTarget const&, bool, bool) + 232
78 swift-frontend           0x0000000100faaac4 swift::TypeChecker::applyResultBuilderBodyTransform(swift::FuncDecl*, swift::Type, bool) + 2136
79 swift-frontend           0x000000010127dfdc swift::TypeCheckFunctionBodyRequest::evaluate(swift::Evaluator&, swift::AbstractFunctionDecl*) const + 580
80 swift-frontend           0x00000001015d415c llvm::Expected<swift::TypeCheckFunctionBodyRequest::OutputType> swift::Evaluator::getResultUncached<swift::TypeCheckFunctionBodyRequest>(swift::TypeCheckFunctionBodyRequest const&) + 376
81 swift-frontend           0x00000001015336ac swift::TypeCheckFunctionBodyRequest::OutputType swift::evaluateOrDefault<swift::TypeCheckFunctionBodyRequest>(swift::Evaluator&, swift::TypeCheckFunctionBodyRequest, swift::TypeCheckFunctionBodyRequest::OutputType) + 148
82 swift-frontend           0x00000001012b2f2c swift::TypeCheckSourceFileRequest::evaluate(swift::Evaluator&, swift::SourceFile*) const + 284
83 swift-frontend           0x00000001012b4d78 llvm::Expected<swift::TypeCheckSourceFileRequest::OutputType> swift::Evaluator::getResultUncached<swift::TypeCheckSourceFileRequest>(swift::TypeCheckSourceFileRequest const&) + 372
84 swift-frontend           0x00000001012b4b58 llvm::Expected<swift::TypeCheckSourceFileRequest::OutputType> swift::Evaluator::getResultCached<swift::TypeCheckSourceFileRequest, (void*)0>(swift::TypeCheckSourceFileRequest const&) + 84
85 swift-frontend           0x00000001012b2d88 swift::performTypeChecking(swift::SourceFile&) + 64
86 swift-frontend           0x0000000100439184 swift::CompilerInstance::performSema() + 108
87 swift-frontend           0x00000001002d97b8 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) + 2672
88 swift-frontend           0x000000010015b170 swift::mainEntry(int, char const**) + 3328
89 dyld                     0x0000000199be7f28 start + 2236
Command SwiftCompile failed with a nonzero exit code
@dreampiggy dreampiggy added bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. triage needed This issue needs more specific labels labels Aug 10, 2023
@dreampiggy
Copy link
Author

dreampiggy commented Aug 10, 2023

Compile source file:

FeatureGatingDebugView.swift.zip

@dreampiggy
Copy link
Author

dreampiggy commented Aug 10, 2023

When using Swift toolchain from Xcode 15.0 | Beta 6 | 15A5219j, not the Self built toolchain, this file can be compiled successfuly without crash

The strange is that, Apple's close-sourced Swift does not generate any diagnostics, but when using the Self-built xctoolchain, it try to generate some warning and crash.🤔️

@dreampiggy
Copy link
Author

dreampiggy commented Aug 10, 2023

Seems this will generate a warning for the API call to .autocapitalization(.none)

This mark deprecated on iOS 16.1: https://developer.apple.com/documentation/swiftui/view/autocapitalization(_:)/

But the Class marked availability as iOS 16.0.

Is this warning caused by this SDK declaration ? But why Apple's close-sourced Swift does not trigger any warning ?

    @available(iOS, introduced: 13.0, deprecated: 100000.0, message: "use textInputAutocapitalization(_:)")
    @available(macOS, unavailable)
    @available(tvOS, introduced: 13.0, deprecated: 100000.0, message: "use textInputAutocapitalization(_:)")
    @available(watchOS, unavailable)
    @available(xrOS, introduced: 1.0, deprecated: 100000.0, message: "use textInputAutocapitalization(_:)")
    public func autocapitalization(_ style: UITextAutocapitalizationType) -> some View

@dreampiggy dreampiggy changed the title Swift compiler 5.9 (on release/5.9 branch) crash because of "out of memory" during writing diagnostics Swift compiler 5.9 (built on release/5.9 branch) crash because of "out of memory" during writing diagnostics Aug 10, 2023
@dreampiggy
Copy link
Author

dreampiggy commented Aug 10, 2023

Minimum reproduce Demo:

TestSwiftUIToolchainCrash.zip

@IamYJLee
Copy link

@dreampiggy After building the "swift 5.9" source in release mode, I get a similar error when building the code below.

  • Xcode version : 15.0
import CloudKit
public class sample {
	private static let recordType = "sample"
	private func test() {
		 let sub = CKQuerySubscription(recordType: Self.recordType,
                                     predicate: NSPredicate(value: true),
                                     options: .firesOnRecordUpdate)
	} 
}

CKQuerySubscription init function is deprecated on iOS 10.0.
(ref : https://developer.apple.com/documentation/cloudkit/ckquerysubscription/4134972-init)
If you change the deprecated code as shown below, no error will occur.

import CloudKit
public class sample {
	private static let recordType = "sample"
	private func test() {
		 let sub = CKQuerySubscription(recordType: Self.recordType,
                                     predicate: NSPredicate(value: true), 
                                     subscriptionID: "sample", 
                                     options: .firesOnRecordUpdate)
	} 
} 
}

@dreampiggy
Copy link
Author

This crash is related to that #68034 because of non exists platform visionOS

@IamYJLee
Copy link

This crash is related to that #68034 because of non exists platform visionOS

Yes, "memory error" occurs if this is a release build, or "bad PlatformKind” if this is a debug build.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. triage needed This issue needs more specific labels
Projects
None yet
2 participants