| // -*- C++ -*- |
| /*************************************************************************** |
| * |
| * cstdio - C++ Standard library interface to the ANSI C header stdio.h |
| * |
| * $Id$ |
| * |
| *************************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed |
| * with this work for additional information regarding copyright |
| * ownership. The ASF licenses this file to you under the Apache |
| * License, Version 2.0 (the "License"); you may not use this file |
| * except in compliance with the License. You may obtain a copy of |
| * the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or |
| * implied. See the License for the specific language governing |
| * permissions and limitations under the License. |
| * |
| * Copyright 1994-2006 Rogue Wave Software. |
| * |
| **************************************************************************/ |
| |
| #include <rw/_defs.h> |
| |
| #ifndef _RWSTD_NO_PURE_C_HEADERS |
| # include <ansi/_cstdio.h> |
| #else |
| |
| #ifndef _RWSTD_NO_DEPRECATED_C_HEADERS |
| |
| #ifndef _RWSTD_NAMESPACE_STD_OPEN |
| #define _RWSTD_NAMESPACE_STD_OPEN 14 |
| |
| _RWSTD_NAMESPACE (std) { |
| |
| #endif // _RWSTD_NAMESPACE_STD_OPEN |
| |
| |
| #include _RWSTD_ANSI_C_STDIO_H |
| |
| |
| #if _RWSTD_NAMESPACE_STD_OPEN == 14 |
| # undef _RWSTD_NAMESPACE_STD_OPEN |
| |
| } // namespace std |
| |
| #endif // _RWSTD_NAMESPACE_STD_OPEN == 14 |
| |
| #else // if defined (_RWSTD_NO_DEPRECATED_C_HEADERS) |
| |
| #ifndef _RWSTD_CSTDIO_INCLUDED |
| #define _RWSTD_CSTDIO_INCLUDED |
| |
| #include _RWSTD_ANSI_C_STDIO_H |
| |
| |
| // 27.8.2, p1, Table 94 |
| #ifndef stdin |
| # define stdin stdin |
| #endif |
| |
| #ifndef stdout |
| # define stdout stdout |
| #endif |
| |
| #ifndef stderr |
| # define stderr stderr |
| #endif |
| |
| #if !defined (_RWSTD_NO_NAMESPACE) && !defined (_RWSTD_NO_HONOR_STD) && \ |
| !defined (_RWSTD_NO_USING_LIBC_IN_STD) |
| |
| namespace std { |
| |
| using ::size_t; |
| using ::FILE; |
| |
| #ifndef _RWSTD_NO_FPOS_T |
| using ::fpos_t; |
| #endif // _RWSTD_NO_FPOS_T |
| |
| #ifndef _RWSTD_NO_CLEARERR |
| using ::clearerr; |
| #endif // _RWSTD_NO_CLEARERR |
| |
| #ifndef _RWSTD_NO_FCLOSE |
| using ::fclose; |
| #endif // _RWSTD_NO_FCLOSE |
| |
| #ifndef _RWSTD_NO_FEOF |
| using ::feof; |
| #endif // _RWSTD_NO_FEOF |
| |
| #ifndef _RWSTD_NO_FERROR |
| using ::ferror; |
| #endif // _RWSTD_NO_FERROR |
| |
| #ifndef _RWSTD_NO_FFLUSH |
| using ::fflush; |
| #endif // _RWSTD_NO_FFLUSH |
| |
| #ifndef _RWSTD_NO_FGETC |
| using ::fgetc; |
| #endif // _RWSTD_NO_FGETC |
| |
| #ifndef _RWSTD_NO_FGETPOS |
| using ::fgetpos; |
| #endif // _RWSTD_NO_FGETPOS |
| |
| #ifndef _RWSTD_NO_FGETS |
| using ::fgets; |
| #endif // _RWSTD_NO_FGETS |
| |
| #ifndef _RWSTD_NO_FOPEN |
| using ::fopen; |
| #endif // _RWSTD_NO_FOPEN |
| |
| #ifndef _RWSTD_NO_FPRINTF |
| using ::fprintf; |
| #endif // _RWSTD_NO_FPRINTF |
| |
| #ifndef _RWSTD_NO_FPUTC |
| using ::fputc; |
| #endif // _RWSTD_NO_FPUTC |
| |
| #ifndef _RWSTD_NO_FPUTS |
| using ::fputs; |
| #endif // _RWSTD_NO_FPUTS |
| |
| #ifndef _RWSTD_NO_FREAD |
| using ::fread; |
| #endif // _RWSTD_NO_FREAD |
| |
| #ifndef _RWSTD_NO_FREOPEN |
| using ::freopen; |
| #endif // _RWSTD_NO_FREOPEN |
| |
| #ifndef _RWSTD_NO_FSCANF |
| using ::fscanf; |
| #endif // _RWSTD_NO_FSCANF |
| |
| #ifndef _RWSTD_NO_FSEEK |
| using ::fseek; |
| #endif // _RWSTD_NO_FSEEK |
| |
| #ifndef _RWSTD_NO_FSETPOS |
| using ::fsetpos; |
| #endif // _RWSTD_NO_FSETPOS |
| |
| #ifndef _RWSTD_NO_FTELL |
| using ::ftell; |
| #endif // _RWSTD_NO_FTELL |
| |
| #ifndef _RWSTD_NO_FWRITE |
| using ::fwrite; |
| #endif // _RWSTD_NO_FWRITE |
| |
| #ifndef _RWSTD_NO_GETC |
| using ::getc; |
| #endif // _RWSTD_NO_GETC |
| |
| #ifndef _RWSTD_NO_GETCHAR |
| using ::getchar; |
| #endif // _RWSTD_NO_GETCHAR |
| |
| #ifndef _RWSTD_NO_GETS |
| using ::gets; |
| #endif // _RWSTD_NO_GETS |
| |
| #ifndef _RWSTD_NO_PERROR |
| using ::perror; |
| #endif // _RWSTD_NO_PERROR |
| |
| #ifndef _RWSTD_NO_PRINTF |
| using ::printf; |
| #endif // _RWSTD_NO_PRINTF |
| |
| #ifndef _RWSTD_NO_PUTC |
| using ::putc; |
| #endif // _RWSTD_NO_PUTC |
| |
| #ifndef _RWSTD_NO_PUTCHAR |
| using ::putchar; |
| #endif // _RWSTD_NO_PUTCHAR |
| |
| #ifndef _RWSTD_NO_PUTS |
| using ::puts; |
| #endif // _RWSTD_NO_PUTS |
| |
| #ifndef _RWSTD_NO_REMOVE |
| using ::remove; |
| #endif // _RWSTD_NO_REMOVE |
| |
| #ifndef _RWSTD_NO_RENAME |
| using ::rename; |
| #endif // _RWSTD_NO_RENAME |
| |
| #ifndef _RWSTD_NO_REWIND |
| using ::rewind; |
| #endif // _RWSTD_NO_REWIND |
| |
| #ifndef _RWSTD_NO_SCANF |
| using ::scanf; |
| #endif // _RWSTD_NO_SCANF |
| |
| #ifndef _RWSTD_NO_SETBUF |
| using ::setbuf; |
| #endif // _RWSTD_NO_SETBUF |
| |
| #ifndef _RWSTD_NO_SETVBUF |
| using ::setvbuf; |
| #endif // _RWSTD_NO_SETVBUF |
| |
| #ifndef _RWSTD_NO_SPRINTF |
| using ::sprintf; |
| #endif // _RWSTD_NO_SPRINTF |
| |
| #ifndef _RWSTD_NO_SSCANF |
| using ::sscanf; |
| #endif // _RWSTD_NO_SSCANF |
| |
| #ifndef _RWSTD_NO_TMPFILE |
| using ::tmpfile; |
| #endif // _RWSTD_NO_TMPFILE |
| |
| #ifndef _RWSTD_NO_TMPNAM |
| using ::tmpnam; |
| #else |
| # ifndef _RWSTD_NO_TMPNAM_IN_LIBC |
| extern "C" char *tmpnam (char *); |
| # endif // _RWSTD_NO_TMPNAM_IN_LIBC |
| #endif // _RWSTD_NO_TMPNAM |
| |
| #ifndef _RWSTD_NO_UNGETC |
| using ::ungetc; |
| #endif // _RWSTD_NO_UNGETC |
| |
| #ifndef _RWSTD_NO_VFPRINTF |
| using ::vfprintf; |
| #endif // _RWSTD_NO_VFPRINTF |
| |
| #ifndef _RWSTD_NO_VPRINTF |
| using ::vprintf; |
| #endif // _RWSTD_NO_VPRINTF |
| |
| #ifndef _RWSTD_NO_VSPRINTF |
| using ::vsprintf; |
| #endif // _RWSTD_NO_VSPRINTF |
| |
| } // std |
| |
| #endif // !_RWSTD_NO_NAMESPACE && !_RWSTD_NO_HONOR_STD && !_RWSTD_NO_USING_LIBC_IN_STD |
| |
| #endif // _RWSTD_CSTDIO_INCLUDED |
| |
| #endif // _RWSTD_NO_DEPRECATED_C_HEADERS |
| |
| #endif // _RWSTD_NO_PURE_C_HEADERS |