__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.