summaryrefslogtreecommitdiffstats
path: root/winsup/mingw/include/stdio.h
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/mingw/include/stdio.h')
-rw-r--r--winsup/mingw/include/stdio.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/winsup/mingw/include/stdio.h b/winsup/mingw/include/stdio.h
index 43c4f991f..84b3b1087 100644
--- a/winsup/mingw/include/stdio.h
+++ b/winsup/mingw/include/stdio.h
@@ -352,9 +352,20 @@ _CRTIMP int __cdecl fsetpos (FILE*, const fpos_t*);
* Error Functions
*/
-_CRTIMP void __cdecl clearerr (FILE*);
_CRTIMP int __cdecl feof (FILE*);
_CRTIMP int __cdecl ferror (FILE*);
+
+#ifdef __cplusplus
+inline int __cdecl feof (FILE* __F)
+ { return __F->_flag & _IOEOF; }
+inline int __cdecl ferror (FILE* __F)
+ { return __F->_flag & _IOERR; }
+#else
+#define feof(__F) ((__F)->_flag & _IOEOF)
+#define ferror(__F) ((__F)->_flag & _IOERR)
+#endif
+
+_CRTIMP void __cdecl clearerr (FILE*);
_CRTIMP void __cdecl perror (const char*);