diff options
author | Niko Catania <> | 2009-04-08 09:01:36 -0700 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2009-04-08 09:01:36 -0700 |
commit | 00a18f62a7c97299cea017578ec7ec179215492b (patch) | |
tree | fbe60e1001658ca6848940d460664a56f8949865 /libstdc++ | |
parent | 88f8a4ab8534cb21280f8aa0bf557f81ba4e31fa (diff) | |
download | bionic-00a18f62a7c97299cea017578ec7ec179215492b.zip bionic-00a18f62a7c97299cea017578ec7ec179215492b.tar.gz bionic-00a18f62a7c97299cea017578ec7ec179215492b.tar.bz2 |
AI 145059: (Almost) final set of wrapper around the C headers for stdc++ and their tests.
The only one left is cstring.
* bionic/libstdc++/include/cstdlib:
* bionic/libstdc++/include/cstdio:
* bionic/libstdc++/include/cstdint:
* bionic/libstdc++/include/csignal:
* bionic/libstdc++/include/csetjmp:
Added header file.
Checks the bionic headers file were picked up instead of the host ones.
Added test for new header files
* system/extras/tests/bionic/libstdc++/Android.mk:
Added tests for the new header files.
EXTRA_CFLAGS: include the bionic header files.
BUG=1601432
Automated import of CL 145059
Diffstat (limited to 'libstdc++')
-rw-r--r-- | libstdc++/include/cassert | 4 | ||||
-rw-r--r-- | libstdc++/include/csetjmp | 49 | ||||
-rw-r--r-- | libstdc++/include/csignal | 46 | ||||
-rw-r--r-- | libstdc++/include/cstddef | 4 | ||||
-rw-r--r-- | libstdc++/include/cstdint | 40 | ||||
-rw-r--r-- | libstdc++/include/cstdio | 92 | ||||
-rw-r--r-- | libstdc++/include/cstdlib | 108 |
7 files changed, 341 insertions, 2 deletions
diff --git a/libstdc++/include/cassert b/libstdc++/include/cassert index 38b518d..5753e34 100644 --- a/libstdc++/include/cassert +++ b/libstdc++/include/cassert @@ -32,4 +32,8 @@ * can be included multiple times with different definition of NDEBUG, hence the * absence of include guards. */ + +#ifndef BIONIC_LIBSTDCPP_INCLUDE_CASSERT__ +#define BIONIC_LIBSTDCPP_INCLUDE_CASSERT__ +#endif #include <assert.h> diff --git a/libstdc++/include/csetjmp b/libstdc++/include/csetjmp new file mode 100644 index 0000000..a68d127 --- /dev/null +++ b/libstdc++/include/csetjmp @@ -0,0 +1,49 @@ +/* -*- c++ -*- */ +/* + * Copyright (C) 2009 The Android Open Source Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef BIONIC_LIBSTDCPP_INCLUDE_CSETJMP__ +#define BIONIC_LIBSTDCPP_INCLUDE_CSETJMP__ + +/* + * Standard C++ Library wrapper around the C setjmp.h header file. + */ + +#include <setjmp.h> + +#ifndef setjmp +#define setjmp(env) setjmp (env) +#endif + +namespace std +{ +using ::jmp_buf; +using ::longjmp; +} // namespace std + +#endif // BIONIC_LIBSTDCPP_INCLUDE_CSETJMP__ diff --git a/libstdc++/include/csignal b/libstdc++/include/csignal new file mode 100644 index 0000000..2600a75 --- /dev/null +++ b/libstdc++/include/csignal @@ -0,0 +1,46 @@ +/* -*- c++ -*- */ +/* + * Copyright (C) 2009 The Android Open Source Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef BIONIC_LIBSTDCPP_INCLUDE_CSIGNAL__ +#define BIONIC_LIBSTDCPP_INCLUDE_CSIGNAL__ + +/* + * Standard C++ Library wrapper around the C signal.h header file. + */ + +#include <signal.h> + +namespace std +{ +using ::sig_atomic_t; +using ::signal; +using ::raise; +} // namespace std + +#endif // BIONIC_LIBSTDCPP_INCLUDE_CSIGNAL__ diff --git a/libstdc++/include/cstddef b/libstdc++/include/cstddef index 31c1bd1..fc1ca9d 100644 --- a/libstdc++/include/cstddef +++ b/libstdc++/include/cstddef @@ -39,8 +39,8 @@ #include <stddef.h> namespace std { - using ::ptrdiff_t; - using ::size_t; +using ::ptrdiff_t; +using ::size_t; } // namespace std #endif // BIONIC_LIBSTDCPP_INCLUDE_CSTDDEF__ diff --git a/libstdc++/include/cstdint b/libstdc++/include/cstdint new file mode 100644 index 0000000..3df56df --- /dev/null +++ b/libstdc++/include/cstdint @@ -0,0 +1,40 @@ +/* -*- c++ -*- */ +/* + * Copyright (C) 2009 The Android Open Source Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef BIONIC_LIBSTDCPP_INCLUDE_CSTDINT__ +#define BIONIC_LIBSTDCPP_INCLUDE_CSTDINT__ + +/* + * Standard C++ Library wrapper around the C stdint.h header file. + */ + +#include <stdint.h> + + +#endif // BIONIC_LIBSTDCPP_INCLUDE_CSTDINT__ diff --git a/libstdc++/include/cstdio b/libstdc++/include/cstdio new file mode 100644 index 0000000..d46a18b --- /dev/null +++ b/libstdc++/include/cstdio @@ -0,0 +1,92 @@ +/* -*- c++ -*- */ +/* + * Copyright (C) 2009 The Android Open Source Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef BIONIC_LIBSTDCPP_INCLUDE_CSTDIO__ +#define BIONIC_LIBSTDCPP_INCLUDE_CSTDIO__ + +/* + * Standard C++ Library wrapper around the C stdio.h header file. + */ +#include <cstddef> +#include <stdio.h> + +namespace std { +using ::FILE; +using ::fpos_t; + +using ::clearerr; +using ::fclose; +using ::feof; +using ::ferror; +using ::fflush; +using ::fgetc; +using ::fgetpos; +using ::fgets; +using ::fopen; +using ::fprintf; +using ::fputc; +using ::fputs; +using ::fread; +using ::freopen; +using ::fscanf; +using ::fseek; +using ::fsetpos; +using ::ftell; +using ::fwrite; +using ::getc; +using ::getchar; +using ::gets; +using ::perror; +using ::printf; +using ::putc; +using ::putchar; +using ::puts; +using ::remove; +using ::rename; +using ::rewind; +using ::scanf; +using ::setbuf; +using ::setvbuf; +using ::sprintf; +using ::sscanf; +using ::tmpfile; +using ::tmpnam; +using ::ungetc; +using ::vfprintf; +using ::vprintf; +using ::vsprintf; + +using ::snprintf; +using ::vfscanf; +using ::vscanf; +using ::vsnprintf; +using ::vsscanf; +} // namespace std + +#endif // BIONIC_LIBSTDCPP_INCLUDE_CSTDIO__ diff --git a/libstdc++/include/cstdlib b/libstdc++/include/cstdlib new file mode 100644 index 0000000..9e8a7ce --- /dev/null +++ b/libstdc++/include/cstdlib @@ -0,0 +1,108 @@ +/* -*- c++ -*- */ +/* + * Copyright (C) 2009 The Android Open Source Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef BIONIC_LIBSTDCPP_INCLUDE_CSTDLIB__ +#define BIONIC_LIBSTDCPP_INCLUDE_CSTDLIB__ + +/* + * Standard C++ Library wrapper around the C stdlib.h header file. + */ +#include <stdlib.h> + +namespace std { + +using ::exit; +using ::abort; +using ::atexit; +using ::on_exit; + +using ::getenv; +using ::putenv; +using ::setenv; +using ::unsetenv; +using ::clearenv; + +using ::mktemp; +using ::mkstemp; + +using ::strtol; +using ::strtoll; +using ::strtoul; +using ::strtoull; +using ::strtod; +using ::strtof; + +using ::atoi; +using ::atol; +using ::atoll; +using ::atof; + +using ::abs; +using ::labs; +using ::llabs; + +using ::realpath; +using ::system; + +using ::bsearch; +using ::qsort; + +using ::jrand48; +using ::mrand48; +using ::nrand48; +using ::lrand48; +using ::seed48; +using ::srand48; + +using ::rand; +using ::srand; +using ::random; +using ::srandom; + +using ::unlockpt; +using ::ptsname; +using ::ptsname_r; +using ::getpt; +using ::grantpt; + +using ::div_t; +using ::div; +using ::ldiv_t; +using ::ldiv; +using ::lldiv_t; +using ::lldiv; + +using ::mblen; +using ::mbstowcs; +using ::mbtowc; +using ::wctomb; +using ::wcstombs; +} // namespace std + +#endif // BIONIC_LIBSTDCPP_INCLUDE_CSTDLIB__ |