Test exception handling with various arithmetic and logic operators, it checks the following things:
- In assignment expressions the lefthand side is not modified if the right hand side throws
- If the left hand side of a binary operator throws then the right hand should not be executed
- If valueOf/toString throws in the left hand expression of a binop it does not prevent evaluation of the right hand expression, but does prevent evaluation of toString/valueOf on the rhs.