| 1 | // Check compiling a header module to a .pcm file. |
| 2 | // |
| 3 | // RUN: %clang -fmodules-ts -fmodule-name=foobar -x c++-header --precompile %S/Inputs/header1.h %S/Inputs/header2.h %S/Inputs/header3.h -o %t.pcm -v 2>&1 | FileCheck %s --check-prefix=CHECK-PRECOMPILE |
| 4 | // |
| 5 | // CHECK-PRECOMPILE: -cc1 {{.*}} -emit-header-module |
| 6 | // CHECK-PRECOMPILE-SAME: -fmodules-ts |
| 7 | // CHECK-PRECOMPILE-SAME: -fno-implicit-modules |
| 8 | // CHECK-PRECOMPILE-SAME: -fmodule-name=foobar |
| 9 | // CHECK-PRECOMPILE-SAME: -o {{.*}}.pcm |
| 10 | // CHECK-PRECOMPILE-SAME: -x c++-header |
| 11 | // CHECK-PRECOMPILE-SAME: header1.h |
| 12 | // CHECK-PRECOMPILE-SAME: header2.h |
| 13 | // CHECK-PRECOMPILE-SAME: header3.h |
| 14 | // |
| 15 | // RUN: %clang -fmodules-ts -fmodule-name=foobar -x c++-header -fsyntax-only %S/Inputs/header1.h %S/Inputs/header2.h %S/Inputs/header3.h -v 2>&1 | FileCheck %s --check-prefix=CHECK-SYNTAX-ONLY |
| 16 | // CHECK-SYNTAX-ONLY: -cc1 {{.*}} -fsyntax-only |
| 17 | // CHECK-SYNTAX-ONLY-SAME: -fmodules-ts |
| 18 | // CHECK-SYNTAX-ONLY-SAME: -fno-implicit-modules |
| 19 | // CHECK-SYNTAX-ONLY-SAME: -fmodule-name=foobar |
| 20 | // CHECK-SYNTAX-ONLY-NOT: -o{{ }} |
| 21 | // CHECK-SYNTAX-ONLY-SAME: -x c++-header |
| 22 | // CHECK-SYNTAX-ONLY-SAME: header1.h |
| 23 | // CHECK-SYNTAX-ONLY-SAME: header2.h |
| 24 | // CHECK-SYNTAX-ONLY-SAME: header3.h |
| 25 | |