@@ -769,21 +769,21 @@ final class SwiftDriverTests: XCTestCase {
769
769
XCTAssertFalse ( plannedJobs [ 2 ] . commandLine. contains ( . flag( " -emit-dependencies-path " ) ) )
770
770
XCTAssertFalse ( plannedJobs [ 2 ] . commandLine. contains ( . flag( " -serialize-diagnostics-path " ) ) )
771
771
}
772
-
772
+
773
773
func testReferenceDependencies( ) throws {
774
774
var driver = try Driver ( args: [ " swiftc " , " foo.swift " , " -incremental " ] )
775
775
let plannedJobs = try driver. planBuild ( )
776
776
XCTAssertTrue ( plannedJobs [ 0 ] . kind == . compile)
777
777
XCTAssertTrue ( plannedJobs [ 0 ] . commandLine. contains ( . flag( " -emit-reference-dependencies-path " ) ) )
778
778
}
779
-
779
+
780
780
func testDuplicateName( ) throws {
781
781
assertDiagnostics { diagnosticsEngine, verify in
782
782
_ = try ? Driver ( args: [ " swiftc " , " -c " , " foo.swift " , " foo.swift " ] , diagnosticsEngine: diagnosticsEngine)
783
783
verify. expect ( . error( " filename \" foo.swift \" used twice: 'foo.swift' and 'foo.swift' " ) )
784
784
verify. expect ( . note( " filenames are used to distinguish private declarations with the same name " ) )
785
785
}
786
-
786
+
787
787
assertDiagnostics { diagnosticsEngine, verify in
788
788
_ = try ? Driver ( args: [ " swiftc " , " -c " , " foo.swift " , " foo/foo.swift " ] , diagnosticsEngine: diagnosticsEngine)
789
789
verify. expect ( . error( " filename \" foo.swift \" used twice: 'foo.swift' and 'foo/foo.swift' " ) )
@@ -1235,7 +1235,7 @@ final class SwiftDriverTests: XCTestCase {
1235
1235
XCTAssertFalse ( cmd. contains ( . flag( " -dylib " ) ) )
1236
1236
XCTAssertFalse ( cmd. contains ( . flag( " -shared " ) ) )
1237
1237
}
1238
-
1238
+
1239
1239
do {
1240
1240
// lto linking
1241
1241
// Locating relevant libraries is dependent on being a macOS host
@@ -1258,7 +1258,7 @@ final class SwiftDriverTests: XCTestCase {
1258
1258
var driver3 = try Driver ( args: commonArgs + [ " -emit-executable " , " -target " , " x86_64-unknown-linux " , " -lto=llvm-full " ] , env: env)
1259
1259
let plannedJobs3 = try driver3. planBuild ( )
1260
1260
XCTAssertFalse ( plannedJobs3. contains ( where: { $0. kind == . autolinkExtract } ) )
1261
-
1261
+
1262
1262
let compileJob3 = try XCTUnwrap ( plannedJobs3. first ( where: { $0. kind == . compile } ) )
1263
1263
XCTAssertTrue ( compileJob3. outputs. contains { $0. file. basename. hasSuffix ( " .bc " ) } )
1264
1264
@@ -1630,14 +1630,14 @@ final class SwiftDriverTests: XCTestCase {
1630
1630
#endif
1631
1631
}
1632
1632
}
1633
-
1633
+
1634
1634
func testSanitizerRecoverArgs( ) throws {
1635
1635
let commonArgs = [ " swiftc " , " foo.swift " , " bar.swift " , ]
1636
1636
do {
1637
1637
// address sanitizer + address sanitizer recover
1638
1638
var driver = try Driver ( args: commonArgs + [ " -sanitize=address " , " -sanitize-recover=address " ] )
1639
1639
let plannedJobs = try driver. planBuild ( ) . removingAutolinkExtractJobs ( )
1640
-
1640
+
1641
1641
XCTAssertEqual ( plannedJobs. count, 3 )
1642
1642
1643
1643
let compileJob = plannedJobs [ 0 ]
@@ -2598,7 +2598,7 @@ final class SwiftDriverTests: XCTestCase {
2598
2598
return
2599
2599
}
2600
2600
}
2601
-
2601
+
2602
2602
XCTAssertThrowsError ( try Driver ( args: [ " swiftc " , " -c " , " -static-stdlib " , " -target " , " x86_64-apple-macosx10.14 " ,
2603
2603
" foo.swift " ] ) ) { error in
2604
2604
guard case DarwinToolchain . ToolchainValidationError . argumentNotSupported( " -static-stdlib " ) = error else {
@@ -2614,7 +2614,7 @@ final class SwiftDriverTests: XCTestCase {
2614
2614
return
2615
2615
}
2616
2616
}
2617
-
2617
+
2618
2618
XCTAssertThrowsError ( try Driver ( args: [ " swiftc " , " -c " , " -target " , " x86_64-apple-macosx10.14 " , " -experimental-cxx-stdlib " , " libstdc++ " ,
2619
2619
" foo.swift " ] ) ) { error in
2620
2620
guard case DarwinToolchain . ToolchainValidationError . darwinOnlySupportsLibCxx = error else {
@@ -3452,7 +3452,7 @@ final class SwiftDriverTests: XCTestCase {
3452
3452
XCTAssertFalse ( jobs [ 0 ] . commandLine. contains ( " -wmo " ) )
3453
3453
XCTAssertTrue ( jobs [ 0 ] . commandLine. contains ( " -dump-ast " ) )
3454
3454
}
3455
-
3455
+
3456
3456
try assertDriverDiagnostics ( args: [ " swiftc " , " -index-file " , " -dump-ast " ,
3457
3457
" foo.swift " ,
3458
3458
" -index-file-path " , " foo.swift " ,
@@ -3580,7 +3580,7 @@ final class SwiftDriverTests: XCTestCase {
3580
3580
do {
3581
3581
struct MockExecutor : DriverExecutor {
3582
3582
let resolver : ArgsResolver
3583
-
3583
+
3584
3584
func execute( job: Job , forceResponseFiles: Bool , recordedInputModificationDates: [ TypedVirtualPath : Date ] ) throws -> ProcessResult {
3585
3585
return ProcessResult ( arguments: [ ] , environment: [ : ] , exitStatus: . terminated( code: 0 ) , output: . success( Array ( " bad JSON " . utf8) ) , stderrOutput: . success( [ ] ) )
3586
3586
}
@@ -3728,6 +3728,12 @@ final class SwiftDriverTests: XCTestCase {
3728
3728
}
3729
3729
3730
3730
func testVerboseImmediateMode( ) throws {
3731
+ #if os(macOS) && arch(arm64)
3732
+ // Temporarily disabled on Apple Silicon
3733
+ // rdar://80558898
3734
+ throw XCTSkip ( )
3735
+ #endif
3736
+
3731
3737
// There is nothing particularly macOS-specific about this test other than
3732
3738
// the use of some macOS-specific XCTest functionality to determine the
3733
3739
// test bundle that contains the swift-driver executable.
@@ -3842,7 +3848,7 @@ final class SwiftDriverTests: XCTestCase {
3842
3848
XCTAssertEqual ( plannedJobs. map ( \. kind) , [ . compile, . link] )
3843
3849
XCTAssertTrue ( plannedJobs [ 1 ] . commandLine. contains ( " -lto_library " ) )
3844
3850
}
3845
-
3851
+
3846
3852
do {
3847
3853
var driver = try Driver ( args: [ " swiftc " , " foo.swift " , " -lto=llvm-thin " , " -lto-library " , " /foo/libLTO.dylib " , " -target " , " x86_64-apple-macos11.0 " ] )
3848
3854
let plannedJobs = try driver. planBuild ( )
@@ -3851,14 +3857,14 @@ final class SwiftDriverTests: XCTestCase {
3851
3857
XCTAssertTrue ( plannedJobs [ 1 ] . commandLine. contains ( " -lto_library " ) )
3852
3858
XCTAssertTrue ( plannedJobs [ 1 ] . commandLine. contains ( . path( try VirtualPath ( path: " /foo/libLTO.dylib " ) ) ) )
3853
3859
}
3854
-
3860
+
3855
3861
do {
3856
3862
var driver = try Driver ( args: [ " swiftc " , " foo.swift " , " -lto=llvm-full " , " -target " , " x86_64-apple-macos11.0 " ] )
3857
3863
let plannedJobs = try driver. planBuild ( )
3858
3864
XCTAssertEqual ( plannedJobs. map ( \. kind) , [ . compile, . link] )
3859
3865
XCTAssertTrue ( plannedJobs [ 1 ] . commandLine. contains ( " -lto_library " ) )
3860
3866
}
3861
-
3867
+
3862
3868
do {
3863
3869
var driver = try Driver ( args: [ " swiftc " , " foo.swift " , " -lto=llvm-full " , " -lto-library " , " /foo/libLTO.dylib " , " -target " , " x86_64-apple-macos11.0 " ] )
3864
3870
let plannedJobs = try driver. planBuild ( )
@@ -3867,7 +3873,7 @@ final class SwiftDriverTests: XCTestCase {
3867
3873
XCTAssertTrue ( plannedJobs [ 1 ] . commandLine. contains ( " -lto_library " ) )
3868
3874
XCTAssertTrue ( plannedJobs [ 1 ] . commandLine. contains ( . path( try VirtualPath ( path: " /foo/libLTO.dylib " ) ) ) )
3869
3875
}
3870
-
3876
+
3871
3877
do {
3872
3878
var driver = try Driver ( args: [ " swiftc " , " foo.swift " , " -target " , " x86_64-apple-macos11.0 " ] )
3873
3879
let plannedJobs = try driver. planBuild ( )
@@ -4721,7 +4727,7 @@ final class SwiftDriverTests: XCTestCase {
4721
4727
XCTAssert ( jobs. count == 1 )
4722
4728
XCTAssertEqual ( jobs. first!. tool. name, " /usr/bin/nonexistent-swift-help " )
4723
4729
}
4724
-
4730
+
4725
4731
func testSourceInfoFileEmitOption( ) throws {
4726
4732
// implicit
4727
4733
do {
0 commit comments