//Look below simple code, it can not pass compile with C18 V3.0, but can pass with V2.44, V2.43, V2.40
#define fnc00(x,y) fnc01(x,y)
#define fnc01(x,y) fnc02(x,y)
#define fnc02(x,y) x=x+y
void main()
{
int a=0,b=0;
fnc02(a,b);
}
//The compiler error is Syntax Error
//If use #error fnc02(a,b) reaplace fnc02(a,b) then the result is:Error [1099] =+ ;
// so the the variable all disppeared, WHY 3.0 Version take this result?
//It is IMPROVEMENT or a BUG?
< Message edited by dawnfire -- Nov. 13, 2005 11:33:17 PM >