tcc-65816/test/dg/20060425-1.c

39 lines
463 B
C
Raw Normal View History

2017-06-09 11:47:37 +00:00
/* { dg-do run } */
/* { dg-options "-O1" } */
/* This failed because if conversion didn't handle insv patterns properly. */
void abort (void);
union y
{
int a;
unsigned short b;
};
void __attribute__ ((noinline))
bar (unsigned short u, union y v)
{
if (u != 1)
abort ();
}
void __attribute__ ((noinline))
foo (int check)
{
union y x;
if (check != 0)
x.b = 1;
else
x.b = 2;
bar (x.b, x);
}
int
main ()
{
foo (1);
return 0;
}