blob: 0615331c8bd7901fce3113bfc64b6f654f670f6f [file] [log] [blame]
Richard Smith466a15e2016-04-08 00:09:53 +00001// RUN: rm -rf %t
2// RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -I %S/Inputs -x c++ -E %s | \
Richard Smith6a6747d2016-04-08 01:23:59 +00003// RUN: FileCheck -strict-whitespace %s --check-prefix=CHECK --check-prefix=CXX --check-prefix=CXX-DASHE
Richard Smith466a15e2016-04-08 00:09:53 +00004// 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"
12foo 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"
Richard Smith6a6747d2016-04-08 01:23:59 +000017// CXX-DASHE-SAME: /* clang -E: implicit import for module dummy */
Richard Smith466a15e2016-04-08 00:09:53 +000018// CXX: #include{{ }}"dummy.h"
Richard Smith6a6747d2016-04-08 01:23:59 +000019// CXX-DASHE-SAME: /* clang -E: implicit import for module dummy */
Richard Smith466a15e2016-04-08 00:09:53 +000020// CXX: foo bar baz
21
22// OBJC: @import{{ }}dummy; /* clang
23// OBJC: @import{{ }}dummy; /* clang
24// OBJC: foo bar baz