1*979d0ee8SAlex Lorenz // RUN: rm -rf %t 2*979d0ee8SAlex Lorenz // RUN: split-file %s %t 3*979d0ee8SAlex Lorenz 4*979d0ee8SAlex Lorenz // RUN: %clang_cc1 -emit-module -x c -fmodules -I %t/Inputs -fmodule-name=aa %t/Inputs/module.modulemap -o %t/aa.pcm 5*979d0ee8SAlex Lorenz // RUN: rm %t/Inputs/b.h 6*979d0ee8SAlex Lorenz // RUN: not %clang_cc1 -E -fmodules -I %t/Inputs -fmodule-file=%t/aa.pcm %s -o - -fallow-pcm-with-compiler-errors 2>&1 | FileCheck %s 7*979d0ee8SAlex Lorenz 8*979d0ee8SAlex Lorenz //--- Inputs/module.modulemap 9*979d0ee8SAlex Lorenz module aa { 10*979d0ee8SAlex Lorenz header "a.h" 11*979d0ee8SAlex Lorenz header "b.h" 12*979d0ee8SAlex Lorenz } 13*979d0ee8SAlex Lorenz 14*979d0ee8SAlex Lorenz //--- Inputs/a.h 15*979d0ee8SAlex Lorenz #define TEST(x) x 16*979d0ee8SAlex Lorenz 17*979d0ee8SAlex Lorenz //--- Inputs/b.h 18*979d0ee8SAlex Lorenz #define SUB "mypragma" 19*979d0ee8SAlex Lorenz 20*979d0ee8SAlex Lorenz //--- test.c 21*979d0ee8SAlex Lorenz #include "a.h" 22*979d0ee8SAlex Lorenz 23*979d0ee8SAlex Lorenz _Pragma(SUB); 24*979d0ee8SAlex Lorenz int a = TEST(SUB); 25*979d0ee8SAlex Lorenz 26*979d0ee8SAlex Lorenz // CHECK: int a 27*979d0ee8SAlex Lorenz // CHECK: 1 error generated 28