FIX: Incorrect Use of #pragma Pack Causes C1001 Errors (119873)
The information in this article applies to:
- Microsoft Visual C++, 32-bit Editions 1.0
- Microsoft Visual C++, 32-bit Editions 2.0
- Microsoft Visual C++, 32-bit Editions 4.0
- Microsoft Visual C++, 32-bit Editions 4.1
- Microsoft Visual C++, 32-bit Editions 4.2
- Microsoft Visual C++, 32-bit Editions 5.0
- Microsoft Visual C++, 32-bit Editions 6.0
This article was previously published under Q119873 SYMPTOMS
When compiling code that uses #pragma pack() to pop an ID that has not been
pushed after successfully popping an ID that was pushed, the compilers
listed above will generate:
fatal error C1001: INTERNAL COMPILER ERROR
In addition, this error will be followed by a message similar to
(compiler file 'msc1.cpp', line 902)
Please choose the Technical Support command on the Visual C++
Help menu, or open the Technical Support help file for more information
NOTE: In Microsoft Visual Studio .NET, you receive a C4160 warning instead of the error message, so you can compile and run the program.
RESOLUTION
Pop only IDs that have been previously pushed onto the compiler's internal
stack.
STATUSMicrosoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.
This problem was corrected in Microsoft Visual C++ .NET.
Modification Type: | Minor | Last Reviewed: | 7/5/2005 |
---|
Keywords: | kbBug kbCompiler kbfix kbNoUpdate KB119873 |
---|
|