PR tree-optimization/84339
[official-gcc.git] / gcc / testsuite / gcc.c-torture / execute / pr84339.c
blob06fa3a0d3d3411053c21f49dfb3c0bf3541ad569
1 /* PR tree-optimization/84339 */
3 struct S { int a; char b[1]; };
5 __attribute__((noipa)) int
6 foo (struct S *p)
8 return __builtin_strlen (&p->b[0]);
11 __attribute__((noipa)) int
12 bar (struct S *p)
14 return __builtin_strlen (p->b);
17 int
18 main ()
20 struct S *p = __builtin_malloc (sizeof (struct S) + 16);
21 if (p)
23 p->a = 1;
24 __builtin_strcpy (p->b, "abcdefg");
25 if (foo (p) != 7 || bar (p) != 7)
26 __builtin_abort ();
27 __builtin_free (p);
29 return 0;