/*
    AUTOMATICALLY GENERATED BY tspec 2.10
    API SUBSET: iso99:stdlib.h (VERSION 1.0)
*/

#ifndef __TDF_ISO99_STDLIB_H
#define __TDF_ISO99_STDLIB_H

#ifdef __cplusplus
extern "C" {
#endif

#pragma TenDRA declaration block api__iso99__stdlib begin

#pragma extend interface "../shared/iso99.api/null.h"
#ifndef __TDF_ISO99_STDDEF_H_SIZE_T
#pragma extend interface "../shared/iso99.api/size_t.h"
#endif /* __TDF_ISO99_STDDEF_H_SIZE_T */
#ifndef __TDF_ISO99_STDDEF_H_WCHAR_T
#pragma extend interface "../shared/iso99.api/wchar_t.h"
#endif /* __TDF_ISO99_STDDEF_H_WCHAR_T */
#pragma token STRUCT div_t # iso99.stdlib.div_t
#pragma token MEMBER int : div_t : quot # iso99.stdlib.div_t.quot
#pragma token MEMBER int : div_t : rem # iso99.stdlib.div_t.rem
#pragma token STRUCT ldiv_t # iso99.stdlib.ldiv_t
#pragma token MEMBER long : ldiv_t : quot # iso99.stdlib.ldiv_t.quot
#pragma token MEMBER long : ldiv_t : rem # iso99.stdlib.ldiv_t.rem
#pragma token STRUCT lldiv_t # iso99.stdlib.lldiv_t
#pragma token MEMBER long long : lldiv_t : quot # iso99.stdlib.lldiv_t.quot
#pragma token MEMBER long long : lldiv_t : rem # iso99.stdlib.lldiv_t.rem
#pragma token EXP const : int : EXIT_FAILURE # iso99.stdlib.EXIT_FAILURE
#pragma token EXP const : int : EXIT_SUCCESS # iso99.stdlib.EXIT_SUCCESS
#pragma token EXP const : int : RAND_MAX # iso99.stdlib.RAND_MAX
#pragma token EXP rvalue : size_t : MB_CUR_MAX # iso99.stdlib.MB_CUR_MAX
#pragma token FUNC double (const char *) : atof # iso99.stdlib.atof
#pragma token FUNC int (const char *) : atoi # iso99.stdlib.atoi
#pragma token FUNC long (const char *) : atol # iso99.stdlib.atol
#pragma token FUNC long long (const char *) : atoll # iso99.stdlib.atoll
#pragma token FUNC double (const char * restrict, char ** restrict) : strtod # iso99.stdlib.strtod
#pragma token FUNC float (const char * restrict, char ** restrict) : strtof # iso99.stdlib.strtof
#pragma token FUNC long double (const char * restrict, char ** restrict) : strtold # iso99.stdlib.strtold
#pragma token FUNC long (const char * restrict, char ** restrict, int) : strtol # iso99.stdlib.strtol
#pragma token FUNC long long (const char * restrict, char ** restrict, int) : strtoll # iso99.stdlib.strtoll
#pragma token FUNC unsigned long (const char * restrict, char ** restrict, int) : strtoul # iso99.stdlib.strtoul
#pragma token FUNC unsigned long long (const char * restrict, char ** restrict, int) : strtoull # iso99.stdlib.strtoull
#pragma token FUNC int (void) : rand # iso99.stdlib.rand
#pragma token FUNC void (unsigned int) : srand # iso99.stdlib.srand
#pragma token FUNC void * (size_t, size_t) : calloc # iso99.stdlib.calloc
#pragma token FUNC void (void *) : free # iso99.stdlib.free
#pragma token FUNC void * (size_t) : malloc # iso99.stdlib.malloc
#pragma token FUNC void * (void *, size_t) : realloc # iso99.stdlib.realloc
#pragma token FUNC void (void) : abort # iso99.stdlib.abort
#pragma token FUNC int (void (*) (void)) : atexit # iso99.stdlib.atexit
#pragma token FUNC void (int) : exit # iso99.stdlib.exit
#pragma token FUNC void (int) : _Exit # iso99.stdlib._Exit
#pragma token FUNC char * (const char *) : getenv # iso99.stdlib.getenv
#pragma token FUNC int (const char *) : system # iso99.stdlib.system
#pragma token FUNC void * (const void *, const void *, size_t, size_t, int (*) (const void *, const void *)) : bsearch # iso99.stdlib.bsearch
#pragma token FUNC void (void *, size_t, size_t, int (*) (const void *, const void *)) : qsort # iso99.stdlib.qsort
#pragma token FUNC int (int) : abs # iso99.stdlib.abs
#pragma token FUNC long (long) : labs # iso99.stdlib.labs
#pragma token FUNC long long (long long) : llabs # iso99.stdlib.llabs
#pragma token FUNC div_t (int, int) : div # iso99.stdlib.div
#pragma token FUNC ldiv_t (long, long) : ldiv # iso99.stdlib.ldiv
#pragma token FUNC lldiv_t (long long, long long) : lldiv # iso99.stdlib.lldiv
#pragma token FUNC int (const char *, size_t) : mblen # iso99.stdlib.mblen
#pragma token FUNC int (wchar_t * restrict, const char * restrict, size_t) : mbtowc # iso99.stdlib.mbtowc
#pragma token FUNC int (char *, wchar_t) : wctomb # iso99.stdlib.wctomb
#pragma token FUNC size_t (wchar_t * restrict, const char * restrict, size_t) : mbstowcs # iso99.stdlib.mbstowcs
#pragma token FUNC size_t (char * restrict, const wchar_t * restrict, size_t) : wcstombs # iso99.stdlib.wcstombs

#pragma interface div_t div_t.quot div_t.rem ldiv_t ldiv_t.quot ldiv_t.rem
#pragma interface lldiv_t lldiv_t.quot lldiv_t.rem EXIT_FAILURE EXIT_SUCCESS
#pragma interface RAND_MAX MB_CUR_MAX atof atoi atol atoll strtod strtof
#pragma interface strtold strtol strtoll strtoul strtoull rand srand calloc
#pragma interface free malloc realloc abort atexit exit _Exit getenv system
#pragma interface bsearch qsort abs labs llabs div ldiv lldiv mblen mbtowc
#pragma interface wctomb mbstowcs wcstombs

#pragma TenDRA declaration block end

#ifdef __cplusplus
}
#endif

#endif /* __TDF_ISO99_STDLIB_H */
