mirror of
https://github.com/justinian/jsix.git
synced 2025-12-10 00:14:32 -08:00
[libc] Change exit status from int to long
Slightly breaking the C standard, but in a way that's unlikely to break things - allow 64-bit process exit status codes.
This commit is contained in:
@@ -66,10 +66,10 @@ void* pvalloc(size_t);
|
||||
_Noreturn void abort( void );
|
||||
int atexit( void (*func)(void) );
|
||||
int at_quick_exit( void (*func)(void) );
|
||||
_Noreturn void exit( int status );
|
||||
_Noreturn void _Exit( int status );
|
||||
_Noreturn void exit( long status );
|
||||
_Noreturn void _Exit( long status );
|
||||
char *getenv( const char *name );
|
||||
_Noreturn void quick_exit( int status );
|
||||
_Noreturn void quick_exit( long status );
|
||||
int system( const char *string );
|
||||
|
||||
// Searching and sorting utilities
|
||||
|
||||
@@ -21,7 +21,7 @@ size_t quick_exit_count = 0;
|
||||
atexit_item quick_exit_array[max_atexit];
|
||||
|
||||
[[noreturn]] inline void
|
||||
exit_with_callbacks(int status, atexit_item *cbs, size_t count)
|
||||
exit_with_callbacks(long status, atexit_item *cbs, size_t count)
|
||||
{
|
||||
for (size_t i = count - 1; i < count; --i) {
|
||||
atexit_item &item = cbs[i];
|
||||
@@ -61,13 +61,13 @@ int at_quick_exit( void (*func)(void) )
|
||||
}
|
||||
|
||||
void
|
||||
exit(int status)
|
||||
exit(long status)
|
||||
{
|
||||
exit_with_callbacks(status, atexit_array, atexit_count);
|
||||
}
|
||||
|
||||
void
|
||||
quick_exit(int status)
|
||||
quick_exit(long status)
|
||||
{
|
||||
exit_with_callbacks(status, quick_exit_array, quick_exit_count);
|
||||
}
|
||||
@@ -75,11 +75,11 @@ quick_exit(int status)
|
||||
void
|
||||
abort()
|
||||
{
|
||||
_Exit(INT32_MIN);
|
||||
_Exit(INT64_MIN);
|
||||
}
|
||||
|
||||
void
|
||||
_Exit( int status )
|
||||
_Exit( long status )
|
||||
{
|
||||
j6_process_exit(status);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user