Article ID: 120965
Article Last Modified on 7/5/2005
APPLIES TO
- Microsoft Visual C++ 2.0 Professional Edition
This article was previously published under Q120965
SYMPTOMS
Compiling an application that uses a local temporary static union, as does the sample code shown in the More Information section below, may cause the following internal compiler error when built with debug information only:
TEST.CPP is the sample code file given in the More Information section below.
RESOLUTION
Use either of these two workarounds:
- Remove the /Zi compiler option. -or-
Create an object to represent the local static union:
static union { int z;} tmp;
STATUS
Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This problem was fixed in Visual C++, 32-bit Edition, version 4.0.
MORE INFORMATION
Sample Code
/* Compile options needed: /Zi */ static union { int i; }; static union { int k; }; void local() { union { int x; }; union { int y; }; static union { int z; }; }
Additional query words: 2.00 9.00
Keywords: kbbug kbfix KB120965