36 lines · c
1// RUN: %clang_cc1 %s -E -Wdisabled-macro-expansion -verify2 3#define p p4 5#define a b6#define b a7 8#define f(a) a9 10#define g(b) a11 12#define h(x) i(x)13#define i(y) i(y)14 15#define c(x) x(0)16 17#define y(x) y18#define z(x) (z)(x)19 20p // no warning21 22a // expected-warning {{recursive macro}}23 24f(2)25 26g(3) // expected-warning {{recursive macro}}27 28h(0) // expected-warning {{recursive macro}}29 30c(c) // expected-warning {{recursive macro}}31 32y(5) // expected-warning {{recursive macro}}33 34z(z) // ok35 36