// https://issues.dlang.org/show_bug.cgi?id=19441 | |
struct S1 | |
{ | |
int a; | |
long b; | |
alias a this; | |
} | |
struct S2 | |
{ | |
S1 v; | |
alias v this; | |
} | |
void main() | |
{ | |
auto x = S2(S1(1, 12345678)); | |
assert(x.a == 1 && x.b == 12345678); // prints: 1 12345678 | |
S1 y; | |
y = x; | |
assert(y.a == 1 && y.b == 12345678); | |
y = x.v; | |
assert(y.a == 1 && y.b == 12345678); | |
} |