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