We have the following code:
try { // some code throwing MyException } catch (MyException ex) { // [1] // no (re)throw here } catch (Exception ex) { if (ex is MyException) { // [2] } }
If we run the code without an attached debugger, everything will work fine. However, if we debug the code, we cannot specify [1] but [2]. As far as I understand the language specification, this is not possible.
Even stranger, this code is used perfectly, even during debugging. Strange behavior began just a few days ago.
source share