2002-01-18 Wolfram Gloger <wg@malloc.de>
* malloc/malloc.c: Rewrite, adapted from Doug Lea's malloc-2.7.0.c.
* malloc/malloc.h: Likewise.
* malloc/arena.c: New file.
* malloc/hooks.c: New file.
* malloc/tst-mallocstate.c: New file.
* malloc/Makefile: Add new testcase tst-mallocstate.
Add arena.c and hooks.c to distribute. Fix commented CPPFLAGS.
2002-01-28 Ulrich Drepper <drepper@redhat.com>
* stdlib/msort.c: Remove last patch. The optimization violates the
same rule which qsort.c had problems with.
2002-01-27 Paul Eggert <eggert@twinsun.com>
* stdlib/qsort.c (_quicksort): Do not apply the comparison function
to a pivot element that lies outside the array to be sorted, as
ISO C99 requires that the comparison function be called only with
addresses of array elements [PR libc/2880].
2002-01-16 Roger Sayle <roger@eyesopen.com>
* stdlib/msort.c (msort_with_tmp): Replace implementation with
more efficient "Towers of Hanoi" mergesort.
(hanoi_sort, hanoi_sort_int, hanoi_sort_long): New functions,
for generic, sizeof(int) and sizeof(long) variants respectively.
* manial/syslog.texi (openlog): Describe possible problems with
first parameter.
Patch by Christopher Allen Wing <wingc@engin.umich.edu>.
compilers that support it.
* posix/sys/types.h: Use __GLIBC_HAVE_LONG_LONG.
* sysdeps/unix/sysv/linux/bits/types.h: Likewise.
* stdlib/stdlib.h: Likewise.
2001-08-06 Jakub Jelinek <jakub@redhat.com>
* stdlib/strtod.c (STRTOF): Skip whole infinity, not just inf.
* stdio-common/vfscanf.c (__vfscanf): +- can be followed by i in +-Inf.
* stdlib/tst-strtod.c (tests): Add Inf tests.
* stdio-common/tstscanf.c (main): Add tests for +- before Inf.
* locale/weightwc.h (findidx): Change type of i to int32_t.
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
2001-05-05 Jakub Jelinek <jakub@redhat.com>
* include/features.h (__USE_EXTERN_INLINES): Don't define if
__NO_INLINE__ is defined.
* ctype/ctype.h (tolower, toupper): Change the guard condition to
__USE_EXTERN_INLINES check only.
* stdlib/stdlib.h (strtod, ...): Likewise.
* wcsmbs/wchar.h (mbrlen): Likewise.
* string/string.h: Only include bits/string.h and bits/string2.h
if __NO_INLINE__ is not defined.
2001-04-06 David Mosberger <davidm@hpl.hp.com>
* stdlib/tst-setcontext.c: Move st2[] to global scope.
(f2): Verify that stack pointer is inside st2[].
* sysdeps/unix/sysv/linux/ia64/getcontext.S: It helps to save r12.
* sysdeps/unix/sysv/linux/ia64/setcontext.S: It helps to restore r12.
2001-04-03 Ulrich Drepper <drepper@redhat.com>
* misc/dirname.c (dirname): Handle multiple slashes correctly.
2001-04-03 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/s390-64/initfini.c: Fix __gmon_start__ GOT access.
2001-04-03 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/s390-32/bcopy.S: Optimize for speed.
* sysdeps/s390/s390-64/bcopy.S: Likewise.
* sysdeps/s390/s390-32/mempcy.S: Likewise.
* sysdeps/s390/s390-64/memcpy.S: Likewise.
2001-04-02 Bruno Haible <haible@clisp.cons.org>
* manual/message.texi (Advanced gettext functions): More specific
syntax in the plural formula examples.
2001-04-02 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* sysdeps/powerpc/atomicity.h: Silence warnings.
* sysdeps/powerpc/dl-machine.h: Likewise.
* sysdeps/powerpc/register-dump.h: Likewise.
* sysdeps/powerpc/fpu/s_lrint.c: Likewise.
2001-04-02 Andreas Jaeger <aj@suse.de>
* misc/tst-dirname.c (main): Add more tests, derived from a bug
report by Michael Kerrisk <mtk16@ext.canterbury.ac.nz>.
2001-04-01 Andreas Jaeger <aj@suse.de>
* debug/xtrace.sh (pcprofileso): Use SLIBDIR since libpcprofile.so
is installed there.
* malloc/memusage.sh (memusageso): Likewise for libmemusage.so.
2001-04-01 H.J. Lu <hjl@gnu.org>
* posix/annexc.c (macrofile): Renamed from TMPFILE and set to
tmpnam (NULL).
* stdlib/isomac.c (macrofile): Likewise.
2001-03-30 Thorsten Kukuk <kukuk@suse.de>
* inet/rcmd.c: Allow AF_UNSPEC as parameter.
* nis/ypclnt.c (yp_all): Print error message only at last try,
check for protocoll error only if we don't have a network error.
2001-03-29 Ulrich Drepper <drepper@redhat.com>
* math/bits/mathcalls.h: Remove infnan declaration.
2001-03-29 H.J. Lu <hjl@gnu.org>
* include/endian.h: Define BIG_ENDI, LITTLE_ENDI, HIGH_HALF,
and LOW_HALF only if _LIBC is defined and _ISOMAC is not defined.
* stdlib/isomac.c (fmt): Define _LIBC and _ISOMAC.
.
2001-03-29 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regex.c: Fix typo and add a sentinel.
2001-03-29 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/shm_open.c: Open new file always with
O_NOFOLLOW. Suggested by Christoph Roland.
2001-03-16 David Mosberger <davidm@hpl.hp.com>
* sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
Drop hack that was needed for 2.1.1 kernel headers.
* sysdeps/unix/sysv/linux/ia64/ucontext_i.h: New file.
* sysdeps/unix/sysv/linux/ia64/sys/ucontext.h: Rewrite to make it
overlay with kernel's "struct sigcontext".
* sysdeps/unix/sysv/linux/ia64/Makefile (sysdep_headers): Add
sys/rse.h for "misc" subdir.
(sysdep_routines): Add __start_context for "stdlib" subdir.
* sysdeps/unix/sysv/linux/ia64/sys/rse.h: New file (based on
kernel file of the same name).
* stdlib/Makefile (tests): Add tst-setcontext.
* stdlib/tst-setcontext.c: New file (based on a sample program by
Uli Drepper).
* sysdeps/unix/sysv/linux/ia64/setcontext.S: New file.
* sysdeps/unix/sysv/linux/ia64/getcontext.S: New file.
* sysdeps/unix/sysv/linux/ia64/__start_context.S: New file.
* sysdeps/unix/sysv/linux/ia64/makecontext.c: New file.
* sysdeps/unix/sysv/linux/ia64/__longjmp.S (__longjmp): Use extr.u
instead of shift & and.
2001-02-26 Ulrich Drepper <drepper@redhat.com>
* dlfcn/Makefile (distribute): Add modatexit.c and modcxaatexit.c.
(tests): Add tstatexit and tstcxaatexit.
(module-names): Add modatexit and modcxaatexit.
Add rules to build and run tstatexit and tstcxaatexit.
* dlfcn/modatexit.c: New file.
* dlfcn/modcxaatexit.c: New file.
* dlfcn/tstatexit.c: New file.
* dlfcn/tstcxaatexit.c: New file.
* io/Makefile: Pass -DHAVE_DOT_HIDDEN to stat and mknod functions if
.hidden is available.
* io/stat.c: If .hidden is available use it to avoid exporting
functions.
* io/fstat.c: Likewise.
* io/lstat.c: Likewise.
* io/stat64.c: Likewise.
* io/fstat64.c: Likewise.
* io/lstat64.c: Likewise.
* sysdeps/generic/mknod.c: Likewise.
* malloc/mtrace.c: Use __cxa_atexit and not atexit.
* sysdeps/generic/bb_init_func.c: Likewise.
* sysdeps/generic/libc-start.c: Likewise.
* stdlib/atexit.c (__new_exitfn): Move to cxa_atexit.c.
(atexit): Implement using __cxa_atexit.
Use .hidden if availble to avoid exporting atexit.
* stdlib/cxa_atexit.c (__new_exitfn): Moved to here from atexit.c.
* stdlib/Versions: Export __new_exitfn for GLIBC_2.2.3.
* stdlib/Makefile (routines): Add old_atexit.
(static-only-routines): Add atexit.
Pass -DHAVE_DOT_HIDDEN for atexit.c if .hidden is available.
* stdlib/old_atexit.c: New file.
* intl/Makefile: Remove bogus endif.
* stdlib/strfmon.c [USE_IN_LIBIO]: Define lock variable and store
point in FILE structure before calling _IO_init.
* stdlib/Makefile: Add -D_IO_MTSAFE_IO to CFLAGS for strfmon and
strfmon_l if necessary.
Reported by Jury Gerold <gjury@grips.com>.
2001-02-07 Ulrich Drepper <drepper@redhat.com>
* stdlib/strtod.c: Never stop prematurely reading digits before the
decimal point is found. Compute exponent limit for negative exponents
correctly. For numbers ending in all zeros eat the zeroes even before
the decimal point if the exponent is negative [PR libc/2072].
* stdlib/Makefile (tests): Add bug-strtod.
* stdlib/bug-strtod.c: New file.
* posix/regex.c (regex_compile): Don't store pointer in wchar_t array.
Store index.
(compile_range): Handle index being passed, not pointer.
Patch by Isamu Hasegawa <isamu@yamato.ibm.com>.
2001-02-06 Andreas Jaeger <aj@suse.de>
* include/pthread.h: New file.
* wctype/wctype.h: Move internal interfaces from here to...
* include/wctype.h: ...here.
* wcsmbs/wchar.h: Move __wcslen from here to...
* include/wchar.h: ...here.
* posix/sys/wait.h: Move __wait from here to...
* include/sys/wait.h: ...here.
* string/string.h: Move __ffs and __strerror_r from here to...
* include/string.h: ...here.
* stdlib/stdlib.h: Move __on_exit from here to...
* include/stdlib.h: ...here.
* libio/stdio.h: Move __vsnprintf from here to...
* include/stdio.h: ...here.
* conform/data/stdlib.h-data: Account for XPG6 changes.
* stdlib/stdlib.h (__random): Change return value type to long.
(posix_memalign): Cleanup parameter names.
(setenv, unsetenv): Make available for __USE_XOPEN2K.
Change return type of unsetenv to int.
(qecvt, qgcvt, qfcvt): Declare only if __USE_MISC.
* sysdeps/generic/setenv.c (unsetenv): Change return type to int.
Return -1 and set errno if parameter is invalid.
* stdlib/random.c (__random): Change return value type to long.
* stdlib/stdlib.h (drand48_data): Make available only for
__USE_MISC. Rename elements to protect namespace. Change type
and position of a and init element.
* stdlib/drand48-iter.c: Don't handle unsigned short > 16 bit
differently. Adjust for drand48_data change. Don't compute a here,
it comes from drand48_data.
* stdlib/lcong48_r.c: Don't handle unsigned short > 16 bit
differently. Adjust for drand48_data change. Compute a here.
* stdlib/srand48_r.c: Likewise.
* stdlib/drand48.c: Adjust for drand48_data change.
* stdlib/lrand48.c: Likewise.
* stdlib/mrand48.c: Likewise.
* stdlib/seek48.c: Likewise.
* stdlib/drand48_r.c: Likewise.
* stdlib/lrand48_r.c: Likewise.
* stdlib/mrand48_r.c: Likewise.
* stdlib/seed48_r.c: Likewise. Don't handle unsigned short > 16 bit
differently.
* stdlib/erand48_r.c: Don't handle unsigned short > 16 bit differently.
* stdlib/jrand48_r.c: Likewise.
2001-01-20 Ulrich Drepper <drepper@redhat.com>
* io/ftw.c (ftw_dir): Add slash after directory name if there
wasn't any. Reported by loris <loris@iol.it>.
* io/Makefile (tests): Add bug-ftw2.
* io/bug-ftw2.c: New file.
2000-12-28 Joseph S. Myers <jsm28@cam.ac.uk>
* misc/sys/cdefs.h (__attribute_format_strfmon__): Define.
* stdlib/monetary.h: Add strfmon format attributes.
2000-12-26 Andreas Jaeger <aj@suse.de>
* libio/getc_u.c: Include stdio.h via system path to get internal
prototypes.
* libio/getwc_u.c: Likewise.
* stdlib/strfmon.c: Fix prototype of __printf_fp.
* stdio-common/vfprintf.c (process_arg): Move __printf_fphex and
__printf_fp prototypes to ...
* include/printf.h: ...here.
* include/stdio.h: Add some internal prototypes to shut up GCC.
* include/stdlib.h: Likewise.
* sysdeps/posix/sigpause.c (__sigpause): Use ISO C prototype
declaration.
* include/signal.h: Add prototypes for internal sigpause
interfaces.
2000-12-05 Andreas Jaeger <aj@suse.de>
* nss/test-netdb.c: Mark local functions as static to avoid
warnings.
(main): Use return to silence warning.
* stdlib/test-canon.c (check_path): Mark as static to avoid warning.
* stdio-common/test-popen.c: Mark local functions as static to
avoid warnings.
(main): Use return to silence warning.
* stdlib/testsort.c (compare): Mark as static to avoid warning.
* assert/test-assert.c: Mark local functions as static to avoid
warnings.
* assert/test-assert-perr.c: Likewise.
* math/libm-test.inc (main): Use return to silence warnings.
* locale/findlocale.c: Add casts to avoid warnings.
* locale/localeinfo.h (LIMAGIC): Add cast to avoid warnings.
* misc/efgcvt_r.c (fcvt_r): Use ssize_t instead of int and add cast
to avoid warnings.
* misc/tsearch.c (const_node): New type.
(trecurse): Correct casts to avoid warnings.
(__twalk): Likewise.
* stdlib/tst-limits.c: Add z modifier to formats for WORD_BIT and
LONG_BIT.
* debug/backtrace-tst.c (compare): Add casts to avoid warnings.
2000-11-20 Jakub Jelinek <jakub@redhat.com>
* iconvdata/bug-iconv2.c (main): Use %zd in format string.
* io/test-lfs.c (do_test): Cast statbuf.st_size to long long.
* malloc/tst-valloc.c (main): Cast valloc return value to long.
* malloc/tst-obstack.c (verbose_malloc): Use %zd in format string.
* math/test-fpucw.c (main): Use %lx in format string, cast
control words to long.
* stdio-common/tst-fmemopen.c (main): Use %td in format strings.
* stdlib/tst-strtol.c (tests): Avoid (bogus?) decimal constant is so
large that it is unsigned warning.
* sysdeps/unix/sysv/linux/sparc/bits/types.h (__ssize_t): Changing
it to long on sparc64.
2000-11-20 Andreas Jaeger <aj@suse.de>
* nscd/nscd.h (termination_handler): Add noreturn attribute.
(receiv_print_stats): Likewise.
* elf/ldconfig.c (path_hwcap): Cast -1 for proper comparison.