* gcc-interface/trans.c (node_has_volatile_full_access) <N_Identifier>:
[official-gcc.git] / gcc / testsuite / gcc.c-torture / compile / pr37056.c
blobe709fdc1ffb24c9ba15e8420c69ea5e22c432dc4
1 /* { dg-skip-if "ptxas times out" { nvptx-*-* } { "-O2" "-Os" } { "" } } */
2 extern void abort (void);
4 static union {
5 char buf[12 * sizeof (long long)];
6 } u;
8 int main ()
10 int off, len, i;
11 char *p, *q;
13 for (off = 0; off < (sizeof (long long)); off++)
14 for (len = 1; len < (10 * sizeof (long long)); len++)
16 for (i = 0; i < (12 * sizeof (long long)); i++)
17 u.buf[i] = 'a';
18 p = (__extension__ (__builtin_constant_p ('\0') && ('\0') == '\0'
19 ? ({void *__s = (u.buf + off); __s;})
20 : __builtin_memset (u.buf + off, '\0', len)));
21 if (p != u.buf + off)
22 abort ();
23 for (i = 0; i < off; i++, q++)
24 if (*q != 'a')
25 abort ();
27 return 0;