J
jacob navia
Dan Pop said:In <[email protected]> "jacob navia"
For example, you're not allowed to invade the program name space with
identifiers like WINVER and WIN32 (but _WIN32 and _WIN32_IE are OK) and
int c = operator+(a,b);
*must* be parsed as
int c = operator + (a,b);
where operator is a program defined identifier (this is a perfectly
valid C expression, BTW).
Otherwise, your compiler is not a conforming C compiler.
Yes. Here is a session transcript
#include <stdio.h>
int main(void)
{
int operator = 2;
int c = operator+(2,3);
printf("c is %d\n",c);
return 0;
}
D:\lcc\mc50\test>lc top.c
D:\lcc\mc50\test>top
c is 5
D:\lcc\mc50\test>
I have really worked on that...
Besides, I repeat ALL extensions will be disabled with the -ansic
flag.
In that case:
1) No operator overloading
2) No 350 bit precision floats (long double still works of course)
3) No generic functions
4) No default arguments.
It is possible that some problems could appear with complex numbers,
since
internally they use operator overloading. In that case please write a
bug report and I will fix it ASAP.
Thanks for your input Dan.