| |||
| Home > Compiler-specific Features > Variable attributes > __attribute__((used)) variable attribute | |||
This variable attribute informs the compiler that a static variable is to be retained in the object file, even if it is unreferenced.
Static variables marked as used are emitted to a single section,
in the order they are declared. You can specify the section that
variables are placed in using __attribute__((section(".name")))
Data marked with __attribute__((used)) is
tagged in the object file to avoid removal by linker unused section
removal.
This variable attribute is a GNU compiler extension that is supported by the ARM compiler.
Static functions can also be marked as used using __attribute__((used)).
static int lose_this = 1; static int keep_this __attribute__((used)) = 2; // retained in object file static int keep_this_too __attribute__((used)) = 3; // retained in object file