// Test that attributes work in a variety of situations. | |
// { dg-options "-O -ftrack-macro-expansion=0" } | |
// { dg-do run { target c++11 } } | |
#define attrib [[gnu::mode (QI)]] | |
#define gnu_attrib __attribute((mode (QI))) | |
attrib signed int a; | |
static unsigned int b attrib; | |
int foo(attrib int o) | |
{ | |
return (sizeof (a) != 1 | |
|| sizeof (b) != 1 | |
|| sizeof (o) != 1 | |
|| sizeof ((gnu_attrib signed int) b) != 1); | |
} | |
int main () | |
{ | |
return foo (42); | |
} |