* dirent/Versions: Export fdopendir for GLIBC_2.4.
* dirent/Makefile (routines): Add fdopendir.
(tests): Add tst-fdopendir.
* dirent/tst-fdopendir.c: New file.
* include/dirent.h: Declare __alloc_dir.
* sysdeps/generic/fdopendir.c: New file.
* sysdeps/unix/fdopendir.c: New file.
* sysdeps/unix/opendir.c: Split off back part of opendir into new
function __alloc_dir.
2005-09-06 Paul Eggert <eggert@cs.ucla.edu>
Ulrich Drepper <drepper@redhat.com>
[BZ #1302]
Change bitset word type from unsigned int to unsigned long int,
as this has better performance on typical 64-bit hosts. Change
bitset type name to bitset_t.
* posix/regcomp.c (build_equiv_class, build_charclass):
(build_range_exp, build_collating_symbol):
Prefer bitset_t to re_bitset_ptr_t in prototypes, when the actual
argument is a bitset. This is merely a style issue, but it makes
it clearer that an entire array is expected.
(re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps,
lower_subexp): Adjust for new bitset_t definition.
(lower_subexp, parse_bracket_exp, built_charclass_op): Likewise.
* posix/regex_internal.h (bitset_set, bitset_clear, bitset_contain,
bitset_not, bitset_merge, bitset_set_all, bitset_mask): Likewise.
* posix/regexec.c (check_dst_limits_calc_pos_1,
check_subexp_matching_top, build_trtable, group_nodes_into_DFAstates):
Likewise.
* posix/regcomp.c (utf8_sb_map): Don't assume initializer
== 0xffffffff.
* posix/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
All uses changed.
(BITSET_WORDS): Renamed from BITSET_UINTS. All uses changed.
(bitset_word_t): New type, replacing 'unsigned int' for bitset uses.
All uses changed.
(BITSET_WORD_MAX): New macro.
(bitset_set, bitset_clear, bitset_contain, bitset_empty,
(bitset_set_all, bitset_copy): Adjust for bitset_t change.
(bitset_empty, bitset_copy):
Prefer sizeof (bitset_t) to multiplying it out ourselves.
(bitset_not_merge): Remove; unused.
(bitset_contain): Return bool, not unsigned int with one bit on.
All callers changed.
* posix/regexec.c (build_trtable): Don't assume bitset_t has no
stricter alignment than re_node_set; do this by defining a new
internal type struct dests_alloc and using it to allocate memory.
2005-09-27 Ulrich Drepper <drepper@redhat.com>
[BZ #1230]
* stdlib/strtod_l.c (STRNCASECMP): Always use C locale object.
(TOLOWER_C): Define. Use it when recognizing inf and nan.
* stdlib/Makefile (tests): Add bug-strtod2.
* stdlib/bug-strtod2.c: New file.
* stdlib/cxa_atexit.c (__new_exitfn): Rewrite to preserve order in
which the functions were registered.
* dlfcn/Makefile: Add rules to build and run bug-atexit1 and
bug-atexit2.
* dlfcn/bug-atext1.c: New file.
* dlfcn/bug-atext1-lib.c: New file.
* dlfcn/bug-atext2.c: New file.
* dlfcn/bug-atext2-lib.c: New file.
* argp/argp-fmtstream.h [HAVE_CONFIG_H]: Do not #include <config.h>.
* argp/argp-eexst.c, argp/argp-fmtstream.c, argp/argp-fs-xinl.c,
argp/argp-xinl.c: Fix up whitespace.
* malloc/arena.c (ptmalloc_lock_all): If global lock already taken
by the same thread, just bump the counter.
(ptmalloc_unlock_all): If counter for recursive locks hasn't reached
zero, don't do anything else.
* malloc/Makefile (tests): Add tst-mallocfork.
* malloc/tst-mallocfork.c: New file.
2005-01-11 Thorsten Kukuk <kukuk@suse.de>
[BZ #652]
* posix/getconf.c: Add new option -a to print the names of
the current system configuration variables to stdout.
Based on patch from Josh Aas <josha@sgi.com>.
* sysdeps/posix/getaddrinfo.c (fls): New function.
(gaih_inet): Don't use ffs, use fls. Convert address to native byte
order first.
* posix/Makefile (tests): Add tst-rfc3484.
* posix/tst-rfc3484.c: New file.
* manual/stdio.texi (Hook Functions): Correct type of position
parameter of seeker and fix fallout of the change in the text.
* wcsmbs/tst-mbrtowc2.c: New file.
* wcsmbs/Makefile (tests): Add tst-mbrtowc2.
2005-09-25 Ulrich Drepper <drepper@redhat.com>
[BZ #714]
* iconv/loop.c [!STORE_REST] (SINGLE): Correctly record number of
left-over bytes and store them correctly.
* iconvdata/tst-iconv6.c: New file.
* iconvdata/Makefile (tests): Add tst-iconv6.