Debugging limitations

General limitations

  • Watch expression: Agents are not supported (for instance "agent my_function" is not supported").
  • You cannot yet create an instance of SPECIAL.
  • The debugger is not very helpful when the execution is stopped inside an invariant.
  • Wrong assertion tag shown in debugger for precondition violation if violated during an exception rescue, indeed the tag remains the one from the exception
  • If you use the "Disable Assertion Handling" functionality when the execution is stopped in a rescue, the effect might be cancelled as soon as the execution exits the rescue's associated feature.
  • Evaluating an expression with a catcall might crash the debugger

Limitations or known bugs for the Classic debugger

  • Evaluating Precursor will produce the current feature's Result (not the precursor)
  • If you use any of the previous non supported expressions in a breakpoint condition, since the evaluation is failing the condition will always return True. In such case the debugger will stop.

Limitations or known bugs for the .Net debugger

  • When stepping through disabled assertions or disabled debug clauses, the debugger may show incorrect current line.
  • When stepping through an inspect code, the debugger may show incorrect current line (especially if the inspect is not ordered)
  • Under dotnet v2.0, the debugger may have difficulties to fetch the stack values, especially during first chance exception events