This diagnostic rule is based on the software development guidelines developed by MISRA (Motor Industry Software Reliability Association).
Standard library functions of the header files <signal.h> / <csignal> may be dangerous. Their behavior depends on the implementation, and their use may cause undefined behavior.
The use of signal handlers in a multithreaded program, for example, could be one of the reasons for undefined behavior. Other reasons you will find here.
The analyzer issues this warning when it detects the following functions:
Here is an example of code triggering this warning:
#include <signal.h>
void handler(int sig) { .... }
void foo()
{
signal(SIGINT, handler);
}
This diagnostic is classified as:
|