Skip to content

[C++ interop] Deserialization failure — template class not found #82258

Open
@AnthonyLatsis

Description

@AnthonyLatsis

Description

Swift module b calls function from Swift module a, and that function’s implementation uses the imported specialization. Happens only if both Swift modules are compiled with -wmo -O -cross-module-optimization.

Reproduction

// RUN: %empty-directory(%t)
// RUN: %empty-directory(%t/include)
// RUN: split-file %s %t
//
// RUN: %target-swift-frontend -c -o %t/include/a.o -emit-module -module-name a -emit-module-path %t/include/a.swiftmodule %t/a.swift -cxx-interoperability-mode=default -wmo -O -cross-module-optimization -I %t/include
// RUN: %target-swift-frontend -c -o %t/include/b.o -emit-module -module-name b -emit-module-path %t/include/b.swiftmodule %t/b.swift -cxx-interoperability-mode=default -wmo -O -cross-module-optimization -I %t/include

//--- include/module.modulemap
module cxx {
  header "header.h"
  export *
}

//--- include/header.h
template <typename T> struct Optional {
  T value;
};
using OptionalBool = Optional<bool>;
inline OptionalBool getOptBool() {
  return {true};
}

//--- a.swift
import cxx
public func bar() -> Bool { getOptBool().value }

//--- b.swift
import a
public func baz() -> Bool { bar() }

Stack dump

