Similar Threads
1. Possible VS2003 c# compiler bug: error CS0584: Internal Compiler Error: stage 'COMPILE' symbol ''
Hi everybody!
It's the second time it happens to me... Working with typed DataSets
and doing copy & paste, I compile and get weirds messages like these:
An internal error has occurred in the compiler. To work around this
problem, try simplifying or changing the program near the locations
listed below. Locations at the top of the list are closer to the point
at which the internal error occurred.
error CS0584: Internal Compiler Error: stage 'BIND' symbol
'WindowsApplication1.Form1.Form1_Load(object, System.EventArgs)'
error CS0584: Internal Compiler Error: stage 'COMPILE' symbol
'WindowsApplication1.Form1'
error CS0584: Internal Compiler Error: stage 'COMPILE' symbol
'WindowsApplication1'
error CS0584: Internal Compiler Error: stage 'COMPILE' symbol ''
error CS0586: Internal Compiler Error: stage 'COMPILE'
Once you get one of these you must exit VS2003, because the compiler
does not work anymore...
Here is how to reproduce it:
Create a Solution, with 2 projects, one client app and one class
library.
In the class library proyect add a typed Dataset, and a class with a
method like this:
public MyDataset FakeFunction (MyDataset.ClassificationDataTable table)
{
return new MyDataset();
}
In the client app, call the method in this way (here's where the error
is):
MyDataset ds2 = MyClass.FakeFunction(ds.ClassificationDataTable);
That is you miss it doing copy-paste, you should have written:
MyDataset ds2 = MyClass.FakeFunction(ds.Classification);
And you got the evil messages, very descriptive, aren't they?
The curious thing about it is that if you place the class with the
method and the Dataset in the client app proyect, the error message is
accourate, so the error only happens when referencing another project:
error CS0572: 'ClassificationDataTable': cannot reference a type
through an expression; try
'ClassLibrary1.MyDataset.ClassificationDataTable' instead
2. fatal error C1001: INTERNAL COMPILER ERROR (compiler file 'f:
3. fatal error C1001: INTERNAL COMPILER ERROR (compiler file 'msc1.cpp', line 2701)
Hello
I'm using the latest version of Visual Studio 2003 version 7.1.3088, .net framework 1.1.4322 and I've some problem compiling a project, it give me the error
c:\build\main\.....\methodeInc.h(36) : fatal error C1001: INTERNAL COMPILER ERRO
(compiler file 'msc1.cpp', line 2701)
Please choose the Technical Support command on the Visual C++
Help menu, or open the Technical Support help file for more informatio
I was able to reproduce the behaviour with this very little example, hope it helps you to fix the compiler
class
int i
public
B(int f) : i(f) {}
}
typedef B TB
class TB; <-------- that's the line that cause the compiler erro
Best Regards
- mn
4. Compiler options (optimization) and INTERNAL COMPILER ERROR
5. fatal error C1001: INTERNAL COMPILER ERROR
I am running VC++ 6.0 w/ SP5 installed, MS W2K w/ SP4
installed on a standard IBM PC (256 MB RAM). Here is the
entire message (note that I don't have MSDN installed so I
cannot choose 'Technical Support' from the Help menu):
Compiling...
stl.cpp
c:\dev\test\stl\stl.cpp(6) : fatal error C1001: INTERNAL
COMPILER ERROR
(compiler file 'msc1.cpp', line 1794)
Please choose the Technical Support command on
the Visual C++
Help menu, or open the Technical Support help
file for more information
Error executing cl.exe.
Here is the (simplified) code reproducing this error:
// stl.cpp : Defines the entry point for the console
application.
//
#include <cstdlib>
#include <set>
using namespace std;
// Define a template class set of strings
typedef set<char *> Stringset;
//Define an iterator for template class set of string
typedef Stringset::iterator StringsetIt;
int main(int argc, char* argv[])
{
if ( argc > 2 ) {
char *pszSchedule = argv[ 1 ];
char *pszOutlet = argv[ 2 ];
Stringset
setControlNos;
StringsetIt
setControlNosItBeg, setControlNosIt,
setControlNosItEnd;
if (( pszSchedule ) && ( pszOutlet )) {
char pszNew[ 16 ] = { 0 };
pair prTest = { 0 };
strcpy( pszNew, pszSchedule );
strcat( pszNew, pszOutlet );
prTest = setControlNos.insert(
string( pszNew ) ); // returns true if insertion occurs
bFound = prTest.second;
//
... true if unique
}
{
setControlNosItBeg =
setControlNos.begin();
setControlNosItEnd =
setControlNos.end();
for ( setControlNosIt =
setControlNosItBeg ; setControlNosIt !=
setControlNosItEnd ; setControlNosIt ++ ) {
char *pStr = *
setControlNosIt;
if ( pStr ) delete pStr;
}
setControlNos.clear();
return ST_ST();
}
}
return 0;
}
6. Template, fatal error C1001: INTERNAL COMPILER ERROR
7. fatal error C1001: INTERNAL COMPILER ERROR
Funny, but this line (where n is IXMLDOMNodePtr):
CComVariant v = n->get_nodeValue;
causes VC6 internal compiler error:
fatal error C1001: INTERNAL COMPILER ERROR
The proper syntax I should use is:
CComVariant v = n->nodeValue;