@@ -1528,7 +1528,7 @@ final class SwiftDriverTests: XCTestCase {
1528
1528
XCTAssertEqual ( plannedJobs [ 2 ] . outputs. first!. file, VirtualPath . temporary ( RelativePath ( " foo5.o " ) ) )
1529
1529
XCTAssertTrue ( plannedJobs [ 3 ] . tool. name. contains ( driver1. targetTriple. isDarwin ? " ld " : " clang " ) )
1530
1530
XCTAssertEqual ( plannedJobs [ 3 ] . outputs. count, 1 )
1531
- XCTAssertEqual ( plannedJobs [ 3 ] . outputs. first!. file, VirtualPath . relative ( RelativePath ( " Test " ) ) )
1531
+ XCTAssertEqual ( plannedJobs [ 3 ] . outputs. first!. file, VirtualPath . relative ( RelativePath ( " Test \( executableFileSuffix ) " ) ) )
1532
1532
}
1533
1533
1534
1534
// Test 1 partition results in 1 job
@@ -1812,28 +1812,33 @@ final class SwiftDriverTests: XCTestCase {
1812
1812
}
1813
1813
1814
1814
func testEmitModuleSeparately( ) throws {
1815
+ #if os(Windows)
1816
+ let foobar = " C: \\ foo \\ bar \\ "
1817
+ #else
1818
+ let foobar = " /foo/bar/ "
1819
+ #endif
1815
1820
do {
1816
- var driver = try Driver ( args: [ " swiftc " , " foo.swift " , " bar.swift " , " -module-name " , " Test " , " -emit-module-path " , " /foo/bar/ Test.swiftmodule" , " -experimental-emit-module-separately " , " -emit-library " , " -target " , " x86_64-apple-macosx10.15 " ] )
1821
+ var driver = try Driver ( args: [ " swiftc " , " foo.swift " , " bar.swift " , " -module-name " , " Test " , " -emit-module-path " , " \( foobar ) Test.swiftmodule " , " -experimental-emit-module-separately " , " -emit-library " ] )
1817
1822
let plannedJobs = try driver. planBuild ( )
1818
1823
XCTAssertEqual ( plannedJobs. count, 4 )
1819
1824
XCTAssertTrue ( plannedJobs [ 0 ] . tool. name. contains ( " swift " ) )
1820
1825
XCTAssertEqual ( plannedJobs [ 0 ] . outputs. count, 3 )
1821
- XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 0 ] . file, . absolute( AbsolutePath ( " /foo/bar/ Test.swiftmodule" ) ) )
1822
- XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 1 ] . file, . absolute( AbsolutePath ( " /foo/bar/ Test.swiftdoc" ) ) )
1823
- XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 2 ] . file, . absolute( AbsolutePath ( " /foo/bar/ Test.swiftsourceinfo" ) ) )
1826
+ XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 0 ] . file, . absolute( AbsolutePath ( " \( foobar ) Test.swiftmodule " ) ) )
1827
+ XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 1 ] . file, . absolute( AbsolutePath ( " \( foobar ) Test.swiftdoc " ) ) )
1828
+ XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 2 ] . file, . absolute( AbsolutePath ( " \( foobar ) Test.swiftsourceinfo " ) ) )
1824
1829
}
1825
1830
1826
1831
do {
1827
1832
// We don't expect partial jobs when asking only for the swiftmodule with
1828
1833
// -experimental-emit-module-separately.
1829
- var driver = try Driver ( args: [ " swiftc " , " foo.swift " , " bar.swift " , " -module-name " , " Test " , " -emit-module-path " , " /foo/bar/ Test.swiftmodule" , " -experimental-emit-module-separately " ] )
1834
+ var driver = try Driver ( args: [ " swiftc " , " foo.swift " , " bar.swift " , " -module-name " , " Test " , " -emit-module-path " , " \( foobar ) Test.swiftmodule " , " -experimental-emit-module-separately " ] )
1830
1835
let plannedJobs = try driver. planBuild ( )
1831
1836
XCTAssertEqual ( plannedJobs. count, 1 )
1832
1837
XCTAssertTrue ( plannedJobs [ 0 ] . tool. name. contains ( " swift " ) )
1833
1838
XCTAssertEqual ( plannedJobs [ 0 ] . outputs. count, 3 )
1834
- XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 0 ] . file, . absolute( AbsolutePath ( " /foo/bar/ Test.swiftmodule" ) ) )
1835
- XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 1 ] . file, . absolute( AbsolutePath ( " /foo/bar/ Test.swiftdoc" ) ) )
1836
- XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 2 ] . file, . absolute( AbsolutePath ( " /foo/bar/ Test.swiftsourceinfo" ) ) )
1839
+ XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 0 ] . file, . absolute( AbsolutePath ( " \( foobar ) Test.swiftmodule " ) ) )
1840
+ XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 1 ] . file, . absolute( AbsolutePath ( " \( foobar ) Test.swiftdoc " ) ) )
1841
+ XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 2 ] . file, . absolute( AbsolutePath ( " \( foobar ) Test.swiftsourceinfo " ) ) )
1837
1842
}
1838
1843
}
1839
1844
@@ -2352,6 +2357,9 @@ final class SwiftDriverTests: XCTestCase {
2352
2357
2353
2358
// Test cases ported from Driver/macabi-environment.swift
2354
2359
func testDarwinSDKVersioning( ) throws {
2360
+ #if os(Windows)
2361
+ throw XCTSkip ( " currently unable to build against Darwin SDK on Windows " )
2362
+ #endif
2355
2363
try withTemporaryDirectory { tmpDir in
2356
2364
let sdk1 = tmpDir. appending ( component: " MacOSX10.15.versioned.sdk " )
2357
2365
try localFileSystem. writeFileContents ( sdk1. appending ( component: " SDKSettings.json " ) ) {
@@ -2509,6 +2517,9 @@ final class SwiftDriverTests: XCTestCase {
2509
2517
}
2510
2518
2511
2519
func testDarwinLinkerPlatformVersion( ) throws {
2520
+ #if os(Windows)
2521
+ throw XCTSkip ( " currently unable to build against Darwin SDK on Windows " )
2522
+ #endif
2512
2523
do {
2513
2524
var driver = try Driver ( args: [ " swiftc " ,
2514
2525
" -target " , " x86_64-apple-macos10.15 " ,
@@ -2680,11 +2691,11 @@ final class SwiftDriverTests: XCTestCase {
2680
2691
XCTAssertEqual ( plannedJobs. count, 5 )
2681
2692
XCTAssertEqual ( generateDSYMJob. outputs. last? . file, try VirtualPath ( path: " Test.dSYM " ) )
2682
2693
} else {
2683
- XCTAssertEqual ( plannedJobs. count, 6 )
2694
+ XCTAssertEqual ( plannedJobs. count, driver . targetTriple . isWindows ? 5 : 6 )
2684
2695
XCTAssertFalse ( plannedJobs. map { $0. kind } . contains ( . generateDSYM) )
2685
2696
}
2686
2697
2687
- XCTAssertTrue ( cmd. contains ( . path( try VirtualPath ( path: " Test " ) ) ) )
2698
+ XCTAssertTrue ( cmd. contains ( . path( try VirtualPath ( path: " Test \( executableFileSuffix ) " ) ) ) )
2688
2699
}
2689
2700
}
2690
2701
@@ -2866,23 +2877,23 @@ final class SwiftDriverTests: XCTestCase {
2866
2877
XCTAssertEqual ( output,
2867
2878
"""
2868
2879
digraph Jobs {
2869
- " compile (swift-frontend) " [style=bold];
2880
+ " compile (swift-frontend \( executableFileSuffix ) ) " [style=bold];
2870
2881
" test.swift " [fontsize=12];
2871
- " test.swift " -> " compile (swift-frontend) " [color=blue];
2882
+ " test.swift " -> " compile (swift-frontend \( executableFileSuffix ) ) " [color=blue];
2872
2883
" test.o " [fontsize=12];
2873
- " compile (swift-frontend) " -> " test.o " [color=green];
2884
+ " compile (swift-frontend \( executableFileSuffix ) ) " -> " test.o " [color=green];
2874
2885
" test.swiftmodule " [fontsize=12];
2875
- " compile (swift-frontend) " -> " test.swiftmodule " [color=green];
2886
+ " compile (swift-frontend \( executableFileSuffix ) ) " -> " test.swiftmodule " [color=green];
2876
2887
" test.swiftdoc " [fontsize=12];
2877
- " compile (swift-frontend) " -> " test.swiftdoc " [color=green];
2878
- " mergeModule (swift-frontend) " [style=bold];
2879
- " test.swiftmodule " -> " mergeModule (swift-frontend) " [color=blue];
2880
- " mergeModule (swift-frontend) " -> " test.swiftmodule " [color=green];
2881
- " mergeModule (swift-frontend) " -> " test.swiftdoc " [color=green];
2882
- " link ( \( dynamicLinker) ) " [style=bold];
2883
- " test.o " -> " link ( \( dynamicLinker) ) " [color=blue];
2884
- " test " [fontsize=12];
2885
- " link ( \( dynamicLinker) ) " -> " test " [color=green];
2888
+ " compile (swift-frontend \( executableFileSuffix ) ) " -> " test.swiftdoc " [color=green];
2889
+ " mergeModule (swift-frontend \( executableFileSuffix ) ) " [style=bold];
2890
+ " test.swiftmodule " -> " mergeModule (swift-frontend \( executableFileSuffix ) ) " [color=blue];
2891
+ " mergeModule (swift-frontend \( executableFileSuffix ) ) " -> " test.swiftmodule " [color=green];
2892
+ " mergeModule (swift-frontend \( executableFileSuffix ) ) " -> " test.swiftdoc " [color=green];
2893
+ " link ( \( dynamicLinker) \( executableFileSuffix ) ) " [style=bold];
2894
+ " test.o " -> " link ( \( dynamicLinker) \( executableFileSuffix ) ) " [color=blue];
2895
+ " test \( executableFileSuffix ) " [fontsize=12];
2896
+ " link ( \( dynamicLinker) \( executableFileSuffix ) ) " -> " test \( executableFileSuffix ) " [color=green];
2886
2897
}
2887
2898
2888
2899
""" )
@@ -4108,15 +4119,28 @@ final class SwiftDriverTests: XCTestCase {
4108
4119
4109
4120
func testFrontendTargetInfoWithWorkingDirectory( ) throws {
4110
4121
do {
4122
+ #if os(Windows)
4123
+ var driver = try Driver ( args: [ " swiftc " , " -typecheck " , " foo.swift " ,
4124
+ " -resource-dir " , " resource/dir " ,
4125
+ " -sdk " , " sdk " ,
4126
+ " -working-directory " , " C: \\ absolute \\ path " ] )
4127
+ #else
4111
4128
var driver = try Driver ( args: [ " swiftc " , " -typecheck " , " foo.swift " ,
4112
4129
" -resource-dir " , " resource/dir " ,
4113
4130
" -sdk " , " sdk " ,
4114
4131
" -working-directory " , " /absolute/path " ] )
4132
+ #endif
4115
4133
let plannedJobs = try driver. planBuild ( )
4116
4134
let job = plannedJobs [ 0 ]
4135
+
4136
+ #if os(Windows)
4137
+ XCTAssertTrue ( job. commandLine. contains ( . path( . absolute( . init( " C: \\ absolute \\ path \\ resource \\ dir " ) ) ) ) )
4138
+ XCTAssertTrue ( job. commandLine. contains ( . path( . absolute( . init( " C: \\ absolute \\ path \\ sdk " ) ) ) ) )
4139
+ #else
4117
4140
XCTAssertTrue ( job. commandLine. contains ( . path( . absolute( . init( " /absolute/path/resource/dir " ) ) ) ) )
4118
- XCTAssertFalse ( job. commandLine. contains ( . path( . relative( . init( " resource/dir " ) ) ) ) )
4119
4141
XCTAssertTrue ( job. commandLine. contains ( . path( . absolute( . init( " /absolute/path/sdk " ) ) ) ) )
4142
+ #endif
4143
+ XCTAssertFalse ( job. commandLine. contains ( . path( . relative( . init( " resource/dir " ) ) ) ) )
4120
4144
XCTAssertFalse ( job. commandLine. contains ( . path( . relative( . init( " sdk " ) ) ) ) )
4121
4145
}
4122
4146
}
@@ -4152,12 +4176,17 @@ final class SwiftDriverTests: XCTestCase {
4152
4176
}
4153
4177
4154
4178
func testFilelist( ) throws {
4179
+ #if os(Windows)
4180
+ let triple = " x86_64-unknown-windows-msvc "
4181
+ #else
4182
+ let triple = " x86_64-apple-macosx10.9 "
4183
+ #endif
4155
4184
do {
4156
- var driver = try Driver ( args: [ " swiftc " , " -emit-module " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , " x86_64-apple-macosx10.9 " , " -driver-filelist-threshold=0 " ] )
4185
+ var driver = try Driver ( args: [ " swiftc " , " -emit-module " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , triple , " -driver-filelist-threshold=0 " ] )
4157
4186
let plannedJobs = try driver. planBuild ( )
4158
4187
4159
4188
let jobA = plannedJobs [ 0 ]
4160
- let flagA = jobA. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) !
4189
+ let flagA = try XCTUnwrap ( jobA. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) )
4161
4190
let fileListArgumentA = jobA. commandLine [ jobA. commandLine. index ( after: flagA) ]
4162
4191
guard case let . path( . fileList( _, fileListA) ) = fileListArgumentA else {
4163
4192
XCTFail ( " Argument wasn't a filelist " )
@@ -4173,7 +4202,7 @@ final class SwiftDriverTests: XCTestCase {
4173
4202
XCTAssertTrue ( filesA. keys. contains ( . swiftSourceInfoFile) )
4174
4203
4175
4204
let jobB = plannedJobs [ 1 ]
4176
- let flagB = jobB. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) !
4205
+ let flagB = try XCTUnwrap ( jobB. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) )
4177
4206
let fileListArgumentB = jobB. commandLine [ jobB. commandLine. index ( after: flagB) ]
4178
4207
guard case let . path( . fileList( _, fileListB) ) = fileListArgumentB else {
4179
4208
XCTFail ( " Argument wasn't a filelist " )
@@ -4189,7 +4218,7 @@ final class SwiftDriverTests: XCTestCase {
4189
4218
XCTAssertTrue ( filesB. keys. contains ( . swiftSourceInfoFile) )
4190
4219
4191
4220
let jobC = plannedJobs [ 2 ]
4192
- let flagC = jobC. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) !
4221
+ let flagC = try XCTUnwrap ( jobC. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) )
4193
4222
let fileListArgumentC = jobC. commandLine [ jobC. commandLine. index ( after: flagC) ]
4194
4223
guard case let . path( . fileList( _, fileListC) ) = fileListArgumentC else {
4195
4224
XCTFail ( " Argument wasn't a filelist " )
@@ -4206,10 +4235,10 @@ final class SwiftDriverTests: XCTestCase {
4206
4235
}
4207
4236
4208
4237
do {
4209
- var driver = try Driver ( args: [ " swiftc " , " -c " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , " x86_64-apple-macosx10.9 " , " -driver-filelist-threshold=0 " , " -whole-module-optimization " ] )
4238
+ var driver = try Driver ( args: [ " swiftc " , " -c " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , triple , " -driver-filelist-threshold=0 " , " -whole-module-optimization " ] )
4210
4239
let plannedJobs = try driver. planBuild ( )
4211
4240
let job = plannedJobs [ 0 ]
4212
- let inputsFlag = job. commandLine. firstIndex ( of: . flag( " -filelist " ) ) !
4241
+ let inputsFlag = try XCTUnwrap ( job. commandLine. firstIndex ( of: . flag( " -filelist " ) ) )
4213
4242
let inputFileListArgument = job. commandLine [ job. commandLine. index ( after: inputsFlag) ]
4214
4243
guard case let . path( . fileList( _, inputFileList) ) = inputFileListArgument else {
4215
4244
XCTFail ( " Argument wasn't a filelist " )
@@ -4221,7 +4250,7 @@ final class SwiftDriverTests: XCTestCase {
4221
4250
}
4222
4251
XCTAssertEqual ( inputs, [ . relative( RelativePath ( " a.swift " ) ) , . relative( RelativePath ( " b.swift " ) ) , . relative( RelativePath ( " c.swift " ) ) ] )
4223
4252
4224
- let outputsFlag = job. commandLine. firstIndex ( of: . flag( " -output-filelist " ) ) !
4253
+ let outputsFlag = try XCTUnwrap ( job. commandLine. firstIndex ( of: . flag( " -output-filelist " ) ) )
4225
4254
let outputFileListArgument = job. commandLine [ job. commandLine. index ( after: outputsFlag) ]
4226
4255
guard case let . path( . fileList( _, outputFileList) ) = outputFileListArgument else {
4227
4256
XCTFail ( " Argument wasn't a filelist " )
@@ -4235,10 +4264,10 @@ final class SwiftDriverTests: XCTestCase {
4235
4264
}
4236
4265
4237
4266
do {
4238
- var driver = try Driver ( args: [ " swiftc " , " -c " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , " x86_64-apple-macosx10.9 " , " -driver-filelist-threshold=0 " , " -whole-module-optimization " , " -num-threads " , " 1 " ] )
4267
+ var driver = try Driver ( args: [ " swiftc " , " -c " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , triple , " -driver-filelist-threshold=0 " , " -whole-module-optimization " , " -num-threads " , " 1 " ] )
4239
4268
let plannedJobs = try driver. planBuild ( )
4240
4269
let job = plannedJobs [ 0 ]
4241
- let outputsFlag = job. commandLine. firstIndex ( of: . flag( " -output-filelist " ) ) !
4270
+ let outputsFlag = try XCTUnwrap ( job. commandLine. firstIndex ( of: . flag( " -output-filelist " ) ) )
4242
4271
let outputFileListArgument = job. commandLine [ job. commandLine. index ( after: outputsFlag) ]
4243
4272
guard case let . path( . fileList( _, outputFileList) ) = outputFileListArgument else {
4244
4273
XCTFail ( " Argument wasn't a filelist " )
@@ -4252,10 +4281,10 @@ final class SwiftDriverTests: XCTestCase {
4252
4281
}
4253
4282
4254
4283
do {
4255
- var driver = try Driver ( args: [ " swiftc " , " -c " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , " x86_64-apple-macosx10.9 " , " -driver-filelist-threshold=0 " , " -whole-module-optimization " , " -num-threads " , " 1 " , " -embed-bitcode " ] )
4284
+ var driver = try Driver ( args: [ " swiftc " , " -c " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , triple , " -driver-filelist-threshold=0 " , " -whole-module-optimization " , " -num-threads " , " 1 " , " -embed-bitcode " ] )
4256
4285
let plannedJobs = try driver. planBuild ( )
4257
4286
let job = plannedJobs [ 0 ]
4258
- let outputsFlag = job. commandLine. firstIndex ( of: . flag( " -output-filelist " ) ) !
4287
+ let outputsFlag = try XCTUnwrap ( job. commandLine. firstIndex ( of: . flag( " -output-filelist " ) ) )
4259
4288
let outputFileListArgument = job. commandLine [ job. commandLine. index ( after: outputsFlag) ]
4260
4289
guard case let . path( . fileList( _, outputFileList) ) = outputFileListArgument else {
4261
4290
XCTFail ( " Argument wasn't a filelist " )
@@ -4269,10 +4298,10 @@ final class SwiftDriverTests: XCTestCase {
4269
4298
}
4270
4299
4271
4300
do {
4272
- var driver = try Driver ( args: [ " swiftc " , " -emit-library " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , " x86_64-apple-macosx10.9 " , " -driver-filelist-threshold=0 " ] )
4301
+ var driver = try Driver ( args: [ " swiftc " , " -emit-library " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , triple , " -driver-filelist-threshold=0 " ] )
4273
4302
let plannedJobs = try driver. planBuild ( )
4274
4303
let job = plannedJobs [ 3 ]
4275
- let inputsFlag = job. commandLine. firstIndex ( of: . flag( " -filelist " ) ) !
4304
+ let inputsFlag = try XCTUnwrap ( job. commandLine. firstIndex ( of: . flag( " -filelist " ) ) )
4276
4305
let inputFileListArgument = job. commandLine [ job. commandLine. index ( after: inputsFlag) ]
4277
4306
guard case let . path( . fileList( _, inputFileList) ) = inputFileListArgument else {
4278
4307
XCTFail ( " Argument wasn't a filelist " )
@@ -4286,10 +4315,10 @@ final class SwiftDriverTests: XCTestCase {
4286
4315
}
4287
4316
4288
4317
do {
4289
- var driver = try Driver ( args: [ " swiftc " , " -emit-library " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , " x86_64-apple-macosx10.9 " , " -driver-filelist-threshold=0 " , " -whole-module-optimization " , " -num-threads " , " 1 " ] )
4318
+ var driver = try Driver ( args: [ " swiftc " , " -emit-library " , " ./a.swift " , " ./b.swift " , " ./c.swift " , " -module-name " , " main " , " -target " , triple , " -driver-filelist-threshold=0 " , " -whole-module-optimization " , " -num-threads " , " 1 " ] )
4290
4319
let plannedJobs = try driver. planBuild ( )
4291
4320
let job = plannedJobs [ 1 ]
4292
- let inputsFlag = job. commandLine. firstIndex ( of: . flag( " -filelist " ) ) !
4321
+ let inputsFlag = try XCTUnwrap ( job. commandLine. firstIndex ( of: . flag( " -filelist " ) ) )
4293
4322
let inputFileListArgument = job. commandLine [ job. commandLine. index ( after: inputsFlag) ]
4294
4323
guard case let . path( . fileList( _, inputFileList) ) = inputFileListArgument else {
4295
4324
XCTFail ( " Argument wasn't a filelist " )
@@ -4307,7 +4336,7 @@ final class SwiftDriverTests: XCTestCase {
4307
4336
let plannedJobs = try driver. planBuild ( )
4308
4337
4309
4338
let jobA = plannedJobs [ 0 ]
4310
- let flagA = jobA. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) !
4339
+ let flagA = try XCTUnwrap ( jobA. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) )
4311
4340
let fileListArgumentA = jobA. commandLine [ jobA. commandLine. index ( after: flagA) ]
4312
4341
guard case let . path( . fileList( _, fileListA) ) = fileListArgumentA else {
4313
4342
XCTFail ( " Argument wasn't a filelist " )
@@ -4320,7 +4349,7 @@ final class SwiftDriverTests: XCTestCase {
4320
4349
XCTAssertEqual ( mapA. entries, [ . relative( . init( " a.swift " ) ) : [ : ] ] )
4321
4350
4322
4351
let jobB = plannedJobs [ 1 ]
4323
- let flagB = jobB. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) !
4352
+ let flagB = try XCTUnwrap ( jobB. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) )
4324
4353
let fileListArgumentB = jobB. commandLine [ jobB. commandLine. index ( after: flagB) ]
4325
4354
guard case let . path( . fileList( _, fileListB) ) = fileListArgumentB else {
4326
4355
XCTFail ( " Argument wasn't a filelist " )
@@ -4338,7 +4367,7 @@ final class SwiftDriverTests: XCTestCase {
4338
4367
let plannedJobs = try driver. planBuild ( )
4339
4368
4340
4369
let jobA = plannedJobs [ 0 ]
4341
- let flagA = jobA. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) !
4370
+ let flagA = try XCTUnwrap ( jobA. commandLine. firstIndex ( of: . flag( " -supplementary-output-file-map " ) ) )
4342
4371
let fileListArgumentA = jobA. commandLine [ jobA. commandLine. index ( after: flagA) ]
4343
4372
guard case let . path( . fileList( _, fileListA) ) = fileListArgumentA else {
4344
4373
XCTFail ( " Argument wasn't a filelist " )
0 commit comments