1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
/* This failed because if conversion didn't handle insv patterns properly. */ union y { int a; unsigned short b; }; extern void bar (unsigned short u, union y v); void foo (int check) { union y x; if (check != 0) x.b = 1; else x.b = 2; bar (x.b, x); }