diff options
author | Zack Weinberg <zackw@panix.com> | 2016-11-20 23:00:02 -0500 |
---|---|---|
committer | Zack Weinberg <zackw@panix.com> | 2017-06-08 13:58:17 -0400 |
commit | 199fc19d3aaaf57944ef036e15904febe877fc93 (patch) | |
tree | 5056d2447de58c0bb197d87740098220f556b242 /include/wctype.h | |
parent | 4615f5aefeaa45345484a9ce8e3d0ea977c80d80 (diff) | |
download | glibc-199fc19d3aaaf57944ef036e15904febe877fc93.tar.gz glibc-199fc19d3aaaf57944ef036e15904febe877fc93.tar.xz glibc-199fc19d3aaaf57944ef036e15904febe877fc93.zip |
Remove __need macros from stdio.h and wchar.h.
wint_t is a little finicky because it might be defined by stddef.h, which belongs to the compiler. In addition to the _types_, a bunch of other declarations shared between wctype.h and wchar.h are factored out to their own header. * libio/bits/types/FILE.h, libio/bits/types/__FILE.h * wcsmbs/bits/types/mbstate_t.h, wcsmbs/bits/types/__mbstate_t.h * wcsmbs/bits/types/wint_t.h: New single-type definition files. * wctype/bits/wctype-wchar.h: New file holding declarations shared between wctype.h and wchar.h. * libio/Makefile, wcsmbs/Makefile, wctype/Makefile: Install them. * include/bits/types/FILE.h, include/bits/types/__FILE.h * include/bits/types/mbstate_t.h, include/bits/types/__mbstate_t.h * include/bits/types/wint_t.h, include/bits/wcsmbs-wchar.h: New wrappers. * include/stdio.h, include/wchar.h, include/wctype.h: No need to handle __need macros. * grp/grp.h, gshadow/gshadow.h, hurd/hurd.h, iconv/gconv.h * libio/stdio.h, mach/mach.h, misc/mntent.h, pwd/pwd.h * shadow/shadow.h, stdio-common/printf.h, wcsmbs/uchar.h * wcsmbs/wchar.h, wctype/wctype.h * sysdeps/generic/_G_config.h, sysdeps/unix/sysv/linux/_G_config.h Use the new files instead of __need macros.
Diffstat (limited to 'include/wctype.h')
-rw-r--r-- | include/wctype.h | 29 |
1 files changed, 1 insertions, 28 deletions
diff --git a/include/wctype.h b/include/wctype.h index a71b10377b..5fd3f863ae 100644 --- a/include/wctype.h +++ b/include/wctype.h @@ -1,30 +1,7 @@ #ifndef _WCTYPE_H +#include <wctype/wctype.h> #ifndef _ISOMAC -/* We try to get wint_t from <stddef.h>, but not all GCC versions define it - there. So define it ourselves if it remains undefined. */ -# define __need_wint_t -# include <stddef.h> -# ifndef _WINT_T -/* Integral type unchanged by default argument promotions that can - hold any value corresponding to members of the extended character - set, as well as at least one value that does not correspond to any - member of the extended character set. */ -# define _WINT_T -typedef unsigned int wint_t; -# endif - -/* Need to repeat these prototypes here, as wctype/wctype.h defines all - these as macros and thus we couldn't add libc_hidden_proto. */ - -extern int iswalpha (wint_t __wc); -extern int iswalnum (wint_t __wc); -extern int iswdigit (wint_t __wc); -extern int iswlower (wint_t __wc); -extern int iswspace (wint_t __wc); -extern int iswxdigit (wint_t __wc); -extern wint_t towlower (wint_t __wc); -extern wint_t towupper (wint_t __wc); libc_hidden_proto (iswalpha) libc_hidden_proto (iswalnum) @@ -34,11 +11,7 @@ libc_hidden_proto (iswspace) libc_hidden_proto (iswxdigit) libc_hidden_proto (towlower) libc_hidden_proto (towupper) -#endif - -#include <wctype/wctype.h> -#ifndef _ISOMAC /* Internal interfaces. */ extern int __iswspace (wint_t __wc); extern int __iswctype (wint_t __wc, wctype_t __desc); |