The techniques and mechanisms described herein are directed to a method
for virtually catching an exception. A debugger receives a notification
identifying information about an exception that occurred during execution
of an application. The debugger then selectively chooses a location on a
call stack where execution of the application resumes after the stack is
unwound up to the selected location. The location being between a
statement on the stack causing the exception and a handler on the stack.
The handler being identified during a search phase for exception
processing. The mechanism being operative for both handled exceptions and
unhandled exceptions.