1 // RUN: rm -rf %t 2 // RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -I %S/Inputs -x c++ -E %s | \ 3 // RUN: FileCheck -strict-whitespace %s --check-prefix=CHECK --check-prefix=CXX --check-prefix=CXX-DASHE 4 // RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -I %S/Inputs -x objective-c -E %s | \ 5 // RUN: FileCheck -strict-whitespace %s --check-prefix=CHECK --check-prefix=OBJC 6 // RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -I %S/Inputs -x c++ -E -frewrite-includes %s | \ 7 // RUN: FileCheck -strict-whitespace %s --check-prefix=CHECK --check-prefix=CXX 8 // RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -I %S/Inputs -x objective-c -E -frewrite-includes %s | \ 9 // RUN: FileCheck -strict-whitespace %s --check-prefix=CHECK --check-prefix=OBJC 10 #include "dummy.h" 11 #include "dummy.h" 12 foo bar baz 13 14 // The weird {{ }} here is to prevent the -frewrite-includes test from matching its own CHECK lines. 15 16 // CXX: #include{{ }}"dummy.h" 17 // CXX-DASHE-SAME: /* clang -E: implicit import for module dummy */ 18 // CXX: #include{{ }}"dummy.h" 19 // CXX-DASHE-SAME: /* clang -E: implicit import for module dummy */ 20 // CXX: foo bar baz 21 22 // OBJC: @import{{ }}dummy; /* clang 23 // OBJC: @import{{ }}dummy; /* clang 24 // OBJC: foo bar baz 25