Skip to content

Commit e047316

Browse files
authored
Merge pull request #1548 from xymus/frontend-check-no-verify
Only pass down the `-no-verify-emitted-module-interface` flag if the frontend accepts it
2 parents 4163263 + b2dfa87 commit e047316

File tree

2 files changed

+8
-3
lines changed

2 files changed

+8
-3
lines changed

Sources/SwiftDriver/Jobs/FrontendJobHelpers.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -423,7 +423,8 @@ extension Driver {
423423
// Pass along -no-verify-emitted-module-interface only if it's effective.
424424
// Assume verification by default as we want to know only when the user skips
425425
// the verification.
426-
if !parsedOptions.hasFlag(positive: .verifyEmittedModuleInterface,
426+
if isFrontendArgSupported(.noVerifyEmittedModuleInterface) &&
427+
!parsedOptions.hasFlag(positive: .verifyEmittedModuleInterface,
427428
negative: .noVerifyEmittedModuleInterface,
428429
default: true) {
429430
commandLine.appendFlag("-no-verify-emitted-module-interface")

Tests/SwiftDriverTests/SwiftDriverTests.swift

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5632,7 +5632,9 @@ final class SwiftDriverTests: XCTestCase {
56325632
XCTAssertEqual(plannedJobs.count, 2)
56335633
XCTAssertFalse(plannedJobs.containsJob(.verifyModuleInterface))
56345634
let emitJob = try plannedJobs.findJob(.emitModule)
5635-
XCTAssertTrue(emitJob.commandLine.contains("-no-verify-emitted-module-interface"))
5635+
if driver.isFrontendArgSupported(.noVerifyEmittedModuleInterface) {
5636+
XCTAssertTrue(emitJob.commandLine.contains("-no-verify-emitted-module-interface"))
5637+
}
56365638
}
56375639

56385640
// Disabled by default in merge-module
@@ -5698,7 +5700,9 @@ final class SwiftDriverTests: XCTestCase {
56985700
let plannedJobs = try driver.planBuild()
56995701
XCTAssertEqual(plannedJobs.count, 1)
57005702
let compileJob = try plannedJobs.findJob(.compile)
5701-
XCTAssertTrue(compileJob.commandLine.contains("-no-verify-emitted-module-interface"))
5703+
if driver.isFrontendArgSupported(.noVerifyEmittedModuleInterface) {
5704+
XCTAssertTrue(compileJob.commandLine.contains("-no-verify-emitted-module-interface"))
5705+
}
57025706
}
57035707

57045708
// Enabled by default when the library-level is api.

0 commit comments

Comments
 (0)