0,0 → 1,192 |
// -*- C++ -*- forwarding header. |
|
// Copyright (C) 1997-2015 Free Software Foundation, Inc. |
// |
// This file is part of the GNU ISO C++ Library. This library is free |
// software; you can redistribute it and/or modify it under the |
// terms of the GNU General Public License as published by the |
// Free Software Foundation; either version 3, or (at your option) |
// any later version. |
|
// This library is distributed in the hope that it will be useful, |
// but WITHOUT ANY WARRANTY; without even the implied warranty of |
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
// GNU General Public License for more details. |
|
// Under Section 7 of GPL version 3, you are granted additional |
// permissions described in the GCC Runtime Library Exception, version |
// 3.1, as published by the Free Software Foundation. |
|
// You should have received a copy of the GNU General Public License and |
// a copy of the GCC Runtime Library Exception along with this program; |
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see |
// <http://www.gnu.org/licenses/>. |
|
/** @file include/cstdio |
* This is a Standard C++ Library file. You should @c #include this file |
* in your programs, rather than any of the @a *.h implementation files. |
* |
* This is the C++ version of the Standard C Library header @c stdio.h, |
* and its contents are (mostly) the same as that header, but are all |
* contained in the namespace @c std (except for names which are defined |
* as macros in C). |
*/ |
|
// |
// ISO C++ 14882: 27.8.2 C Library files |
// |
|
#ifndef _GLIBCXX_CSTDIO |
#define _GLIBCXX_CSTDIO 1 |
|
#pragma GCC system_header |
|
#include <bits/c++config.h> |
#include <stdio.h> |
|
#ifndef _GLIBCXX_HAVE_GETS |
extern "C" char* gets (char* __s) __attribute__((__deprecated__)); |
#endif |
|
// Get rid of those macros defined in <stdio.h> in lieu of real functions. |
#undef clearerr |
#undef fclose |
#undef feof |
#undef ferror |
#undef fflush |
#undef fgetc |
#undef fgetpos |
#undef fgets |
#undef fopen |
#undef fprintf |
#undef fputc |
#undef fputs |
#undef fread |
#undef freopen |
#undef fscanf |
#undef fseek |
#undef fsetpos |
#undef ftell |
#undef fwrite |
#undef getc |
#undef getchar |
#if __cplusplus <= 201103L |
# undef gets |
#endif |
#undef perror |
#undef printf |
#undef putc |
#undef putchar |
#undef puts |
#undef remove |
#undef rename |
#undef rewind |
#undef scanf |
#undef setbuf |
#undef setvbuf |
#undef sprintf |
#undef sscanf |
#undef tmpfile |
#undef tmpnam |
#undef ungetc |
#undef vfprintf |
#undef vprintf |
#undef vsprintf |
|
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; |
#if __cplusplus <= 201103L |
// LWG 2249 |
using ::gets; |
#endif |
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; |
} // namespace std |
|
#if _GLIBCXX_USE_C99 |
|
#undef snprintf |
#undef vfscanf |
#undef vscanf |
#undef vsnprintf |
#undef vsscanf |
|
namespace __gnu_cxx |
{ |
#if _GLIBCXX_USE_C99_CHECK || _GLIBCXX_USE_C99_DYNAMIC |
extern "C" int |
(snprintf)(char * __restrict, std::size_t, const char * __restrict, ...) |
throw (); |
extern "C" int |
(vfscanf)(FILE * __restrict, const char * __restrict, __gnuc_va_list); |
extern "C" int (vscanf)(const char * __restrict, __gnuc_va_list); |
extern "C" int |
(vsnprintf)(char * __restrict, std::size_t, const char * __restrict, |
__gnuc_va_list) throw (); |
extern "C" int |
(vsscanf)(const char * __restrict, const char * __restrict, __gnuc_va_list) |
throw (); |
#endif |
|
#if !_GLIBCXX_USE_C99_DYNAMIC |
using ::snprintf; |
using ::vfscanf; |
using ::vscanf; |
using ::vsnprintf; |
using ::vsscanf; |
#endif |
} // namespace __gnu_cxx |
|
namespace std |
{ |
using ::__gnu_cxx::snprintf; |
using ::__gnu_cxx::vfscanf; |
using ::__gnu_cxx::vscanf; |
using ::__gnu_cxx::vsnprintf; |
using ::__gnu_cxx::vsscanf; |
} // namespace std |
|
#endif |
|
#endif |