Registrations are now open. Join us today!
There is still a lot of work to do on the wiki yet! More information about editing can be found here.
Already have an account?

Microsoft KB Archive/103711

From BetaArchive Wiki

Article ID: 103711

Article Last Modified on 8/16/2005



APPLIES TO

  • Microsoft CodeView 4.0
  • Microsoft CodeView 4.01
  • Microsoft CodeView 4.1
  • Microsoft CodeView 4.0
  • Microsoft CodeView 4.01
  • Microsoft CodeView 4.1
  • Microsoft Visual Workbench for Windows



This article was previously published under Q103711

SYMPTOMS

When debugging a C++ program with CodeView version 4.1 or the Visual Workbench, the following error is generated when watching an enum type variable that is assigned a negative value:

CXX0067: Error: Illegal Enum Value

With CodeView version 4.0 or 4.01, an incorrect value is displayed.

RESOLUTION

A workaround when using the Visual Debugger or CodeView version 4.1 is to typecast the variable as an int in the Watch window. For example, if EnumData is an enum type variable with a negative value, set up the watch similar to the following:

   (int)EnumData
                

To add the typecast in the Visual Workbench, first set the watch on the variable then modify the type value after it appears in the Watch window.

STATUS

Microsoft has confirmed this to be a problem in Microsoft CodeView for MS-DOS and Windows versions 4.0, 4.01, and 4.1, and in the Visual Workbench Debugger for Windows version 1.0.

This problem does not occur in CodeView version 4.25 for Win32s.

MORE INFORMATION

The following sample program demonstrates the problem. To reproduce the problem in CodeView for Windows or the Visual debugger, compile and link the sample as a QuickWin program or place the code in a Windows program.

This problem does not exist in a C program; it occurs only in C++ code.

Sample Code

/* Compile options needed: /Zi /Od
*/ 

enum Days { Monday=-1,Tuesday};

void main(void)
{
  enum Days EnumData;
  EnumData = Monday;
}

                


Additional query words: 4.00 4.10 1.00

Keywords: kberrmsg kbbug kbide kbdebug KB103711