mirror of
https://github.com/reactos/reactos.git
synced 2024-11-20 14:30:57 +00:00
55 lines
1.6 KiB
C
55 lines
1.6 KiB
C
/*
|
|
* COPYRIGHT: See COPYING in the top level directory
|
|
* PROJECT: ReactOS system libraries
|
|
* FILE: lib/sdk/crt/misc/amsg.c
|
|
* PURPOSE: Print runtime error messages
|
|
* PROGRAMER: Ariadne
|
|
* UPDATE HISTORY:
|
|
* 28/12/98: Created
|
|
*/
|
|
|
|
#include <precomp.h>
|
|
|
|
static char *__rt_err_msg[] =
|
|
{
|
|
"stack overflow", /* _RT_STACK */
|
|
"null pointer assignment", /* _RT_NULLPTR */
|
|
"floating point not loaded", /* _RT_FLOAT */
|
|
"integer divide by 0", /* _RT_INTDIV */
|
|
"not enough space for arguments", /* _RT_SPACEARG */
|
|
"not enough space for environment", /* _RT_SPACEENV */
|
|
"abnormal program termination", /* _RT_ABORT */
|
|
"not enough space for thread data", /* _RT_THREAD */
|
|
"unexpected multithread lock error", /* _RT_LOCK */
|
|
"unexpected heap error", /* _RT_HEAP */
|
|
"unable to open console device", /* _RT_OPENCON */
|
|
"non-continuable exception", /* _RT_NONCONT */
|
|
"invalid exception disposition", /* _RT_INVALDISP */
|
|
"not enough space for _onexit/atexit table", /* _RT_ONEXIT */
|
|
"pure virtual function call", /* _RT_PUREVIRT */
|
|
"not enough space for stdio initialization", /* _RT_STDIOINIT */
|
|
"not enough space for lowio initialization", /* _RT_LOWIOINIT */
|
|
};
|
|
|
|
|
|
/*
|
|
* @implemented
|
|
*/
|
|
int _aexit_rtn(int exitcode)
|
|
{
|
|
_exit(exitcode);
|
|
return 0;
|
|
}
|
|
|
|
/*
|
|
* @implemented
|
|
*/
|
|
void _amsg_exit(int errnum)
|
|
{
|
|
if ((errnum >=0) && (errnum < sizeof(__rt_err_msg)/sizeof(__rt_err_msg[0])))
|
|
fprintf(stderr, "runtime error - %s\n", __rt_err_msg[errnum]);
|
|
else
|
|
fprintf(stderr, "runtime error - %d\n", errnum);
|
|
_exit(-1);
|
|
}
|
|
|