Knowledge Base

FIX: Debugger Cannot Safely Change Current Location

Article ID: 172887

Article Last Modified on 10/24/2003


APPLIES TO


This article was previously published under Q172887

SYMPTOMS

The debugger cannot safely change the current location of a stopped program (for example, using the Set-Next-Statement function) from inside a catch handler to the body of the program.

CAUSE

This problem is related to the difference between Intel and Alpha exception handling. The catch handler on the Alpha architecture is effectively a separate function that allows clean handling of exceptions that are raised within the exception handler. Any change of the current location from the handler to the body of the program would bypass the handler epilogue and result in incorrect values in the registers, and an incorrect stack frame.

STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This problem was corrected in Visual C++ version 6.0 for Windows.

Additional query words: IP instruction

Keywords: kbbug kbfix kbide kbvc600fix kbdebug KB172887