11aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania/*
21aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * Copyright (C) 2009 The Android Open Source Project
31aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * All rights reserved.
41aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania *
51aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * Redistribution and use in source and binary forms, with or without
61aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * modification, are permitted provided that the following conditions
71aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * are met:
81aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania *  * Redistributions of source code must retain the above copyright
91aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania *    notice, this list of conditions and the following disclaimer.
101aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania *  * Redistributions in binary form must reproduce the above copyright
111aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania *    notice, this list of conditions and the following disclaimer in
121aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania *    the documentation and/or other materials provided with the
131aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania *    distribution.
141aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania *
151aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
161aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
171aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
181aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
191aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
201aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
211aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
221aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
231aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
241aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
251aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
261aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania * SUCH DAMAGE.
271aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania */
281aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania
291aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania#include <cstdlib>
30b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner#if defined BIONIC && !defined BIONIC_LIBSTDCPP_INCLUDE_CSTDLIB__
311aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania#error "Wrong header file included!!"
321aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania#endif
331aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania
341aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania
351aa5708e437b96e04f31d9c9f167427411ba5510Niko Catanianamespace {
361aa5708e437b96e04f31d9c9f167427411ba5510Niko Cataniaconst int kPassed = 0;
371aa5708e437b96e04f31d9c9f167427411ba5510Niko Cataniaconst int kFailed = 1;
381aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania#define FAIL_UNLESS(f) if (!android::f()) return kFailed;
391aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania}  // anonymous namespace
401aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania
411aa5708e437b96e04f31d9c9f167427411ba5510Niko Catanianamespace android
421aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania{
43b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::exit;
44b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::abort;
45b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::atexit;
46b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::on_exit;
47b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
48b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::getenv;
49b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::putenv;
50b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::setenv;
51b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::unsetenv;
52b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::clearenv;
53b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
54b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::mktemp;
55b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::mkstemp;
56b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
57b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::strtol;
58b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::strtoll;
59b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::strtoul;
60b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::strtoull;
61b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::strtod;
62b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::strtof;
63b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
64b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::atoi;
65b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::atol;
66b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::atoll;
67b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::atof;
68b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
69b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::abs;
70b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::labs;
71b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::llabs;
72b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
73b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::realpath;
74b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::system;
75b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
76b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::bsearch;
77b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::qsort;
78b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
79b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::jrand48;
80b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::mrand48;
81b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::nrand48;
82b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::lrand48;
83b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::seed48;
84b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::srand48;
85b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
86b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::rand;
87b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::srand;
88b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::random;
89b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::srandom;
90b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
91b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::malloc;
92b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::free;
93b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::calloc;
94b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::realloc;
95b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
96b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::unlockpt;
97b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::ptsname;
98b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::ptsname_r;
99b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::getpt;
100b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::grantpt;
101b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
102b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::div_t;
103b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::div;
104b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::ldiv_t;
105b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::ldiv;
106b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::lldiv_t;
107b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::lldiv;
108b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turner
109b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::mblen;
110b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::mbstowcs;
111b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::mbtowc;
112b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::wctomb;
113b381ead492251a797d2df4b260cb01eb1f64cfadDavid 'Digit' Turnerusing ::wcstombs;
1141aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania}  // namespace android
1151aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania
1161aa5708e437b96e04f31d9c9f167427411ba5510Niko Cataniaint main(int argc, char **argv)
1171aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania{
1181aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania    //    FAIL_UNLESS(testTypesStd);
1191aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania    return kPassed;
1201aa5708e437b96e04f31d9c9f167427411ba5510Niko Catania}
121