OSDN Git Service

Backported from mainline
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / cpp / macro-exp-tracking-1.c
1 /*
2    { dg-options "-ftrack-macro-expansion=1" }
3    { dg-do compile }
4 */
5
6 #define OPERATE(OPRD1, OPRT, OPRD2) \
7 do \
8 { \
9   OPRD1 OPRT OPRD2; /* { dg-message "expansion" }*/        \
10 } while (0)
11
12 #define SHIFTL(A,B) \
13   OPERATE (A,<<,B) /* { dg-message "expanded|expansion" } */
14
15 void
16 foo ()
17 {
18   SHIFTL (0.1,0.2); /* { dg-message "expanded" } */
19 }
20
21 /* { dg-error "invalid operands" "" { target *-*-* } 13 } */