Posts: 3
Threads: 3
Joined: Apr 2014
Reputation:
0
Hello.
I have a question about rule 21.8.
_Exit Function that were added in C99 also has implementation-defined behavior.
Is this not included?
Best regards,
Kazuhiro Tsukushiro
<t></t>
Posts: 632
Threads: 18
Joined: Jan 2006
Reputation:
1
It was a conscious decision not to include _Exit in this rule. _Exit() differs from exit() in that no atexit-registered handlers are called prior to program termination. This means that the undefined behaviour that can occur with exit() isn't possible with _Exit().
The implementation-defined behaviour remains a possibility (e.g. the status code returned to the environment, whether temporary files are deleted or not, whether streams are flushed and/or closed) but this was considered not to be a strong enough reason to ban _Exit().
Posted by and on behalf of the MISRA C Working Group
Posts: 632
Threads: 18
Joined: Jan 2006
Reputation:
1
Subsequent to the previous answer, MISRA C:2012 Amendment 3 added _Exit() to Rule 21.8
Posted by and on behalf of the MISRA C Working Group