OSDN Git Service

2012-04-03 Richard Guenther <rguenther@suse.de>
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / pr42611.c
1 /* PR other/42611 */
2 /* { dg-do compile } */
3 /* { dg-options "" } */
4
5 #define L \
6   (sizeof (__SIZE_TYPE__) == 1 ? __SCHAR_MAX__                          \
7   : sizeof (__SIZE_TYPE__) == sizeof (short) ? __SHRT_MAX__             \
8   : sizeof (__SIZE_TYPE__) == sizeof (int) ? __INT_MAX__                \
9   : sizeof (__SIZE_TYPE__) == sizeof (long) ? __LONG_MAX__              \
10   : sizeof (__SIZE_TYPE__) == sizeof (long long) ? __LONG_LONG_MAX__    \
11   : __INTMAX_MAX__)
12 struct S { int a; char b[L]; };
13
14 void
15 foo (void)
16 {
17   struct S s;                           /* { dg-error "is too large" } */
18   asm volatile ("" : : "r" (&s));
19 }