summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/quotearg.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/lib/quotearg.c b/lib/quotearg.c
index 6e7ac8afe..7fa5278bb 100644
--- a/lib/quotearg.c
+++ b/lib/quotearg.c
@@ -58,19 +58,25 @@
# include <string.h>
#endif
-#if HAVE_WCTYPE_H
-# include <wctype.h>
-#endif
-
#if HAVE_MBRTOWC && HAVE_WCHAR_H
# include <wchar.h>
+# if !HAVE_MBSTATE_T_OBJECT
+# define mbrtowc(pwc, s, n, ps) (mbrtowc) (pwc, s, n, 0)
+# define mbstate_t int
+# endif
#else
-# define iswprint(wc) 1
# define mbrtowc(pwc, s, n, ps) 1
# define mbsinit(ps) 1
# define mbstate_t int
#endif
+#if HAVE_WCTYPE_H
+# include <wctype.h>
+#endif
+#if !defined iswprint && !HAVE_ISWPRINT
+# define iswprint(wc) 1
+#endif
+
#define INT_BITS (sizeof (int) * CHAR_BIT)
#if defined (STDC_HEADERS) || (!defined (isascii) && !defined (HAVE_ISASCII))