Okay, maybe I'm a little sadistic and I made stupid cut-and-paste, but I did get my Windows XP system to put up the following message: "C251 Compiler has encountered a problem and needs to close. We are sorry for the inconvenience. If you were in the middle of something, the information you were working on might be lost." I had absent-mindedly put some code above a local variable declaration (something I do on purpose in Visual C++ all the time) and the C251 compiler choked. Hard! The LST file was truncated, but did contain the error messages so it was easy to fix and I didn't lose any anything. For whatever it's worth. Joel
I had absent-mindedly put some code above a local variable declaration (something I do on purpose in Visual C++ all the time) That's because MSVC is also a C++ compiler and will allow you to put code before definitions. In ISO C this is always illegal. Admittedly, the compiler shouldn't crash though.
void foo(void) { int idx; idx = 12; int count; <--- Bang! Illegal in C, but fine in C++. }
Dear Joel, please send some sort of test code to: support.intl@keil.com. In this way we can fix the problem you are describing so that a correct error message is displayed. Thank you for your co-operation.
I apologize for not replying sooner. And I apologize for not putting in the code that caused the problem. I couldn't put my entire source code (>500kb) in my original message and I didn't have time that day to isolate the true culprit. It was repeatable as it took me several attempts to figure out what was happening. And now I apologize that I can't duplicate the problem. No matter what I throw at your compiler today, it gives me the correct error messages. Keep up the good work. Joel