1 /* -*- c++ -*- */ 2 /* 3 * Copyright (C) 2009 The Android Open Source Project 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: 9 * * Redistributions of source code must retain the above copyright 10 * notice, this list of conditions and the following disclaimer. 11 * * Redistributions in binary form must reproduce the above copyright 12 * notice, this list of conditions and the following disclaimer in 13 * the documentation and/or other materials provided with the 14 * distribution. 15 * 16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 17 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 18 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 19 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 20 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 22 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 23 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 24 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 26 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 */ 29 30 #ifndef BIONIC_LIBSTDCPP_INCLUDE_CSTDLIB__ 31 #define BIONIC_LIBSTDCPP_INCLUDE_CSTDLIB__ 32 33 /* 34 * Standard C++ Library wrapper around the C stdlib.h header file. 35 */ 36 #include <stdlib.h> 37 38 extern "C++" { 39 40 namespace std { 41 42 using ::exit; 43 using ::abort; 44 using ::atexit; 45 #if 0 /* MISSING FROM BIONIC */ 46 using ::on_exit; 47 #endif 48 49 using ::getenv; 50 using ::putenv; 51 using ::setenv; 52 using ::unsetenv; 53 using ::clearenv; 54 55 using ::mktemp; 56 using ::mkstemp; 57 58 using ::strtol; 59 using ::strtoll; 60 using ::strtoul; 61 using ::strtoull; 62 using ::strtod; 63 using ::strtof; 64 65 using ::atoi; 66 using ::atol; 67 using ::atoll; 68 using ::atof; 69 70 using ::abs; 71 using ::labs; 72 using ::llabs; 73 74 using ::realpath; 75 using ::system; 76 77 using ::bsearch; 78 using ::qsort; 79 80 using ::jrand48; 81 using ::mrand48; 82 using ::nrand48; 83 using ::lrand48; 84 using ::seed48; 85 using ::srand48; 86 87 using ::rand; 88 using ::srand; 89 using ::random; 90 using ::srandom; 91 92 using ::malloc; 93 using ::free; 94 using ::calloc; 95 using ::realloc; 96 97 using ::unlockpt; 98 using ::ptsname; 99 using ::ptsname_r; 100 using ::getpt; 101 using ::grantpt; 102 103 using ::div_t; 104 using ::div; 105 using ::ldiv_t; 106 using ::ldiv; 107 using ::lldiv_t; 108 using ::lldiv; 109 110 using ::mblen; 111 using ::mbstowcs; 112 using ::mbtowc; 113 using ::wctomb; 114 using ::wcstombs; 115 } // namespace std 116 117 } // extern C++ 118 119 #endif // BIONIC_LIBSTDCPP_INCLUDE_CSTDLIB__ 120