xref: /netbsd-src/external/apache2/llvm/dist/libcxx/include/cstdio (revision 4d6fc14bc9b0c5bf3e30be318c143ee82cadd108)
1*4d6fc14bSjoerg// -*- C++ -*-
2*4d6fc14bSjoerg//===---------------------------- cstdio ----------------------------------===//
3*4d6fc14bSjoerg//
4*4d6fc14bSjoerg// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5*4d6fc14bSjoerg// See https://llvm.org/LICENSE.txt for license information.
6*4d6fc14bSjoerg// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7*4d6fc14bSjoerg//
8*4d6fc14bSjoerg//===----------------------------------------------------------------------===//
9*4d6fc14bSjoerg
10*4d6fc14bSjoerg#ifndef _LIBCPP_CSTDIO
11*4d6fc14bSjoerg#define _LIBCPP_CSTDIO
12*4d6fc14bSjoerg
13*4d6fc14bSjoerg/*
14*4d6fc14bSjoerg    cstdio synopsis
15*4d6fc14bSjoerg
16*4d6fc14bSjoergMacros:
17*4d6fc14bSjoerg
18*4d6fc14bSjoerg    BUFSIZ
19*4d6fc14bSjoerg    EOF
20*4d6fc14bSjoerg    FILENAME_MAX
21*4d6fc14bSjoerg    FOPEN_MAX
22*4d6fc14bSjoerg    L_tmpnam
23*4d6fc14bSjoerg    NULL
24*4d6fc14bSjoerg    SEEK_CUR
25*4d6fc14bSjoerg    SEEK_END
26*4d6fc14bSjoerg    SEEK_SET
27*4d6fc14bSjoerg    TMP_MAX
28*4d6fc14bSjoerg    _IOFBF
29*4d6fc14bSjoerg    _IOLBF
30*4d6fc14bSjoerg    _IONBF
31*4d6fc14bSjoerg    stderr
32*4d6fc14bSjoerg    stdin
33*4d6fc14bSjoerg    stdout
34*4d6fc14bSjoerg
35*4d6fc14bSjoergnamespace std
36*4d6fc14bSjoerg{
37*4d6fc14bSjoerg
38*4d6fc14bSjoergTypes:
39*4d6fc14bSjoerg
40*4d6fc14bSjoergFILE
41*4d6fc14bSjoergfpos_t
42*4d6fc14bSjoergsize_t
43*4d6fc14bSjoerg
44*4d6fc14bSjoergint remove(const char* filename);
45*4d6fc14bSjoergint rename(const char* old, const char* new);
46*4d6fc14bSjoergFILE* tmpfile(void);
47*4d6fc14bSjoergchar* tmpnam(char* s);
48*4d6fc14bSjoergint fclose(FILE* stream);
49*4d6fc14bSjoergint fflush(FILE* stream);
50*4d6fc14bSjoergFILE* fopen(const char* restrict filename, const char* restrict mode);
51*4d6fc14bSjoergFILE* freopen(const char* restrict filename, const char * restrict mode,
52*4d6fc14bSjoerg              FILE * restrict stream);
53*4d6fc14bSjoergvoid setbuf(FILE* restrict stream, char* restrict buf);
54*4d6fc14bSjoergint setvbuf(FILE* restrict stream, char* restrict buf, int mode, size_t size);
55*4d6fc14bSjoergint fprintf(FILE* restrict stream, const char* restrict format, ...);
56*4d6fc14bSjoergint fscanf(FILE* restrict stream, const char * restrict format, ...);
57*4d6fc14bSjoergint printf(const char* restrict format, ...);
58*4d6fc14bSjoergint scanf(const char* restrict format, ...);
59*4d6fc14bSjoergint snprintf(char* restrict s, size_t n, const char* restrict format, ...);    // C99
60*4d6fc14bSjoergint sprintf(char* restrict s, const char* restrict format, ...);
61*4d6fc14bSjoergint sscanf(const char* restrict s, const char* restrict format, ...);
62*4d6fc14bSjoergint vfprintf(FILE* restrict stream, const char* restrict format, va_list arg);
63*4d6fc14bSjoergint vfscanf(FILE* restrict stream, const char* restrict format, va_list arg);  // C99
64*4d6fc14bSjoergint vprintf(const char* restrict format, va_list arg);
65*4d6fc14bSjoergint vscanf(const char* restrict format, va_list arg);                          // C99
66*4d6fc14bSjoergint vsnprintf(char* restrict s, size_t n, const char* restrict format,         // C99
67*4d6fc14bSjoerg              va_list arg);
68*4d6fc14bSjoergint vsprintf(char* restrict s, const char* restrict format, va_list arg);
69*4d6fc14bSjoergint vsscanf(const char* restrict s, const char* restrict format, va_list arg); // C99
70*4d6fc14bSjoergint fgetc(FILE* stream);
71*4d6fc14bSjoergchar* fgets(char* restrict s, int n, FILE* restrict stream);
72*4d6fc14bSjoergint fputc(int c, FILE* stream);
73*4d6fc14bSjoergint fputs(const char* restrict s, FILE* restrict stream);
74*4d6fc14bSjoergint getc(FILE* stream);
75*4d6fc14bSjoergint getchar(void);
76*4d6fc14bSjoergchar* gets(char* s);  // removed in C++14
77*4d6fc14bSjoergint putc(int c, FILE* stream);
78*4d6fc14bSjoergint putchar(int c);
79*4d6fc14bSjoergint puts(const char* s);
80*4d6fc14bSjoergint ungetc(int c, FILE* stream);
81*4d6fc14bSjoergsize_t fread(void* restrict ptr, size_t size, size_t nmemb,
82*4d6fc14bSjoerg             FILE* restrict stream);
83*4d6fc14bSjoergsize_t fwrite(const void* restrict ptr, size_t size, size_t nmemb,
84*4d6fc14bSjoerg              FILE* restrict stream);
85*4d6fc14bSjoergint fgetpos(FILE* restrict stream, fpos_t* restrict pos);
86*4d6fc14bSjoergint fseek(FILE* stream, long offset, int whence);
87*4d6fc14bSjoergint fsetpos(FILE*stream, const fpos_t* pos);
88*4d6fc14bSjoerglong ftell(FILE* stream);
89*4d6fc14bSjoergvoid rewind(FILE* stream);
90*4d6fc14bSjoergvoid clearerr(FILE* stream);
91*4d6fc14bSjoergint feof(FILE* stream);
92*4d6fc14bSjoergint ferror(FILE* stream);
93*4d6fc14bSjoergvoid perror(const char* s);
94*4d6fc14bSjoerg
95*4d6fc14bSjoerg}  // std
96*4d6fc14bSjoerg*/
97*4d6fc14bSjoerg
98*4d6fc14bSjoerg#include <__config>
99*4d6fc14bSjoerg#include <stdio.h>
100*4d6fc14bSjoerg
101*4d6fc14bSjoerg#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
102*4d6fc14bSjoerg#pragma GCC system_header
103*4d6fc14bSjoerg#endif
104*4d6fc14bSjoerg
105*4d6fc14bSjoerg_LIBCPP_BEGIN_NAMESPACE_STD
106*4d6fc14bSjoerg
107*4d6fc14bSjoergusing ::FILE;
108*4d6fc14bSjoergusing ::fpos_t;
109*4d6fc14bSjoergusing ::size_t;
110*4d6fc14bSjoerg
111*4d6fc14bSjoergusing ::fclose;
112*4d6fc14bSjoergusing ::fflush;
113*4d6fc14bSjoergusing ::setbuf;
114*4d6fc14bSjoergusing ::setvbuf;
115*4d6fc14bSjoergusing ::fprintf;
116*4d6fc14bSjoergusing ::fscanf;
117*4d6fc14bSjoergusing ::snprintf;
118*4d6fc14bSjoergusing ::sprintf;
119*4d6fc14bSjoergusing ::sscanf;
120*4d6fc14bSjoergusing ::vfprintf;
121*4d6fc14bSjoergusing ::vfscanf;
122*4d6fc14bSjoergusing ::vsscanf;
123*4d6fc14bSjoergusing ::vsnprintf;
124*4d6fc14bSjoergusing ::vsprintf;
125*4d6fc14bSjoergusing ::fgetc;
126*4d6fc14bSjoergusing ::fgets;
127*4d6fc14bSjoergusing ::fputc;
128*4d6fc14bSjoergusing ::fputs;
129*4d6fc14bSjoergusing ::getc;
130*4d6fc14bSjoergusing ::putc;
131*4d6fc14bSjoergusing ::ungetc;
132*4d6fc14bSjoergusing ::fread;
133*4d6fc14bSjoergusing ::fwrite;
134*4d6fc14bSjoerg#ifndef _LIBCPP_HAS_NO_FGETPOS_FSETPOS
135*4d6fc14bSjoergusing ::fgetpos;
136*4d6fc14bSjoerg#endif
137*4d6fc14bSjoergusing ::fseek;
138*4d6fc14bSjoerg#ifndef _LIBCPP_HAS_NO_FGETPOS_FSETPOS
139*4d6fc14bSjoergusing ::fsetpos;
140*4d6fc14bSjoerg#endif
141*4d6fc14bSjoergusing ::ftell;
142*4d6fc14bSjoergusing ::rewind;
143*4d6fc14bSjoergusing ::clearerr;
144*4d6fc14bSjoergusing ::feof;
145*4d6fc14bSjoergusing ::ferror;
146*4d6fc14bSjoergusing ::perror;
147*4d6fc14bSjoerg
148*4d6fc14bSjoerg#ifndef _LIBCPP_HAS_NO_GLOBAL_FILESYSTEM_NAMESPACE
149*4d6fc14bSjoergusing ::fopen;
150*4d6fc14bSjoergusing ::freopen;
151*4d6fc14bSjoergusing ::remove;
152*4d6fc14bSjoergusing ::rename;
153*4d6fc14bSjoergusing ::tmpfile;
154*4d6fc14bSjoergusing ::tmpnam;
155*4d6fc14bSjoerg#endif
156*4d6fc14bSjoerg
157*4d6fc14bSjoerg#ifndef _LIBCPP_HAS_NO_STDIN
158*4d6fc14bSjoergusing ::getchar;
159*4d6fc14bSjoerg#if _LIBCPP_STD_VER <= 11 && !defined(_LIBCPP_C_HAS_NO_GETS)
160*4d6fc14bSjoergusing ::gets;
161*4d6fc14bSjoerg#endif
162*4d6fc14bSjoergusing ::scanf;
163*4d6fc14bSjoergusing ::vscanf;
164*4d6fc14bSjoerg#endif
165*4d6fc14bSjoerg
166*4d6fc14bSjoerg#ifndef _LIBCPP_HAS_NO_STDOUT
167*4d6fc14bSjoergusing ::printf;
168*4d6fc14bSjoergusing ::putchar;
169*4d6fc14bSjoergusing ::puts;
170*4d6fc14bSjoergusing ::vprintf;
171*4d6fc14bSjoerg#endif
172*4d6fc14bSjoerg
173*4d6fc14bSjoerg_LIBCPP_END_NAMESPACE_STD
174*4d6fc14bSjoerg
175*4d6fc14bSjoerg#endif // _LIBCPP_CSTDIO
176