blob: edd10672636581356dc64c31877fcc0d3280a3a1 [file] [log] [blame]
// 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);
}