Microsoft KB Archive/172887

From BetaArchive Wiki
Knowledge Base


FIX: Debugger Cannot Safely Change Current Location

Article ID: 172887

Article Last Modified on 10/24/2003



APPLIES TO

  • The Integrated Debugger, when used with:
    • Microsoft Visual C++ 5.0 Professional Edition



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