FIX: C1001 When Initialize Array of Type Class with #include (149285)
The information in this article applies to:
- Microsoft Visual C++, 32-bit Professional Edition 4.0
- Microsoft Visual C++, 32-bit Professional Edition 4.1
- Microsoft Visual C++, 32-bit Professional Edition 4.2
- Microsoft Visual C++, 32-bit Enterprise Edition 4.2
- Microsoft Visual C++, 32-bit Learning Edition 4.0
- Microsoft Visual C++, 32-bit Learning Edition 4.2
This article was previously published under Q149285 SYMPTOMS
When you initialize an array of a user-defined type using an include file
(see the example in this article), the compiler generates this error:
fatal error C1001: INTERNAL COMPILER ERROR
(compiler file 'msc1.cpp', line 899)
RESOLUTION
There are two workarounds as described below.
- Add a comma after the last element in the include file.
-or-
- Compile the .cpp file with the /P compiler option. This generates a file
with a .i extension using the same base name as the .cpp file. Rename
the file so that it has a .cpp extension, and compile it, or simply
compile the .i file using the /Tp compiler option.
STATUS
Microsoft has confirmed this to be a bug in the Microsoft products listed
at the beginning of this article. This bug was corrected in Visual C++
version 5.0.
| Modification Type: | Minor | Last Reviewed: | 7/5/2005 |
|---|
| Keywords: | kbbug kbCompiler kbCPPonly kbfix kbVC500fix KB149285 |
|---|
|