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()17void main() 18 { 19 S s; 20 s[] = s[$]; 21 } 22