summaryrefslogtreecommitdiff
path: root/gcc/testsuite/c-c++-common/cpp/diagnostic-pragma-2.c
blob: 1163bbee1bfef32336790b28e11cfb04535fd98d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/* { dg-do compile } */

#define B _Pragma("GCC diagnostic push") \
	  _Pragma("GCC diagnostic ignored \"-Wattributes\"")
#define E _Pragma("GCC diagnostic pop")

#define X() B int __attribute((unknown_attr)) x; E /* { dg-bogus "attribute directive ignored" } */
#define Y   B int __attribute((unknown_attr)) y; E /* { dg-bogus "attribute directive ignored" } */

void test1(void)
{
    X()  /* { dg-bogus "in expansion of macro" } */
    Y    /* { dg-bogus "in expansion of macro" } */
}