Issue 12902 & 10904 - fix ICEs with opDollar and multidimensional operator overloading

[Issue 12902](https://issues.dlang.org/show_bug.cgi?id=12902) - [ICE] Assertion failure '!ae->lengthVar' in 'expression.c' when using `opDollar`
[Issue 12904](https://issues.dlang.org/show_bug.cgi?id=12904) - Wrong-code for some slice to slice assignments when using `opDollar`
Currently if the `e2` semantic analysis is done under error gagging as an argument of `opIndexAssign` call, the result would lost. By this change, the semantic result of `e2` will be properly taken over to the `opSliceAssign` call.