blob: 3d336360ae5eb28c1a8a0edd13f5335c0ade974b [file] [log] [blame]
/* PR target/39226 */
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-options "-O2 -mtune=cell -mminimal-toc" { target { powerpc*-*-* && lp64 } } } */
#if (__SIZEOF_INT__ == 2)
struct A
{
char *a;
unsigned int b : 1;
unsigned int c : 15;
};
#else
struct A
{
char *a;
unsigned int b : 1;
unsigned int c : 31;
};
#endif
struct B
{
struct A *d;
};
void
foo (struct B *x, unsigned long y)
{
if (x->d[y].c)
return;
if (x->d[y].b)
x->d[y].a = 0;
}