3.12 __attribute__((nothrow)) function attribute
This attribute asserts that a call to a function never results in a C++ exception being sent from the callee to the caller.
The ARM library headers automatically add this qualifier to declarations of C
functions that, according to the ISO C Standard, can never throw an exception.
However, there are some restrictions on the unwinding tables produced for the C
library functions that might throw an exception in a C++ context, for example,
If the compiler knows that a function can never throw an exception, it might be able to
generate smaller exception-handling tables for callers of that function.