You copied the Doc URL to your clipboard.


Defined in rt_misc.h, this function raises a signal to indicate a runtime anomaly. It is not part of the C library standard, but is supported by the ARM C library as an extension.


int __raise(int signal, int type);



is an integer that holds the signal number.


is an integer, string constant or variable that provides additional information about the circumstances that the signal was raised in, for some kinds of signal.


This function calls the normal C signal mechanism or the default signal handler.

You can replace the __raise() function by defining:

int __raise(int signal, int type);

This enables you to bypass the C signal mechanism and its data-consuming signal handler vector, but otherwise gives essentially the same interface as:

void __default_signal_handler(int signal, int type);

The default signal handler of the library uses the type parameter of __raise() to vary the messages it outputs.


There are three possibilities for a __raise() return condition:

no return

The handler performs a long jump or restart.


The signal was handled.


The calling code must pass that return value to the exit code. The default library implementation calls _sys_exit(rc) if __raise() returns a nonzero return code rc.