FIX: C1001 When Initialize Array of Type Class with #include
Article ID: 149285
Article Last Modified on 7/5/2005
APPLIES TO
- Microsoft Visual C++ 4.0 Professional Edition
- Microsoft Visual C++ 4.1 Subscription
- Microsoft Visual C++ 4.2 Professional Edition
- Microsoft Visual C++ 4.2 Enterprise Edition
- Microsoft Visual C++ 5.0 Learning Edition
- Microsoft Visual C++ 5.0 Learning Edition
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.
Additional query words: kbVC400bug 10.00 10.10 10.20
Keywords: kbbug kbfix kbvc500fix kbcpponly kbcompiler KB149285