Archived

This topic is now archived and is closed to further replies.

daher

INTERNAL COMPILER ERROR

Recommended Posts

hi, i got this error:
  
/**********************************************
F:\Daher Engine\Main\main.cpp(200) : fatal error C1001: INTERNAL COMPILER ERROR
  (compiler file ''E:\8168\vc98\p2\src\P2\main.c'', line 494)
    Please choose the Technical Support command on the Visual C++
    Help menu, or open the Technical Support help file for more information
**********************************************/
  
the only new thing in that line (main.cpp(200)) is that i tried to use the method c_str of a std::string. any ideas?
If you see this over someone''s head, then its me!
The Railgun Master
DaHeR

Share this post


Link to post
Share on other sites
Hey, I don''t know if it helps. But sometimes when I forget to put () at the end of a function or method call, I get that error. I thought it was the compiler''s problem. But it''s usually not. I guess what it should mean is it does not know how to classify the error or something.

Cocyen

Share this post


Link to post
Share on other sites
hey
yeah i've seen google and thats why i've posted
but the other problem is that most of them said
quote:

This error occurs only on machines with the Windows 95 or Windows 98 operating system.


and i have winXP pro. donno what to do .

Edit: oops, i didn't see that post "Cyelince", thank you. yeah this solved the prob


If you see this over someone's head, then its me!
The Railgun Master
DaHeR


[edited by - daher on March 21, 2002 11:30:54 PM]

Share this post


Link to post
Share on other sites
strange. I normally get something like "Term does not evaluate to a function".

------------------------------
Baldur K
"Hey! I hate these Microsoft guys! What a rotten compiler! It only accepts 16,384 local variables in a function!"

Share this post


Link to post
Share on other sites
Yeah, I get the "Term does not evaluate to a function" error too, not an internal compiler error...

Death of one is a tragedy, death of a million is just a statistic.

Share this post


Link to post
Share on other sites
In my case i was calling the method of a func, here is an example a() returns str::string so the method c_str used without (). Try to compile the code:

      
#include <iostream>
using namespace std;

string a(){
string s="test";
return s;
}

main(){
cout << a().c_str;
return false;
}

I think this is a BUG!!
what do you think guys?

If you see this over someone's head, then its me!
The Railgun Master
DaHeR


[edited by - daher on March 23, 2002 10:35:17 AM]

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
MSVC++ 6 is well known to choke on things to do with templates. I would use C++ library algorithms more if it wasn''t for the fact that I have to reset the computer every time the compiler screws up.

Normally, it''s arrogant to think the compiler is wrong. Not here.

Share this post


Link to post
Share on other sites
Anon the problem is with Daher''s code. He''s treating a function like a variable.

Fair enough, it should return some sensible error, not internal compiler error, but that doesn''t fix the problem.

Daher, please, next time you get an error on a function and you don''t understand why, check some documentation on how the function should be used.


Helpful links:
How To Ask Questions The Smart Way | Google can help with your question | Search MSDN for help with standard C or Windows functions

Share this post


Link to post
Share on other sites
he realised the error, but he was pointing out that MSVC++ should just say "term does not evaluate to a function" instead of having a fit .

------------------------------
Baldur K
"Hey! I hate these Microsoft guys! What a rotten compiler! It only accepts 16,384 local variables in a function!"

Share this post


Link to post
Share on other sites
quote:
Original post by baldurk
he realised the error, but he was pointing out that MSVC++ should just say "term does not evaluate to a function" instead of having a fit .


Yeah that was my point, thanx for explaning
quote:
Posted by siaspete
Daher, please, next time you get an error on a function and you don't understand why, check some documentation on how the function should be used.


siaspete, please, next time you wanna post a message, read other people's posts and understand'em before doing so




If you see this over someone's head, then its me!
The Railgun Master
DaHeR



[edited by - daher on March 23, 2002 12:05:05 PM]

Share this post


Link to post
Share on other sites
quote:

siaspete, please, next time you wanna post a message, read other people''s posts and understand''em before doing so



I did, but you still had not acknowledged your code problem. The way I see it, if you''re mistreating the language like you were, be prepared for the compiler to freak out.


Helpful links:
How To Ask Questions The Smart Way | Google can help with your question | Search MSDN for help with standard C or Windows functions

Share this post


Link to post
Share on other sites
quote:
Original post by siaspete
I did, but you still had not acknowledged your code problem. The way I see it, if you''re mistreating the language like you were, be prepared for the compiler to freak out.


Helpful links:
How To Ask Questions The Smart Way | Google can help with your question | Search MSDN for help with standard C or Windows functions



daher did write "oops, i didn''t see that post ''Cyelince'', thank you. yeah this solved the prob". What more does he need to say to acknowledge the problem?

It''s easy to miss () in a function call and good compilers do not freak out on this. I tried the code on the Borland compiler and got the following error message:

"Error E2235 test.cpp 11: Member function must be called or its address taken in function main()"

I agree with daher that it is a bug. Generally speaking, can an "INTERNAL COMPILER ERROR" be something else than a bug?

Share this post


Link to post
Share on other sites