Cider Isn't Darwin Emulation, Really
Something went wrong. Try again.
4.7 kB · 164 lines
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165// -*- C++ -*-//===--------------------------- cstdlib ----------------------------------===////// The LLVM Compiler Infrastructure//// This file is dual licensed under the MIT and the University of Illinois Open// Source Licenses. See LICENSE.TXT for details.////===----------------------------------------------------------------------===//#ifndef _LIBCPP_CSTDLIB#define _LIBCPP_CSTDLIB/* cstdlib synopsisMacros: EXIT_FAILURE EXIT_SUCCESS MB_CUR_MAX NULL RAND_MAXnamespace std{Types: size_t div_t ldiv_t lldiv_t // C99double atof (const char* nptr);int atoi (const char* nptr);long atol (const char* nptr);long long atoll(const char* nptr); // C99double strtod (const char* restrict nptr, char** restrict endptr);float strtof (const char* restrict nptr, char** restrict endptr); // C99long double strtold (const char* restrict nptr, char** restrict endptr); // C99long strtol (const char* restrict nptr, char** restrict endptr, int base);long long strtoll (const char* restrict nptr, char** restrict endptr, int base); // C99unsigned long strtoul (const char* restrict nptr, char** restrict endptr, int base);unsigned long long strtoull(const char* restrict nptr, char** restrict endptr, int base); // C99int rand(void);void srand(unsigned int seed);void* calloc(size_t nmemb, size_t size);void free(void* ptr);void* malloc(size_t size);void* realloc(void* ptr, size_t size);void abort(void);int atexit(void (*func)(void));void exit(int status);void _Exit(int status);char* getenv(const char* name);int system(const char* string);void* bsearch(const void* key, const void* base, size_t nmemb, size_t size, int (*compar)(const void *, const void *));void qsort(void* base, size_t nmemb, size_t size, int (*compar)(const void *, const void *));int abs( int j);long abs( long j);long long abs(long long j); // C++0Xlong labs( long j);long long llabs(long long j); // C99div_t div( int numer, int denom);ldiv_t div( long numer, long denom);lldiv_t div(long long numer, long long denom); // C++0Xldiv_t ldiv( long numer, long denom);lldiv_t lldiv(long long numer, long long denom); // C99int mblen(const char* s, size_t n);int mbtowc(wchar_t* restrict pwc, const char* restrict s, size_t n);int wctomb(char* s, wchar_t wchar);size_t mbstowcs(wchar_t* restrict pwcs, const char* restrict s, size_t n);size_t wcstombs(char* restrict s, const wchar_t* restrict pwcs, size_t n);int at_quick_exit(void (*func)(void)) // C++11void quick_exit(int status); // C++11void *aligned_alloc(size_t alignment, size_t size); // C11} // std*/#include <__config>#include <stdlib.h>#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)#pragma GCC system_header#endif#ifdef __GNUC__#define _LIBCPP_UNREACHABLE() __builtin_unreachable()#else#define _LIBCPP_UNREACHABLE() _VSTD::abort()#endif_LIBCPP_BEGIN_NAMESPACE_STDusing ::size_t;using ::div_t;using ::ldiv_t;#ifndef _LIBCPP_HAS_NO_LONG_LONGusing ::lldiv_t;#endif // _LIBCPP_HAS_NO_LONG_LONGusing ::atof;using ::atoi;using ::atol;#ifndef _LIBCPP_HAS_NO_LONG_LONGusing ::atoll;#endif // _LIBCPP_HAS_NO_LONG_LONGusing ::strtod;using ::strtof;using ::strtold;using ::strtol;#ifndef _LIBCPP_HAS_NO_LONG_LONGusing ::strtoll;#endif // _LIBCPP_HAS_NO_LONG_LONGusing ::strtoul;#ifndef _LIBCPP_HAS_NO_LONG_LONGusing ::strtoull;#endif // _LIBCPP_HAS_NO_LONG_LONGusing ::rand;using ::srand;using ::calloc;using ::free;using ::malloc;using ::realloc;using ::abort;using ::atexit;using ::exit;using ::_Exit;#ifndef _LIBCPP_WINDOWS_STORE_APPusing ::getenv;using ::system;#endifusing ::bsearch;using ::qsort;using ::abs;using ::labs;#ifndef _LIBCPP_HAS_NO_LONG_LONGusing ::llabs;#endif // _LIBCPP_HAS_NO_LONG_LONGusing ::div;using ::ldiv;#ifndef _LIBCPP_HAS_NO_LONG_LONGusing ::lldiv;#endif // _LIBCPP_HAS_NO_LONG_LONGusing ::mblen;using ::mbtowc;using ::wctomb;using ::mbstowcs;using ::wcstombs;#ifdef _LIBCPP_HAS_QUICK_EXITusing ::at_quick_exit;using ::quick_exit;#endif#ifdef _LIBCPP_HAS_C11_FEATURESusing ::aligned_alloc;#endif_LIBCPP_END_NAMESPACE_STD#endif // _LIBCPP_CSTDLIB