_exit in libgloss\libnosys\_exit.c
Dominic Plunkett
dominic.plunkett@cambrionix.com
Tue Apr 21 06:14:00 GMT 2015
Newbie here so please be gentle.
In libgloss\libnosys\_exit.c has the following code :
/* Stub version of _exit. */
#include <limits.h>
#include "config.h"
#include <_ansi.h>
#include <_syslist.h>
_VOID
_DEFUN (_exit, (rc),
int rc)
{
/* Default stub just causes a divide by 0 exception. */
int x = rc / INT_MAX;
x = 4 / x;
/* Convince GCC that this function never returns. */
for (;;)
;
}
I think this following may exist :
1) If rc = INT_MAX then exception isn't raised, unlikely to be a real problem
2) If the compiler is any good then x will be optimised out.
Is there some better code to use here ?
Thanks
More information about the Newlib
mailing list