FIX: C1001: coff.c, Line 280, new of __declspec(dllimport) (113429)



The information in this article applies to:

  • Microsoft Visual C++ 1.0

This article was previously published under Q113429

SYMPTOMS

The compiler generates the following internal compiler error message when the sample program below is compiled:
fatal error C1001: INTERNAL COMPILER ERROR
(compiler file '@(#)coff.c:1.14', line 280)
The internal compiler error is triggered by the code, which does a new of an array of a class that is marked __declspec(dllimport).

RESOLUTION

To avoid the error, remove the __declspec(dllimport) from the class declaration and link with an import library instead.

STATUS

Microsoft has confirmed this to be a problem in the products listed at the beginning of this article. The problem was corrected in Visual C++, 32-bit edition, version 2.0.

Sample Code

/* Compile options needed: /c
*/ 

class __declspec(dllimport) CImport
{
public:
    CImport();
    ~CImport();
};

class CMyClass
{
protected:
    CImport * piArray;
public:
    CMyClass() {piArray = new CImport[2];}
    ~CMyClass() {delete[] piArray;}
};
				

Modification Type:MinorLast Reviewed:7/5/2005
Keywords:kbbug kbCompiler kbCPPonly kbfix KB113429