1// RUN: rm -rf %t.tmp 2// RUN: %clang_cc1 -fsyntax-only -I %S/Inputs/SameHeader -fmodules \ 3// RUN: -fimplicit-module-maps -fmodules-cache-path=%t.tmp %s -verify 4 5// expected-error@Inputs/SameHeader/C.h:3 {{redefinition of 'c'}} 6// expected-note-re@Inputs/SameHeader/B.h:3 {{'{{.*}}C.h' included multiple times, additional include site in header from module 'X.B'}} 7// expected-note@Inputs/SameHeader/module.modulemap:6 {{X.B defined here}} 8// [email protected]:20 {{'{{.*}}C.h' included multiple times, additional include site here}} 9 10// expected-error@Inputs/SameHeader/C.h:5 {{redefinition of 'aaa'}} 11// expected-note-re@Inputs/SameHeader/B.h:3 {{'{{.*}}C.h' included multiple times, additional include site in header from module 'X.B'}} 12// expected-note@Inputs/SameHeader/module.modulemap:6 {{X.B defined here}} 13// [email protected]:20 {{'{{.*}}C.h' included multiple times, additional include site here}} 14 15// expected-error@Inputs/SameHeader/C.h:9 {{redefinition of 'fd_set'}} 16// expected-note-re@Inputs/SameHeader/B.h:3 {{'{{.*}}C.h' included multiple times, additional include site in header from module 'X.B'}} 17// expected-note@Inputs/SameHeader/module.modulemap:6 {{X.B defined here}} 18// [email protected]:20 {{'{{.*}}C.h' included multiple times, additional include site here}} 19#include "A.h" // maps to a modular 20#include "C.h" // textual include 21