// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96435 | |
// { dg-do run } | |
@safe bool test96435() | |
{ | |
int[2] array = [16, 678]; | |
union U { int i; bool b; } | |
U u; | |
u.i = 0x81818181; | |
assert(array[u.b] == 678); | |
return u.b; | |
} | |
@safe void main() | |
{ | |
auto b = test96435(); | |
if (b) | |
assert(true); | |
if (!b) | |
assert(false); | |
} |