In my project I include stddef.h but find error on __CX2__
it's a bug or not
I try to modify it to #if defined (__CX2__) and passed.
what mains about __CX2__ ?
"But I can confirm that it most certainly does!"
What is your opinion regarding whether it should or should not issue a warning in this case?
I accept what you say that this is a preprocessor issue - so the compiler, strictly speaking, has no business making any comment about it.
But I think a warning here is helpful, and this particular warning has obviously been created for this very case!
http://www.keil.com/support/man/docs/c51/c51_c322.htm
In fact warnings 321-327 all seem to be to do with preprocessor issues...
They are also at the very end of the list of diagnostics - which suggests they are (relatively) new and, perhaps, relatively untested...
Maybe this was actually a test-case for warning 322 that slipped into the release...
;-)
preprocessor issue - so the compiler, strictly speaking, has no business making any comment about it.
Not quite, since the preprocessor is built into the compiler these days. Strictly speaking the compiler, while outputting a diagnostic about this, is the preprocessor.
CX2 is a new mode for SmartCards that is currently in development. The new STDLIB file accicently went into the release without carefully checking of the impact.
Correct is:
#ifdef __CX2__