__attribute__((weak)) variable attribute
The declaration of a weak variable is permitted, and acts in a similar way to
In GNU mode:
extern int Variable_Attributes_weak_1 __attribute__((weak));
The equivalent in non-GNU mode is:
__weak int Variable_Attributes_weak_compare;
extern qualifier is required in GNU mode. In non-GNU mode the
compiler assumes that if the variable is not
extern then it is treated
like any other non weak variable.
This variable attribute is a GNU compiler extension that the ARM compiler supports.