A SERVICE OF

logo

CAVR-4
Part 2. Compiler reference
The preprocessor
229
*
This symbol is required by the ISO/ANSI standard.
Note: The predefined symbol __TID__ is available for backward compatibility. We
recommend that you use the symbols
__ICCAVR__ and __MEMORY_MODEL__ instead.
DESCRIPTIONS OF PREDEFINED SYMBOLS
The following section gives reference information about each predefined symbol.
__ALIGNOF__()
The __ALIGNOF__ operator is used to access the alignment of an object. It takes one of
two forms:
__ALIGNOF__ (type)
__ALIGNOF__ (expression)
In the second form, the expression is not evaluated.
__BASE_FILE__
Use this symbol to identify which file is currently being compiled. This symbol expands
to the name of that file, unless the file is a header file. In that case, the name of the file
that includes the header file is identified.
See also, __FILE__, page 230.
__CORE__
This symbol identifies the used processor variant.
This symbol expands to a number which corresponds to the processor option
-vn in use.
__CPU__
Use this symbol to identify the used processor variant.
This symbol expands to a number which corresponds to the processor option
-vn in use.
__cplusplus
This predefined symbol expands to the number 199711L when the compiler runs in any
of the C++ modes. When the compiler runs in ISO/ANSI C mode, the symbol is
undefined.
This symbol can be used with
#ifdef to detect whether the compiler accepts C++ code.
It is particularly useful when creating header files that are to be shared by C and C++
code.