summaryrefslogtreecommitdiffstats
path: root/include/stddef.h
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>1996-05-01 00:40:10 +0000
committerbde <bde@FreeBSD.org>1996-05-01 00:40:10 +0000
commit7dbb860b71d5e74ddb0d45595db60de4bc241b0f (patch)
treeb4f19035144b5bb4ec62efb83042948423f85486 /include/stddef.h
parent5dcde3c31e6bf9d26659951b3186af43009e44d4 (diff)
downloadFreeBSD-src-7dbb860b71d5e74ddb0d45595db60de4bc241b0f.zip
FreeBSD-src-7dbb860b71d5e74ddb0d45595db60de4bc241b0f.tar.gz
Fixed longstanding namespace convolution involving rune_t vs wchar_t.
If _ANSI_SOURCE or _POSIX_SOURCE is defined, then <ctype.h> had to be included before <stddef.h> or <stdlib.h> to get rune_t declared. Now rune_t is declared perfectly bogusly in all cases when <ctype.h> is included. This change breaks similar (but more convoluted) convolutions in the stddef.h in gcc distributions. Ports of gcc should avoid using the gcc headers.
Diffstat (limited to 'include/stddef.h')
-rw-r--r--include/stddef.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/include/stddef.h b/include/stddef.h
index 70af689..38a7736 100644
--- a/include/stddef.h
+++ b/include/stddef.h
@@ -40,15 +40,19 @@
typedef _BSD_PTRDIFF_T_ ptrdiff_t;
+#if !defined(_ANSI_SOURCE) && !defined(_POSIX_SOURCE)
+#ifdef _BSD_RUNE_T_
+typedef _BSD_RUNE_T_ rune_t;
+#undef _BSD_RUNE_T_
+#endif
+#endif
+
#ifdef _BSD_SIZE_T_
typedef _BSD_SIZE_T_ size_t;
#undef _BSD_SIZE_T_
#endif
#ifdef _BSD_WCHAR_T_
-#ifndef _ANSI_SOURCE
-typedef _BSD_WCHAR_T_ rune_t;
-#endif
typedef _BSD_WCHAR_T_ wchar_t;
#undef _BSD_WCHAR_T_
#endif
OpenPOWER on IntegriCloud