Microchip Technology XC8 Standard Compiler (Workstation) SW006021-1 SW006021-1 User Manual
Product codes
SW006021-1
Common C Interface
2012 Microchip Technology Inc.
DS52053A-page 37
2.5.15.1
EXAMPLE
The following shows code which is conditionally compiled dependent on the device
having EEPROM memory.
having EEPROM memory.
#ifdef __XC16__
void __interrupt(__auto_psv__) myIsr(void)
#else
void __interrupt(low_priority) myIsr(void)
#endif
2.5.15.2
DIFFERENCES
Some of these CCI macros are new (for example __CCI__), and others have different
names to previous symbols with identical meaning (for example __18F452 is now
__18F452__
names to previous symbols with identical meaning (for example __18F452 is now
__18F452__
).
2.5.15.3
MIGRATION TO THE CCI
Any code which uses compiler-defined macros will need review. Old macros will con-
tinue to work as expected, but they are not compliant with the CCI.
tinue to work as expected, but they are not compliant with the CCI.
2.5.15.4
CAVEATS
None.
__CCI__
Compiler is CCI compliant and CCI enforce-
ment is enabled
ment is enabled
__CCI__
__XC##__
The specific XC compiler used (## can be 8,
16
16
or 32)
__XC8__
__DEVICEFAMILY__
The family of the selected target device
__dsPIC30F__
__DEVICENAME__
The selected target device name
__18F452__
TABLE 2-1:
MANIFEST MACROS DEFINED BY THE CCI
Name
Meaning if defined
Example