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 */
30 #ifndef BIONIC_LIBSTDCPP_INCLUDE_CSTDLIB__
31 #define BIONIC_LIBSTDCPP_INCLUDE_CSTDLIB__
33 /*
34 * Standard C++ Library wrapper around the C stdlib.h header file.
35 */
36 #include <stdlib.h>
38 extern "C++" {
40 namespace std {
42 using ::exit;
43 using ::abort;
44 using ::atexit;
45 #if 0 /* MISSING FROM BIONIC */
46 using ::on_exit;
47 #endif
49 using ::getenv;
50 using ::putenv;
51 using ::setenv;
52 using ::unsetenv;
53 using ::clearenv;
55 using ::mktemp;
56 using ::mkstemp;
58 using ::strtol;
59 using ::strtoll;
60 using ::strtoul;
61 using ::strtoull;
62 using ::strtod;
63 using ::strtof;
65 using ::atoi;
66 using ::atol;
67 using ::atoll;
68 using ::atof;
70 using ::abs;
71 using ::labs;
72 using ::llabs;
74 using ::realpath;
75 using ::system;
77 using ::bsearch;
78 using ::qsort;
80 using ::jrand48;
81 using ::mrand48;
82 using ::nrand48;
83 using ::lrand48;
84 using ::seed48;
85 using ::srand48;
87 using ::rand;
88 using ::srand;
89 using ::random;
90 using ::srandom;
92 using ::malloc;
93 using ::free;
94 using ::calloc;
95 using ::realloc;
97 using ::unlockpt;
98 using ::ptsname;
99 using ::ptsname_r;
100 using ::getpt;
101 using ::grantpt;
103 using ::div_t;
104 using ::div;
105 using ::ldiv_t;
106 using ::ldiv;
107 using ::lldiv_t;
108 using ::lldiv;
110 using ::mblen;
111 using ::mbstowcs;
112 using ::mbtowc;
113 using ::wctomb;
114 using ::wcstombs;
115 } // namespace std
117 } // extern C++
119 #endif // BIONIC_LIBSTDCPP_INCLUDE_CSTDLIB__