- if (!MONO_TYPE_IS_VOID (fsig->ret)) {
- /*
- * Need to emit an implicit seq point after every non-void call so single stepping through nested calls like
- * foo (bar (), baz ())
- * works correctly. MS does this also:
- * http://stackoverflow.com/questions/6937198/making-your-net-language-step-correctly-in-the-debugger
- * The problem with this approach is that the debugger will stop after all calls returning a value,
- * even for simple cases, like:
- * int i = foo ();
- */
- /* Special case a few common successor opcodes */
- if (!(ip + 5 < end && (ip [5] == CEE_POP || ip [5] == CEE_NOP)) && !(seq_point_locs && mono_bitset_test_fast (seq_point_locs, ip + 5 - header->code)))
- need_seq_point = TRUE;
- }