about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2010-03-27 06:06:35 -0700
committerUlrich Drepper <drepper@redhat.com>2010-03-27 06:06:35 -0700
commitb9ea2dd05ee1684ca36ce7ee62ac679f391b6a7f (patch)
tree9c7c08941f0d011b7ded403588683752e1853220
parenta5f3b0f830920ae31e24cad8fe5d877bba556764 (diff)
downloadglibc-b9ea2dd05ee1684ca36ce7ee62ac679f391b6a7f.tar.gz
glibc-b9ea2dd05ee1684ca36ce7ee62ac679f391b6a7f.tar.xz
glibc-b9ea2dd05ee1684ca36ce7ee62ac679f391b6a7f.zip
Fix handling of __need_mbstate_t and __need_wint_t.
Like the real header, the libc-internal wrapper for wchar.h needs to
undefine the macros so that if the header was already included before
the macros don't stay defined and cause problems later.
-rw-r--r--ChangeLog3
-rw-r--r--include/wchar.h5
2 files changed, 8 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 0969ca2de1..d06b956810 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2010-03-27  Ulrich Drepper  <drepper@redhat.com>
 
+	* include/wchar.h: Undefine __need_mbstate_t and __need_wint_t
+	unconditionally in the end.
+
 	* posix/glob.c (glob): Initialize oldcount early, too.
 
 2010-03-26  Ulrich Drepper  <drepper@redhat.com>
diff --git a/include/wchar.h b/include/wchar.h
index bca847731d..3afe0b6e2e 100644
--- a/include/wchar.h
+++ b/include/wchar.h
@@ -195,3 +195,8 @@ extern size_t __mbsrtowcs_l (wchar_t *dst, const char **src, size_t len,
 
 # endif
 #endif
+
+/* Undefine all __need_* constants in case we are included to get those
+   constants but the whole file was already read.  */
+#undef __need_mbstate_t
+#undef __need_wint_t