- Notifications
You must be signed in to change notification settings - Fork 10.5k
/
Copy pathcross-compiler.swift
12 lines (9 loc) · 1.04 KB
/
cross-compiler.swift
1
2
3
4
5
6
7
8
9
10
11
// RUN: %empty-directory(%t)
// RUN: cp -r %S/Inputs/CrossCompiler.framework %t/
// RUN: %target-swift-frontend(mock-sdk: %clang-importer-sdk) %S/../Inputs/empty.swift -typecheck -verify -emit-objc-header-path %t/CrossCompiler.framework/Headers/empty.h
// RUN: %target-swift-frontend(mock-sdk: %clang-importer-sdk) -enable-objc-interop -emit-module-path %t/CrossCompiler.framework/Modules/CrossCompiler.swiftmodule/%target-swiftmodule-name -import-underlying-module -F %t -F %clang-importer-sdk-path/frameworks -module-name CrossCompiler -disable-objc-attr-requires-foundation-module -parse-as-library %s -Xcc -Werror
// Ensure that building with multiple compatibility headers from different compilers doesn't
// trigger "macro redefinition" errors (rdar://106087804)
// CrossCompiler.framework contains a modified header generated with Swift 5.7 (before the
// PrintAsClang refactor to make macros data-driven). By compiling it alongside a freshly-generated
// header, we can make sure that the macro definitions are the same before and after the switch.