blob: 13913a0a46d95941f3c174f080eb4de4007f7c83 [file] [log] [blame]
/*
TEST_OUTPUT:
---
fail_compilation/fail11510.d(25): Error: reinterpretation through overlapped field y is not allowed in CTFE
fail_compilation/fail11510.d(29): called from here: test11510a()
fail_compilation/fail11510.d(36): Error: reinterpretation through overlapped field y is not allowed in CTFE
fail_compilation/fail11510.d(40): called from here: test11510b()
---
*/
struct S11510
{
union
{
size_t x;
int* y; // pointer field
}
}
bool test11510a()
{
S11510 s;
s.y = [1,2,3].ptr;
auto x = s.x; // reinterpretation
return true;
}
enum a = test11510a();
bool test11510b()
{
S11510 s;
s.x = 10;
auto y = s.y; // reinterpretation
return true;
}
enum b = test11510b();