view gcc/testsuite/c-c++-common/cpp/diagnostic-pragma-2.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents
children
line wrap: on
line source

/* { 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" } */
}