mirror of
git://sourceware.org/git/glibc.git
synced 2025-01-18 12:16:13 +08:00
6c6c962a20
We can't go very far with libio cleanups as long as we still have _IO_MTSAFE_IO, and I am not tackling that in this patch series, but we can at least make the maze of stdio-related headers a little less complicated. In this patch, libio.h moves back out of bits/ into the top level of the libio subdirectory, and is merged with libio/bits/libio-ldbl.h (which also used to be installed) and include/libio.h. Since almost no files include libio.h directly, this is quite straightforward. libio.h is now always used with _LIBC defined, so all of the _LIBC || _GLIBCPP_USE_WCHAR_T conditionals are unnecessary. Similarly, the ifdef nest surrounding the definition of _IO_fwide_maybe_incompatible can collapse down to a single SHLIB_COMPAT check. I also took the opportunity to add some checks for configuration botches to libio.h. Installed stripped libraries are unchanged by this patch. * libio/bits/libio.h: Move back to libio/libio.h and adjust multiple-include guard to match. Merge contents of libio/bits/libio-ldbl.h and include/libio.h into this file. Remove preprocessor conditionals that are always true and/or redundant to other preprocessor conditionals in the same nest. Include shlib-compat.h unconditionally. Error out if _LIBC is not defined, or if _ISOMAC is defined, or if _IO_MTSAFE_IO is defined but _IO_lock_t_defined is not defined after including stdio.h. Use __BEGIN_DECLS/__END_DECLS. * libio/bits/libio-ldbl.h, include/bits/libio.h: Delete file. * include/stdio.h, libio/iolibio.h, libio/libioP.h: Include libio.h as <libio/libio.h> rather than as <bits/libio.h>. |
||
---|---|---|
.. | ||
types | ||
cmathcalls.h | ||
cpu-set.h | ||
dlfcn.h | ||
error.h | ||
fcntl2.h | ||
getopt_core.h | ||
getopt_ext.h | ||
getopt_posix.h | ||
locale.h | ||
mathcalls-helper-functions.h | ||
mathcalls.h | ||
poll2.h | ||
posix1_lim.h | ||
posix2_lim.h | ||
select2.h | ||
setjmp2.h | ||
socket2.h | ||
stab.def | ||
stdlib-float.h | ||
stdlib.h | ||
string2.h | ||
string_fortified.h | ||
strings_fortified.h | ||
syslog.h | ||
types.h | ||
unistd.h | ||
wchar2.h | ||
wctype-wchar.h | ||
xopen_lim.h |