|
2 | 2 | // RUN: mkdir -p %t/tmp |
3 | 3 |
|
4 | 4 | // First test the explicit frontend-based bridging PCH generation and use works |
5 | | -// RUN: %target-swift-frontend -emit-pch -o %t/c-bridging-header.pch %S/../Inputs/c-bridging-header.h |
6 | | -// RUN: %target-typecheck-verify-swift -internal-import-bridging-header %t/c-bridging-header.pch |
| 5 | +// RUN: %target-swift-frontend -emit-pch -o %t/c-bridging-header.pch %S/../Inputs/c-bridging-header.h -sdk %clang-importer-sdk |
| 6 | +// RUN: %target-typecheck-verify-swift -internal-import-bridging-header %t/c-bridging-header.pch -sdk %clang-importer-sdk |
7 | 7 |
|
8 | 8 | // Now test the driver-automated version is inert when disabled |
9 | 9 | // Output path of the PCH differs in the new driver, so force SWIFT_USE_OLD_DRIVER for now. |
10 | | -// RUN: env TMPDIR=%t/tmp/ SWIFT_USE_OLD_DRIVER=1 %target-swiftc_driver -typecheck -disable-bridging-pch -save-temps %s -internal-import-bridging-header %S/../Inputs/c-bridging-header.h |
| 10 | +// RUN: env TMPDIR=%t/tmp/ SWIFT_USE_OLD_DRIVER=1 %target-swiftc_driver -typecheck -disable-bridging-pch -save-temps %s -internal-import-bridging-header %S/../Inputs/c-bridging-header.h -sdk %clang-importer-sdk |
11 | 11 | // RUN: not ls %t/tmp/*.pch >/dev/null 2>&1 |
12 | 12 |
|
13 | 13 | // Test the driver-automated version works by default |
14 | 14 | // Output path of the PCH differs in the new driver, so force SWIFT_USE_OLD_DRIVER for now. |
15 | | -// RUN: env TMPDIR=%t/tmp/ SWIFT_USE_OLD_DRIVER=1 %target-swiftc_driver -typecheck -save-temps %s -internal-import-bridging-header %S/../Inputs/c-bridging-header.h |
| 15 | +// RUN: env TMPDIR=%t/tmp/ SWIFT_USE_OLD_DRIVER=1 %target-swiftc_driver -typecheck -save-temps %s -internal-import-bridging-header %S/../Inputs/c-bridging-header.h -sdk %clang-importer-sdk |
16 | 16 | // RUN: ls %t/tmp/*.pch >/dev/null 2>&1 |
17 | 17 | // RUN: llvm-objdump --raw-clang-ast %t/tmp/*.pch | llvm-bcanalyzer -dump | %FileCheck %s |
18 | 18 | // CHECK: ORIGINAL_FILE{{.*}}Inputs/c-bridging-header.h |
19 | 19 |
|
20 | 20 | // Test the driver-automated version deletes its PCH file when done |
21 | 21 | // RUN: rm %t/tmp/*.pch |
22 | | -// RUN: env TMPDIR=%t/tmp/ %target-swiftc_driver -typecheck %s -internal-import-bridging-header %S/../Inputs/c-bridging-header.h |
| 22 | +// RUN: env TMPDIR=%t/tmp/ %target-swiftc_driver -typecheck %s -internal-import-bridging-header %S/../Inputs/c-bridging-header.h -sdk %clang-importer-sdk |
23 | 23 | // RUN: not ls %t/tmp/*.pch >/dev/null 2>&1 |
24 | 24 |
|
25 | 25 | // Test -emit-pch invocation but with a persistent PCH |
26 | | -// RUN: %target-swift-frontend -emit-pch -pch-output-dir %t/pch %S/../Inputs/c-bridging-header.h |
27 | | -// RUN: %target-typecheck-verify-swift -internal-import-bridging-header %S/../Inputs/c-bridging-header.h -pch-output-dir %t/pch -pch-disable-validation |
| 26 | +// RUN: %target-swift-frontend -emit-pch -pch-output-dir %t/pch %S/../Inputs/c-bridging-header.h -sdk %clang-importer-sdk |
| 27 | +// RUN: %target-typecheck-verify-swift -internal-import-bridging-header %S/../Inputs/c-bridging-header.h -pch-output-dir %t/pch -pch-disable-validation -sdk %clang-importer-sdk |
28 | 28 | // RUN: ls %t/pch/*.pch >/dev/null 2>&1 |
29 | 29 |
|
30 | 30 | // Test implicit use of persistent PCH |
31 | | -// RUN: %target-typecheck-verify-swift -internal-import-bridging-header %S/../Inputs/c-bridging-header.h -pch-output-dir %t/pch2 |
| 31 | +// RUN: %target-typecheck-verify-swift -internal-import-bridging-header %S/../Inputs/c-bridging-header.h -pch-output-dir %t/pch2 -sdk %clang-importer-sdk |
32 | 32 | // RUN: ls %t/pch2/*.pch >/dev/null 2>&1 |
33 | 33 |
|
34 | 34 | // RUN: touch %t/header.with.dot.h |
35 | 35 | // RUN: touch %t/test.swift |
36 | | -// RUN: %target-swift-frontend -typecheck %t/test.swift -internal-import-bridging-header %t/header.with.dot.h -pch-output-dir %t/pch_with_dot -module-cache-path %t/mcp1 |
37 | | -// RUN: %target-swift-frontend -typecheck %t/test.swift -internal-import-bridging-header %t/header.with.dot.h -pch-output-dir %t/pch_with_dot -module-cache-path %t/mcp2 |
| 36 | +// RUN: %target-swift-frontend -typecheck %t/test.swift -internal-import-bridging-header %t/header.with.dot.h -pch-output-dir %t/pch_with_dot -module-cache-path %t/mcp1 -sdk %clang-importer-sdk |
| 37 | +// RUN: %target-swift-frontend -typecheck %t/test.swift -internal-import-bridging-header %t/header.with.dot.h -pch-output-dir %t/pch_with_dot -module-cache-path %t/mcp2 -sdk %clang-importer-sdk |
38 | 38 | // RUN: ls %t/pch_with_dot/*swift*clang*.pch | count 2 |
39 | 39 |
|
40 | 40 | // Test the driver-automated version using persistent PCH |
41 | | -// RUN: %target-swiftc_driver -typecheck -save-temps %s -internal-import-bridging-header %S/../Inputs/c-bridging-header.h -pch-output-dir %t/pch3 |
| 41 | +// RUN: %target-swiftc_driver -typecheck -save-temps %s -internal-import-bridging-header %S/../Inputs/c-bridging-header.h -pch-output-dir %t/pch3 -sdk %clang-importer-sdk |
42 | 42 | // RUN: ls %t/pch3/*.pch >/dev/null 2>&1 |
43 | 43 | // RUN: llvm-objdump --raw-clang-ast %t/pch3/*.pch | llvm-bcanalyzer -dump | %FileCheck %s -check-prefix=PERSISTENT |
44 | 44 | // PERSISTENT: ORIGINAL_FILE{{.*}}Inputs/c-bridging-header.h |
45 | 45 |
|
46 | 46 | // Test that -pch-disable-validation works in that it won't implicitly create a PCH |
47 | | -// RUN: not %target-swift-frontend -typecheck %s -internal-import-bridging-header %S/../Inputs/c-bridging-header.h -pch-output-dir %t/no-pch -pch-disable-validation 2>&1 | %FileCheck %s -check-prefix=NO-VALIDATION |
| 47 | +// RUN: not %target-swift-frontend -typecheck %s -internal-import-bridging-header %S/../Inputs/c-bridging-header.h -pch-output-dir %t/no-pch -pch-disable-validation -sdk %clang-importer-sdk 2>&1 | %FileCheck %s -check-prefix=NO-VALIDATION |
48 | 48 | // NO-VALIDATION: PCH file {{.*}} not found |
49 | 49 |
|
50 | 50 | func getX(point: MyPoint) -> Double { point.x } |
0 commit comments