1 /*
2 TEST_OUTPUT:
3 ---
4 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
5 fail_compilation/ice12902.d(20): Error: expression s.opDollar() is void and has no value
6 ---
7 */
8 
9 struct S
10 {
opDollarS11     void opDollar() { }
opIndexS12     void opIndex() { }
opIndexAssignS13     void opIndexAssign() { }
opSliceAssignS14     void opSliceAssign() { }
15 }
16 
main()17 void main()
18 {
19     S s;
20     s[] = s[$];
21 }
22