Skip to content

Commit a2786ee

Browse files
authored
Merge pull request #1739 from swiftlang/egorzhdan/cxx-interop-compat-version
[cxx-interop] Handle different interop compat versions
2 parents e3c9b9c + 5b223e2 commit a2786ee

File tree

4 files changed

+5
-5
lines changed

4 files changed

+5
-5
lines changed

Sources/SwiftDriver/Jobs/DarwinToolchain+LinkerSupport.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,7 @@ extension DarwinToolchain {
243243
// On Darwin, we only support libc++.
244244
var cxxCompatEnabled = parsedOptions.hasArgument(.enableExperimentalCxxInterop)
245245
if let cxxInteropMode = parsedOptions.getLastArgument(.cxxInteroperabilityMode) {
246-
if cxxInteropMode.asSingle == "swift-5.9" {
246+
if cxxInteropMode.asSingle != "off" {
247247
cxxCompatEnabled = true
248248
}
249249
}

Sources/SwiftDriver/Jobs/GenericUnixToolchain+LinkerSupport.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ extension GenericUnixToolchain {
7878
// just using `clang` and avoid a dependency on the C++ runtime.
7979
var cxxCompatEnabled = parsedOptions.hasArgument(.enableExperimentalCxxInterop)
8080
if let cxxInteropMode = parsedOptions.getLastArgument(.cxxInteroperabilityMode) {
81-
if cxxInteropMode.asSingle == "swift-5.9" {
81+
if cxxInteropMode.asSingle != "off" {
8282
cxxCompatEnabled = true
8383
}
8484
}

Sources/SwiftDriver/Jobs/WindowsToolchain+LinkerSupport.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ extension WindowsToolchain {
8787

8888
var cxxCompatEnabled = parsedOptions.hasArgument(.enableExperimentalCxxInterop)
8989
if let cxxInteropMode = parsedOptions.getLastArgument(.cxxInteroperabilityMode) {
90-
if cxxInteropMode.asSingle == "swift-5.9" {
90+
if cxxInteropMode.asSingle != "off" {
9191
cxxCompatEnabled = true
9292
}
9393
}

Tests/SwiftDriverTests/SwiftDriverTests.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7065,7 +7065,7 @@ final class SwiftDriverTests: XCTestCase {
70657065
env["SWIFT_DRIVER_CLANGXX_EXEC"] = swiftClangxx.pathString
70667066

70677067
var driver = try Driver(
7068-
args: ["swiftc", "-cxx-interoperability-mode=swift-5.9", "-emit-library",
7068+
args: ["swiftc", "-cxx-interoperability-mode=swift-6", "-emit-library",
70697069
"foo.swift", "bar.o", "-o", "foo.l"],
70707070
env: env)
70717071

@@ -7708,7 +7708,7 @@ final class SwiftDriverTests: XCTestCase {
77087708
#else
77097709
VirtualPath.resetTemporaryFileStore()
77107710
var driver = try Driver(args: [
7711-
"swiftc", "-cxx-interoperability-mode=swift-5.9", "-emit-library", "-o", "library.dll", "library.obj"
7711+
"swiftc", "-cxx-interoperability-mode=upcoming-swift", "-emit-library", "-o", "library.dll", "library.obj"
77127712
])
77137713
let jobs = try driver.planBuild().removingAutolinkExtractJobs()
77147714
XCTAssertEqual(jobs.count, 1)

0 commit comments

Comments
 (0)