X-Git-Url: https://pd.if.org/git/?p=pdclib;a=blobdiff_plain;f=includes%2Fstdlib.h;h=c0efa68273dff2c5228ec7c517dfb06494ceacb4;hp=4518f2273111f603df9b25fb88d1c8283133288d;hb=c6c6780c8ee488461ffd0adbfdda60d1adce8c4e;hpb=ac3f809c3c10347c110fac3db93af0954eda98bb diff --git a/includes/stdlib.h b/includes/stdlib.h index 4518f22..c0efa68 100644 --- a/includes/stdlib.h +++ b/includes/stdlib.h @@ -56,21 +56,6 @@ long long abs( long long i ); ldiv_t div( long numer, long denom ); lldiv_t div( long long numer, long long denom ); -extern "C++" int atexit( void (*func) ( void ) ); -extern "C" int atexit( void (*func) ( void ) ); - -extern "C++" void * bsearch( const void * key, const void * base, - size_t nelem, size_t size, - int (*cmp) ( const void * ck, const void * ce ) ); -extern "C" void * bsearch( const void * key, const void * base, - size_t nelem, size_t size, - int (*cmp) ( const void * ck, const void * ce ) ); - -extern "C++" void qsort( void * base, size_t nelem, size_t size, - int (*cmp) ( const void * e1, const void * e2 ) ); -extern "C" void qsort( void * base, size_t nelem, size_t size, - int (*cmp) ( const void * e1, const void * e2 ) ); - #endif // __cplusplus // ---------------------------------------------------------------------------- @@ -119,14 +104,15 @@ void abort( void ); char * getenv( const char * name ); int system( const char * s ); -#ifndef __cplusplus - -int atexit( void (*func) ( void ) ); -void * bsearch( const void * key, const void * base, size_t nelem, size_t size, - int (*cmp) ( const void * ck, const void * ce) ); -void qsort( void * base, size_t nelem, size_t size, - int (*cmp) ( const void * e1, const void * e2) ); - +#ifdef __cplusplus +#define __cppwrapper( x ) extern "C++" x \ +extern "C" x +#else +#define __cppwrapper( x ) x #endif // __cplusplus +__cppwrapper( int atexit( void (*func) ( void ) ) { /* TODO */ }; ) +__cppwrapper( void * bsearch( const void * key, const void * base, size_t nelem, size_t size, int (*cmp) ( const void * ck, const void * ce) ) { /* TODO */ }; ) +__cppwrapper( void qsort( void * base, size_t nelem, size_t size, int (*cmp) ( const void * e1, const void * e2) ) { /* TODO */ }; ) + #endif // __STDLIB_H