INFO: CodeView Cannot Display #define or EQU Values (83095)



The information in this article applies to:

  • Microsoft CodeView for MS-DOS 2.2
  • Microsoft CodeView for MS-DOS 3.0
  • Microsoft CodeView for MS-DOS 3.11
  • Microsoft CodeView for MS-DOS 3.14
  • Microsoft CodeView for MS-DOS 4.0
  • Microsoft CodeView for MS-DOS 4.01
  • Microsoft CodeView for MS-DOS 4.05
  • Microsoft CodeView for MS-DOS 4.1
  • Microsoft CodeView for Windows 3.0
  • Microsoft CodeView for Windows 3.05
  • Microsoft CodeView for Windows 3.06
  • Microsoft CodeView for Windows 3.07
  • Microsoft CodeView for Windows 4.0
  • Microsoft CodeView for Windows 4.01
  • Microsoft CodeView for Windows 4.1

This article was previously published under Q83095
The Microsoft CodeView debugger (CV) cannot display any value declared in either a C-language #define preprocessor statement or in an assembly language EQU or TEXTEQU equate. These values cannot be displayed in the Local window, the Watch window, the Command window, or as a Quick Watch value.

The Microsoft C compiler and the Microsoft Macro Assembler (MASM) do not produce any symbolic information for these statements. Without symbolic information, CodeView has no information about these symbols, and cannot display them.

In the sample code below, for example, attempting to put a watch on X generates the following message:
X <Watch Expression Not In Context>

Sample Code

/* Compile options needed: /Zi
*/ 

#include <stdio.h>

#define X 17

void main(void)
{
   printf("\n X is = %d", X);
}
		

Modification Type:MajorLast Reviewed:10/23/2003
Keywords:kb16bitonly kbBug kbDebug kberrmsg kbide KB83095