diff options
author | David Chisnall <theraven@FreeBSD.org> | 2013-09-06 09:46:44 +0000 |
---|---|---|
committer | David Chisnall <theraven@FreeBSD.org> | 2013-09-06 09:46:44 +0000 |
commit | b49c0d5878e49d8d3d094d0b2e4f00939e7aa662 (patch) | |
tree | f507ed7cb6b08b5b63fc242bc2de8c7e231b28ea /include/iconv.h | |
parent | 75b1cda430eedddf6559015ebdcc4bedd3a85c7c (diff) | |
download | src-b49c0d5878e49d8d3d094d0b2e4f00939e7aa662.tar.gz src-b49c0d5878e49d8d3d094d0b2e4f00939e7aa662.zip |
Fix the namespace pollution caused by iconv.h including stdbool.h
This broke any C89 ports that defined bool themselves, including things
like gcc, gtk, and so on.
Notes
Notes:
svn path=/head/; revision=255297
Diffstat (limited to 'include/iconv.h')
-rw-r--r-- | include/iconv.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/include/iconv.h b/include/iconv.h index 3423a24d063b..69cc2c7d16a6 100644 --- a/include/iconv.h +++ b/include/iconv.h @@ -35,7 +35,6 @@ #include <sys/cdefs.h> #include <sys/types.h> -#include <stdbool.h> #include <wchar.h> #include <sys/cdefs.h> @@ -48,6 +47,13 @@ #define libiconv iconv #define libiconv_t iconv_t #endif +#ifdef __cplusplus +typedef bool __iconv_bool; +#elif __STDC_VERSION__ >= 199901L +typedef _Bool __iconv_bool; +#else +typedef int __iconv_bool; +#endif struct __tag_iconv_t; typedef struct __tag_iconv_t *iconv_t; @@ -61,7 +67,7 @@ int iconv_close(iconv_t); /* * non-portable interfaces for iconv */ -int __iconv_get_list(char ***, size_t *, bool); +int __iconv_get_list(char ***, size_t *, __iconv_bool); void __iconv_free_list(char **, size_t); size_t __iconv(iconv_t, const char **, size_t *, char **, size_t *, __uint32_t, size_t *); |