summaryrefslogtreecommitdiffstats
path: root/gl/fseterr.h
diff options
context:
space:
mode:
Diffstat (limited to 'gl/fseterr.h')
-rw-r--r--gl/fseterr.h55
1 files changed, 55 insertions, 0 deletions
diff --git a/gl/fseterr.h b/gl/fseterr.h
new file mode 100644
index 00000000..57c30ef3
--- /dev/null
+++ b/gl/fseterr.h
@@ -0,0 +1,55 @@
1/* Set the error indicator of a stream.
2 Copyright (C) 2007, 2009-2025 Free Software Foundation, Inc.
3
4 This file is free software: you can redistribute it and/or modify
5 it under the terms of the GNU Lesser General Public License as
6 published by the Free Software Foundation; either version 2.1 of the
7 License, or (at your option) any later version.
8
9 This file is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU Lesser General Public License for more details.
13
14 You should have received a copy of the GNU Lesser General Public License
15 along with this program. If not, see <https://www.gnu.org/licenses/>. */
16
17#ifndef _FSETERR_H
18#define _FSETERR_H
19
20/* This file uses HAVE___FSETERR. */
21#if !_GL_CONFIG_H_INCLUDED
22 #error "Please include config.h first."
23#endif
24
25#include <stdio.h>
26
27/* Set the error indicator of the stream FP.
28 The "error indicator" is set when an I/O operation on the stream fails, and
29 is cleared (together with the "end-of-file" indicator) by clearerr (FP). */
30
31#if HAVE___FSETERR /* musl libc */
32
33/* Haiku has __fseterr but does not declare it. */
34# if defined __HAIKU__
35extern void __fseterr (FILE *fp);
36# endif
37
38# include <stdio_ext.h>
39# define fseterr(fp) __fseterr (fp)
40
41#else
42
43# ifdef __cplusplus
44extern "C" {
45# endif
46
47extern void fseterr (FILE *fp);
48
49# ifdef __cplusplus
50}
51# endif
52
53#endif
54
55#endif /* _FSETERR_H */