Specifications

CAVR-4
Part 2. Compiler reference
The preprocessor
233
_Pragma()
The preprocessor operator _Pragma can be used in defines and has the equivalent effect
of the
#pragma directive. The syntax is:
_Pragma("string")
where string follows the syntax for the corresponding pragma directive. For example:
#if NO_OPTIMIZE
#define NOOPT _Pragma("optimize=2")
#else
#define NOOPT
#endif
See the chapter Pragma directives.
Note: The
-e option—enable language extensions—is not required.
__PRETTY_FUNCTION__
Use this symbol inside a function body to make it expand into a string, with the function
name including parameter types and return type as context. The result might, for
example, look like this:
"void func(char)"
This symbol is useful for assertions and other trace utilities. These symbols require that
language extensions are enabled, see -e, page 179.
See also, __func__, __FUNCTION__, page 230.
__STDC__
This predefined symbol expands to the number 1. This symbol can be tested with
#ifdef to detect whether the compiler in use adheres to ISO/ANSI C.
__STDC_VERSION__
ISO/ANSI C and version identifier.
This predefined symbol expands to
199409L.
Note: This predefined symbol does not apply in EC++ mode.
__TID__
Target identifier for the AVR IAR C/C++ Compiler.
Expands to the target identifier which contains the following parts:
A target identifier (t) unique for each IAR compiler. For the AVR microcontroller,
the target identifier is
90.
The value (c) of the --cpu or -v option.