summaryrefslogtreecommitdiffstats
path: root/include/wchar.h
diff options
context:
space:
mode:
authortheraven <theraven@FreeBSD.org>2011-11-13 16:18:48 +0000
committertheraven <theraven@FreeBSD.org>2011-11-13 16:18:48 +0000
commitdd1ce6fd6c2c0f0c70f3c78a4959185bb93eb1c3 (patch)
treeede420007b0ecbd457ac852e9d2f0b7e6c8c5649 /include/wchar.h
parentec6184ed07931e8bfc991db91ce884df5d2bddad (diff)
downloadFreeBSD-src-dd1ce6fd6c2c0f0c70f3c78a4959185bb93eb1c3.zip
FreeBSD-src-dd1ce6fd6c2c0f0c70f3c78a4959185bb93eb1c3.tar.gz
The spec says that FILE must be defined in wchar.h, but it wasn't. It
is now. Also hide some macros in C++ mode that will break C++ namespaced calls. Approved by: dim (mentor)
Diffstat (limited to 'include/wchar.h')
-rw-r--r--include/wchar.h37
1 files changed, 20 insertions, 17 deletions
diff --git a/include/wchar.h b/include/wchar.h
index 9b59494..c641165 100644
--- a/include/wchar.h
+++ b/include/wchar.h
@@ -97,20 +97,23 @@ typedef __wint_t wint_t;
#define WEOF ((wint_t)-1)
#endif
-struct __sFILE;
+#ifndef _STDFILE_DECLARED
+#define _STDFILE_DECLARED
+typedef struct __sFILE FILE;
+#endif
struct tm;
__BEGIN_DECLS
wint_t btowc(int);
-wint_t fgetwc(struct __sFILE *);
+wint_t fgetwc(FILE *);
wchar_t *
- fgetws(wchar_t * __restrict, int, struct __sFILE * __restrict);
-wint_t fputwc(wchar_t, struct __sFILE *);
-int fputws(const wchar_t * __restrict, struct __sFILE * __restrict);
-int fwide(struct __sFILE *, int);
-int fwprintf(struct __sFILE * __restrict, const wchar_t * __restrict, ...);
-int fwscanf(struct __sFILE * __restrict, const wchar_t * __restrict, ...);
-wint_t getwc(struct __sFILE *);
+ fgetws(wchar_t * __restrict, int, FILE * __restrict);
+wint_t fputwc(wchar_t, FILE *);
+int fputws(const wchar_t * __restrict, FILE * __restrict);
+int fwide(FILE *, int);
+int fwprintf(FILE * __restrict, const wchar_t * __restrict, ...);
+int fwscanf(FILE * __restrict, const wchar_t * __restrict, ...);
+wint_t getwc(FILE *);
wint_t getwchar(void);
size_t mbrlen(const char * __restrict, size_t, mbstate_t * __restrict);
size_t mbrtowc(wchar_t * __restrict, const char * __restrict, size_t,
@@ -118,13 +121,13 @@ size_t mbrtowc(wchar_t * __restrict, const char * __restrict, size_t,
int mbsinit(const mbstate_t *);
size_t mbsrtowcs(wchar_t * __restrict, const char ** __restrict, size_t,
mbstate_t * __restrict);
-wint_t putwc(wchar_t, struct __sFILE *);
+wint_t putwc(wchar_t, FILE *);
wint_t putwchar(wchar_t);
int swprintf(wchar_t * __restrict, size_t n, const wchar_t * __restrict,
...);
int swscanf(const wchar_t * __restrict, const wchar_t * __restrict, ...);
-wint_t ungetwc(wint_t, struct __sFILE *);
-int vfwprintf(struct __sFILE * __restrict, const wchar_t * __restrict,
+wint_t ungetwc(wint_t, FILE *);
+int vfwprintf(FILE * __restrict, const wchar_t * __restrict,
__va_list);
int vswprintf(wchar_t * __restrict, size_t n, const wchar_t * __restrict,
__va_list);
@@ -167,9 +170,9 @@ int wprintf(const wchar_t * __restrict, ...);
int wscanf(const wchar_t * __restrict, ...);
#ifndef _STDSTREAM_DECLARED
-extern struct __sFILE *__stdinp;
-extern struct __sFILE *__stdoutp;
-extern struct __sFILE *__stderrp;
+extern FILE *__stdinp;
+extern FILE *__stdoutp;
+extern FILE *__stderrp;
#define _STDSTREAM_DECLARED
#endif
@@ -179,7 +182,7 @@ extern struct __sFILE *__stderrp;
#define putwchar(wc) fputwc(wc, __stdoutp)
#if __ISO_C_VISIBLE >= 1999
-int vfwscanf(struct __sFILE * __restrict, const wchar_t * __restrict,
+int vfwscanf(FILE * __restrict, const wchar_t * __restrict,
__va_list);
int vswscanf(const wchar_t * __restrict, const wchar_t * __restrict,
__va_list);
@@ -217,7 +220,7 @@ size_t wcsnrtombs(char * __restrict, const wchar_t ** __restrict, size_t,
#endif
#if __BSD_VISIBLE
-wchar_t *fgetwln(struct __sFILE * __restrict, size_t * __restrict);
+wchar_t *fgetwln(FILE * __restrict, size_t * __restrict);
size_t wcslcat(wchar_t *, const wchar_t *, size_t);
size_t wcslcpy(wchar_t *, const wchar_t *, size_t);
#endif
OpenPOWER on IntegriCloud