/* | |
TEST_OUTPUT: | |
--- | |
fail_compilation/ice12902.d(20): Error: variable `ice12902.main.__dollar` type `void` is inferred from initializer `s.opDollar()`, and variables cannot be of type `void` | |
fail_compilation/ice12902.d(20): Error: expression `s.opDollar()` is `void` and has no value | |
--- | |
*/ | |
struct S | |
{ | |
void opDollar() { } | |
void opIndex() { } | |
void opIndexAssign() { } | |
void opSliceAssign() { } | |
} | |
void main() | |
{ | |
S s; | |
s[] = s[$]; | |
} |