Microsoft KB Archive/177937

From BetaArchive Wiki
Knowledge Base


Article ID: 177937

Article Last Modified on 12/2/2003



APPLIES TO

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



This article was previously published under Q177937

SYMPTOMS

Adding a function call in the Developer Studio debugger Watch window may result in the following message if the function returns a struct or union with a field width greater than 4 bytes:

Error: cannot display value

RESOLUTION

There is no workaround for this problem.

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 Microsoft Visual C++ .NET.


MORE INFORMATION

The following procedure reproduces this problem:

  1. Create a new console application project and add the following file to the project:

          /* File: TEST.CPP */ 
    
           struct _XX
               {
               char   m1;
               char   m2;
               char   m3;
               char   m4;
               } XX;
    
           struct _XX fun()
           {
               return XX;
           }
    
           int main()
           {
               fun();
               return 0;
           }
                            
  2. Build the project.
  3. Click Build|Start Debug|Step Into on the Developer Studio menu.
  4. Goto the Watch window by selecting View|Debug Windows|Watch.
  5. Add the following watch expression in the "Name" column: fun()

Results: You will see the message "Error: cannot display value" in the "Value" column.

Keywords: kbbug kbfix kbnoupdate kbide kbdebug KB177937