/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/include/a.swiftmodule:1:1: error: reference to type 'c:@S@Optional>#b' broken by a context change; 'c:@S@Optional>#b' is not found, it was expected to be in 'cxx'
1 | cxx.c:@S@Optional>#b
  | |- error: reference to type 'c:@S@Optional>#b' broken by a context change; 'c:@S@Optional>#b' is not found, it was expected to be in 'cxx'
  | |- note: the type was expected to be found in module 'cxx' at '/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/include/module.modulemap'
  | `- note: declarations in the clang module 'cxx' may be hidden by clang preprocessor macros
Abort: function fatal at ModuleFileSharedCore.cpp:712
*** DESERIALIZATION FAILURE ***
*** If any module named here was modified in the SDK, please delete the ***
*** new swiftmodule files from the SDK and keep only swiftinterfaces.   ***
module 'a', builder version '6.2(4.1.50)/Swift version 6.2-dev (LLVM 8bcf2671393ccfb, Swift 00aa22f7b26abea)', built from source against SDK 24E241, non-resilient, loaded from '/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/include/a.swiftmodule'

Please submit a bug report (https://swift.org/contributing/#reporting-bugs) and include the crash backtrace.
Stack dump:
0.	Program arguments: /Users/alatsis/desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend -target arm64-apple-macosx13.0 -module-cache-path /Users/alatsis/desktop/swiftlang/build/swift/debug/swift-macosx-arm64/swift-test-results/arm64-apple-macosx13.0/clang-module-cache -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -swift-version 4 -define-availability "SwiftStdlib 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999" -define-availability "StdlibDeploymentTarget 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999" -define-availability "SwiftStdlib 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2" -define-availability "StdlibDeploymentTarget 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2" -define-availability "SwiftStdlib 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0" -define-availability "StdlibDeploymentTarget 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0" -define-availability "SwiftStdlib 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4" -define-availability "StdlibDeploymentTarget 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4" -define-availability "SwiftStdlib 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0" -define-availability "StdlibDeploymentTarget 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0" -define-availability "SwiftStdlib 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5" -define-availability "StdlibDeploymentTarget 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5" -define-availability "SwiftStdlib 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0" -define-availability "StdlibDeploymentTarget 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0" -define-availability "SwiftStdlib 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4" -define-availability "StdlibDeploymentTarget 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4" -define-availability "SwiftStdlib 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0" -define-availability "StdlibDeploymentTarget 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0" -define-availability "SwiftStdlib 5.8:macOS 13.3, iOS 16.4, watchOS 9.4, tvOS 16.4" -define-availability "StdlibDeploymentTarget 5.8:macOS 13.3, iOS 16.4, watchOS 9.4, tvOS 16.4" -define-availability "SwiftStdlib 5.9:macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0" -define-availability "StdlibDeploymentTarget 5.9:macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0" -define-availability "SwiftStdlib 5.10:macOS 14.4, iOS 17.4, watchOS 10.4, tvOS 17.4, visionOS 1.1" -define-availability "StdlibDeploymentTarget 5.10:macOS 14.4, iOS 17.4, watchOS 10.4, tvOS 17.4, visionOS 1.1" -define-availability "SwiftStdlib 6.0:macOS 15.0, iOS 18.0, watchOS 11.0, tvOS 18.0, visionOS 2.0" -define-availability "StdlibDeploymentTarget 6.0:macOS 15.0, iOS 18.0, watchOS 11.0, tvOS 18.0, visionOS 2.0" -define-availability "SwiftStdlib 6.1:macOS 15.4, iOS 18.4, watchOS 11.4, tvOS 18.4, visionOS 2.4" -define-availability "StdlibDeploymentTarget 6.1:macOS 15.4, iOS 18.4, watchOS 11.4, tvOS 18.4, visionOS 2.4" -define-availability "SwiftStdlib 6.2:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999, visionOS 9999" -define-availability "StdlibDeploymentTarget 6.2:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999, visionOS 9999" -define-availability "SwiftStdlib 6.3:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999, visionOS 9999" -define-availability "StdlibDeploymentTarget 6.3:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999, visionOS 9999" -define-availability "SwiftCompatibilitySpan 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2, visionOS 1.1" -define-availability "SwiftCompatibilitySpan 6.2:macOS 15.0, iOS 18.0, watchOS 11.0, tvOS 18.0, visionOS 2.0" -typo-correction-limit 10 -c -o /Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/include/b.o -emit-module -module-name b -emit-module-path /Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/include/b.swiftmodule /Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/b.swift -cxx-interoperability-mode=default -wmo -O -cross-module-optimization -I /Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/include
1.	Swift version 6.2-dev (LLVM 8bcf2671393ccfb, Swift 00aa22f7b26abea)
2.	Compiling with effective version 4.1.50
3.	While evaluating request ExecuteSILPipelineRequest(Run pipelines { PrepareOptimizationPasses, EarlyModulePasses, HighLevel,Function+EarlyLoopOpt, HighLevel,Module+StackPromote, MidLevel,Function, ClosureSpecialize, LowLevel,Function, LateLoopOpt, SIL Debug Info Generator } on SIL for b)
4.	While running pass #19 SILModuleTransform "PerformanceSILLinker".
5.	While deserializing SIL function "$s1a3barSbyF"
6.	Abort: function fatal at ModuleFileSharedCore.cpp:712
| 	*** DESERIALIZATION FAILURE ***
| 	*** If any module named here was modified in the SDK, please delete the ***
| 	*** new swiftmodule files from the SDK and keep only swiftinterfaces.   ***
| 	module 'a', builder version '6.2(4.1.50)/Swift version 6.2-dev (LLVM 8bcf2671393ccfb, Swift 6bb85839524c2a1)', built from source against SDK 24E241, non-resilient, loaded from '/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/include/a.swiftmodule'
 #0 0x0000000109d0e808 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x105bee808)
 #1 0x0000000109d0cd14 llvm::sys::RunSignalHandlers() (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x105becd14)
 #2 0x0000000109d0ee60 SignalHandler(int, __siginfo*, void*) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x105beee60)
 #3 0x000000019bf7f624 (/usr/lib/system/libsystem_platform.dylib+0x1804ab624)
 #4 0x000000019bf4588c (/usr/lib/system/libsystem_pthread.dylib+0x18047188c)
 #5 0x000000019be4ec60 (/usr/lib/system/libsystem_c.dylib+0x18037ac60)
 #6 0x0000000105c7ca9c CONDITIONAL_ASSERT_enabled() (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x101b5ca9c)
 #7 0x0000000105c7cb64 _ABORT(char const*, int, char const*, llvm::StringRef) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x101b5cb64)
 #8 0x0000000104be8b04 swift::ModuleFileSharedCore::outputDiagnosticInfo(llvm::raw_ostream&) const (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100ac8b04)
 #9 0x0000000104b7eba0 swift::ModuleFile::diagnoseFatal(llvm::Error) const (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100a5eba0)
#10 0x0000000104b81f2c swift::ModuleFile::readSILLayout(llvm::BitstreamCursor&) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100a61f2c)
#11 0x0000000104bca8b4 swift::SILDeserializer::readSILInstruction(swift::SILFunction*, swift::SILBuilder&, unsigned int, llvm::SmallVectorImpl<unsigned long long>&) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100aaa8b4)
#12 0x0000000104bc252c swift::SILDeserializer::readSILFunctionChecked(llvm::PointerEmbeddedInt<unsigned int, 31>, swift::SILFunction*, llvm::StringRef, bool, bool, bool) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100aa252c)
#13 0x0000000104bd4158 swift::SILDeserializer::lookupSILFunction(swift::SILFunction*, bool) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100ab4158)
#14 0x0000000104c654fc swift::SerializedSILLoader::lookupSILFunction(swift::SILFunction*, bool) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100b454fc)
#15 0x0000000104c9edf0 swift::SILLinkerVisitor::deserializeAndPushToWorklist(swift::SILFunction*) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100b7edf0)
#16 0x0000000104c9f620 swift::SILLinkerVisitor::process() (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100b7f620)
#17 0x0000000104c9f410 swift::SILLinkerVisitor::processFunction(swift::SILFunction*) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100b7f410)
#18 0x0000000104d224bc swift::SILModule::linkFunction(swift::SILFunction*, swift::SILModule::LinkingMode) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100c024bc)
#19 0x00000001051fb710 (anonymous namespace)::SILLinker::run() (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x1010db710)
#20 0x00000001050fc92c swift::SILPassManager::runModulePass(unsigned int) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100fdc92c)
#21 0x00000001050ff248 swift::SILPassManager::execute() (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100fdf248)
#22 0x00000001050f9430 swift::SILPassManager::executePassPipelinePlan(swift::SILPassPipelinePlan const&) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100fd9430)
#23 0x00000001050f93cc swift::ExecuteSILPipelineRequest::evaluate(swift::Evaluator&, swift::SILPipelineExecutionDescriptor) const (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100fd93cc)
#24 0x0000000105121a04 swift::SimpleRequest<swift::ExecuteSILPipelineRequest, std::__1::tuple<> (swift::SILPipelineExecutionDescriptor), (swift::RequestFlags)1>::evaluateRequest(swift::ExecuteSILPipelineRequest const&, swift::Evaluator&) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x101001a04)
#25 0x00000001051058d8 swift::ExecuteSILPipelineRequest::OutputType swift::Evaluator::getResultUncached<swift::ExecuteSILPipelineRequest, swift::ExecuteSILPipelineRequest::OutputType swift::evaluateOrFatal<swift::ExecuteSILPipelineRequest>(swift::Evaluator&, swift::ExecuteSILPipelineRequest)::'lambda'()>(swift::ExecuteSILPipelineRequest const&, swift::ExecuteSILPipelineRequest::OutputType swift::evaluateOrFatal<swift::ExecuteSILPipelineRequest>(swift::Evaluator&, swift::ExecuteSILPipelineRequest)::'lambda'()) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100fe58d8)
#26 0x00000001050f9618 swift::executePassPipelinePlan(swift::SILModule*, swift::SILPassPipelinePlan const&, bool, swift::irgen::IRGenModule*) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100fd9618)
#27 0x00000001051073a4 swift::runSILOptimizationPasses(swift::SILModule&) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100fe73a4)
#28 0x0000000104652fb0 swift::CompilerInstance::performSILProcessing(swift::SILModule*) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100532fb0)
#29 0x00000001043b65fc performCompileStepsPostSILGen(swift::CompilerInstance&, std::__1::unique_ptr<swift::SILModule, std::__1::default_delete<swift::SILModule>>, llvm::PointerUnion<swift::ModuleDecl*, swift::SourceFile*>, swift::PrimarySpecificPaths const&, int&, swift::FrontendObserver*) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x1002965fc)
#30 0x00000001043b6014 swift::performCompileStepsPostSema(swift::CompilerInstance&, int&, swift::FrontendObserver*) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100296014)
#31 0x00000001043c1ea4 withSemanticAnalysis(swift::CompilerInstance&, swift::FrontendObserver*, llvm::function_ref<bool (swift::CompilerInstance&)>, bool) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x1002a1ea4)
#32 0x00000001043b79d0 performCompile(swift::CompilerInstance&, int&, swift::FrontendObserver*) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x1002979d0)
#33 0x00000001043b724c swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x10029724c)
#34 0x0000000104157f00 swift::mainEntry(int, char const**) (/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend+0x100037f00)
#35 0x000000019bba6b4c 
/Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.script: line 5:  5049 Abort trap: 6           /Users/alatsis/desktop/swiftlang/build/swift/debug/swift-macosx-arm64/bin/swift-frontend -target arm64-apple-macosx13.0 -module-cache-path /Users/alatsis/desktop/swiftlang/build/swift/debug/swift-macosx-arm64/swift-test-results/arm64-apple-macosx13.0/clang-module-cache -sdk '/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk' -swift-version 4 -define-availability 'SwiftStdlib 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999' -define-availability 'StdlibDeploymentTarget 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999' -define-availability 'SwiftStdlib 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2' -define-availability 'StdlibDeploymentTarget 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2' -define-availability 'SwiftStdlib 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0' -define-availability 'StdlibDeploymentTarget 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0' -define-availability 'SwiftStdlib 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4' -define-availability 'StdlibDeploymentTarget 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4' -define-availability 'SwiftStdlib 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0' -define-availability 'StdlibDeploymentTarget 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0' -define-availability 'SwiftStdlib 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5' -define-availability 'StdlibDeploymentTarget 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5' -define-availability 'SwiftStdlib 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0' -define-availability 'StdlibDeploymentTarget 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0' -define-availability 'SwiftStdlib 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4' -define-availability 'StdlibDeploymentTarget 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4' -define-availability 'SwiftStdlib 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0' -define-availability 'StdlibDeploymentTarget 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0' -define-availability 'SwiftStdlib 5.8:macOS 13.3, iOS 16.4, watchOS 9.4, tvOS 16.4' -define-availability 'StdlibDeploymentTarget 5.8:macOS 13.3, iOS 16.4, watchOS 9.4, tvOS 16.4' -define-availability 'SwiftStdlib 5.9:macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0' -define-availability 'StdlibDeploymentTarget 5.9:macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0' -define-availability 'SwiftStdlib 5.10:macOS 14.4, iOS 17.4, watchOS 10.4, tvOS 17.4, visionOS 1.1' -define-availability 'StdlibDeploymentTarget 5.10:macOS 14.4, iOS 17.4, watchOS 10.4, tvOS 17.4, visionOS 1.1' -define-availability 'SwiftStdlib 6.0:macOS 15.0, iOS 18.0, watchOS 11.0, tvOS 18.0, visionOS 2.0' -define-availability 'StdlibDeploymentTarget 6.0:macOS 15.0, iOS 18.0, watchOS 11.0, tvOS 18.0, visionOS 2.0' -define-availability 'SwiftStdlib 6.1:macOS 15.4, iOS 18.4, watchOS 11.4, tvOS 18.4, visionOS 2.4' -define-availability 'StdlibDeploymentTarget 6.1:macOS 15.4, iOS 18.4, watchOS 11.4, tvOS 18.4, visionOS 2.4' -define-availability 'SwiftStdlib 6.2:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999, visionOS 9999' -define-availability 'StdlibDeploymentTarget 6.2:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999, visionOS 9999' -define-availability 'SwiftStdlib 6.3:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999, visionOS 9999' -define-availability 'StdlibDeploymentTarget 6.3:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999, visionOS 9999' -define-availability 'SwiftCompatibilitySpan 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2, visionOS 1.1' -define-availability 'SwiftCompatibilitySpan 6.2:macOS 15.0, iOS 18.0, watchOS 11.0, tvOS 18.0, visionOS 2.0' -typo-correction-limit 10 -c -o /Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/include/b.o -emit-module -module-name b -emit-module-path /Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/include/b.swiftmodule /Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/b.swift -cxx-interoperability-mode=default -wmo -O -cross-module-optimization -I /Users/alatsis/Desktop/swiftlang/build/swift/debug/swift-macosx-arm64/test-macosx-arm64/Interop/Cxx/modules/Output/bug.swift.tmp/include

Expected behavior

Success.

Environment

Swift version 6.2-dev (LLVM 8bcf2671393ccfb, Swift 00aa22f)

Additional information

No response

Metadata

Metadata

Assignees

Labels

SILOptimizerArea → compiler: SIL optimization passesc++ interopFeature: Interoperability with C++c++ to swiftFeature → c++ interop: c++ to swiftcompilerThe Swift compiler itselfcrashBug: A crash, i.e., an abnormal termination of softwaremultiple modulesFlag: An issue whose reproduction requires multiple modulesswift 6.2

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions