Hi,
I am use the ## as follows
#define ADC_SRV_DEV 1
#define ADCCON(dev, chan, reg) AD##dev##CON##chan##reg
then when I give ADCCON(ADC_SRV_DEV, 1, bits.FORM) = 3; // this is equavalent to AD1CON1bits.FORM = 3;
But for some reason it is taking it as ADADC_SRV_DEVCON1bits
Please help
All preprocessors are created equal?
No. But all that are unequal to the Keil preprocessors, regarding the issue at hand, are irrelevant anyway, because they're even more off-topic than the OP.
Or, possibly, not:
I've worked on projects where the "native" preprocessor had some limitations, so the preprocessor from a different compiler was used...
One project used the Borland preprocessor to pre-process files for a Microtec compiler.