2 /* { dg-options "-O2" } */
4 typedef __SIZE_TYPE__
size_t;
5 extern void *malloc (size_t);
6 extern void free (void *);
7 extern void abort (void);
11 struct S
{ int a
; int b
; } s
;
24 union U
*u
= malloc (sizeof (struct S
) + sizeof (struct T
) + 6);
25 struct T
*t
= (struct T
*) (&u
->s
+ 1);
26 if (__builtin_object_size (t
->d
, 1)
27 != sizeof (struct T
) + 6 - __builtin_offsetof (struct T
, d
))