* libio/vswprintf.c (_IO_vswprintf): Fix return value handling
which is different from snprintf.
* libio/tst_swprintf.c: Add tests for too small output buffer.
* locale/elem-hash.h (elem_hash): Correct stupid mistake and
create real hash values now.
Patch by Isamu Hasegawa <isamu@yamato.ibm.com>.
* libio/iofgetpos.c (_IO_new_fgetpos): Correct a few problems in
the handling of wide streams.
* libio/wfileops.c (_IO_wfile_underflow): Remove incorrect test
for possible conversion using __codecvt_do_in.
* libio/Makefile (tests): Add tst-fgetws.
* libio/tst-fgetws.c: New file.
* libio/iofgetws.c: Use _IO_ferror_unlocked macros instead of
coding the test here.
2001-08-04 Ulrich Drepper <drepper@redhat.com>
* libio/genops.c (_IO_unbuffer_write): Force streams in narrow
orientation so that conversion modules aren't used anymore.
* malloc/set-freeres.c: Call _IO_cleanup before running subfreeres
functions to avoid using wide streams afterwards.
* iconvdata/Makefile: Add rules to build GEORGIAN-PS and
GEORGIAN-ACADEMY.
* iconvdata/georgian-ps.c: New file.
* iconvdata/georgian-academy.c: New file.
* iconvdata/gconv-modules: Add entries for GEORGIAN-PS and
GEORGIAN-ACADEMY.
* iconvdata/tst-tables.sh: Add GEORGIAN-PS and GEORGIAN-ACADEMY.
* libio/vasprintf.c (_IO_vasprintf): Don't copy uninitialized byte
from stream buffer to result buffer.
Reported by Michael Meeks <michael@ximian.com>.
* libio/fileops.c (_IO_new_file_fopen): Correctly locate ccs=
substring. Don't handle ccs= if no descriptor was allocated.
Normalize codeset name before calling __wcsmbs_named_conv.
Initialize transliteration elements. Free step data structure.
* libio/iofclose.c (_IO_new_fclose): Correct freeing of the step data.
* libio/iofwide.c (__libio_translit): Renamed from libio_translit
and made public. Various little cleanup changes.
* wcsmbs/wcsmbsload.h (struct gconv_fcts): Add towc_nsteps and
tomb_nsteps member.
* wcsmbs/wcsmbsload.c: Add some casts to avoid warnings.
(__wcsmbs_gconv_fcts): Initialize towc_nsteps and tomb_nsteps member.
(getfct): Take additional parameter with pointer to variable where the
number of steps is stored in. Disable code which allows to use more
than one step for now. Adjust all callers.
(free_mem): New function. Frees data associated with currently
selected converters.
* libio/iofclose.c (_IO_new_fclose): Unlink descriptor first to
avoid deadlock.
* libio/oldiofclose.c (_IO_old_fclose): Likewise.
* libio/genops.c (_IO_un_link): Get stream lock since it's not
always done in the caller.
(_IO_link_in): Likewise.
* libio/genops.c (_IO_list_all_stamp): New variable.
(_IO_un_link): Bump _IO_list_all_stamp after removing from list.
(_IO_link): Likewise for insertion.
(flush_cleanup): New function.
(_IO_flush_all): Get list_all_lock and all individual locks for the
streams. Detect and handle changes to the _IO_list_all list.
(_IO_flush_all_linebuffered): Likewise.
* sysdeps/generic/bits/stdio-lock.h: Define
_IO_cleanup_region_start_noarg.
* sysdeps/mach/hurd/bits/stdio-lock.c: Likewise.
* libio/stdio_ext.h: Moved to ...
* stdio-common/stdio_ext.h: ... here.
* libio/Makefile (headers): Move stdio_ext.h from here ...
* stdio-common/Makefile (headers): ... to here.
* include/stdio_ext.h: New file.
* stdio/Makefile (routines): Add the stdio_ext.h functions here.
* stdio/Versions (GLIBC_2.2.4): Export the stdio_ext.h functions.
* stdio/__flbf.c: New file.
* stdio/__fbufsize.c: New file.
* stdio/__fpending.c: New file.
* stdio/__fpurge.c: New file.
* stdio/__freadable.c: New file.
* stdio/__freading.c: New file.
* stdio/__fsetlocking.c: New file.
* stdio/__fwritable.c: New file.
* stdio/__fwriting.c: New file.
2001-07-18 Ulrich Drepper <drepper@redhat.com>
* libio/filedoalloc.c (_IO_file_doallocate): A few more minor
cleanups and improvements.
2001-07-18 Andreas Schwab <schwab@suse.de>
* posix/regex.c (WORDCHAR_P) [WCHAR]: Also return true for the
underscore character.
2001-07-18 Jakub Jelinek <jakub@redhat.com>
* malloc/malloc (new_heap): Don't call munmap for zero length.
2001-07-18 Ulrich Drepper <drepper@redhat.com>
* libio/filedoalloc.c (_IO_file_doallocate): Use DEV_TTY_P if
available to determine whether descriptor is for tty before
calling isatty.
* sysdeps/unix/sysv/linux/device-nrs.h: Define DEV_TTY_P.
* sysdeps/generic/device-nrs.h: Likewise.
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-04-05 David S. Miller <davem@redhat.com>
Add hp-timing support for sparcv9/sparc64 targets.
* sysdeps/sparc/sparc32/sparcv9/hp-timing.c: New file
* sysdeps/sparc/sparc32/sparcv9/hp-timing.h: New file
* sysdeps/sparc/sparc64/hp-timing.c: New file
* sysdeps/sparc/sparc64/hp-timing.h: New file
* sysdeps/sparc/sparc32/sparcv9/Makefile: Build hp-timing.
* sysdeps/sparc/sparc64/Makefile: Likewise.
2001-04-09 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/fd_to_filename.h: New file.
* sysdeps/unix/sysv/linux/fd_to_filename.h: New file.
* libio/freopen.c (freopen): If FILENAME is NULL, try to get
filename from the open file descriptor.
* libio/freopen64.c (freopen64): Likewise.
2001-04-09 Bruno Haible <haible@clisp.cons.org>
* misc/error.c (error): fflush stdout also if
error_print_progname != NULL.
(error_at_line): Likewise.
2001-04-07 Bruno Haible <haible@clisp.cons.org>
* intl/gettextP.h (struct loaded_domain): Add codeset_cntr field.
(struct binding): Add codeset_cntr field.
(_nl_load_domain): Add domainbinding argument.
(_nl_init_domain_conv, _nl_free_domain_conv): New declarations.
(_nl_find_msg): New declaration, moved here from loadinfo.h.
* intl/loadinfo.h (struct loaded_l10nfile): Remove domainbinding field.
(_nl_make_l10nflist): Remove domainbinding argument.
(_nl_find_msg): Move declaration to gettextP.h.
* intl/bindtextdom.c (set_binding_values): Initialize ->codeset_cntr
to 0. Increment it when ->codeset is changed.
* intl/dcigettext.c (DCIGETTEXT): Pass binding to _nl_find_msg.
(_nl_find_msg): Add domainbinding argument. Reinitialize the converter
if domainbinding->codeset_cntr has been incremented.
* intl/finddomain.c (_nl_find_domain): Don't pass domainbinding to
_nl_make_l10nflist(). Pass it to _nl_load_domain() instead.
* intl/l10nflist.c (_nl_make_l10nflist): Remove domainbinding argument.
* intl/loadmsgcat.c (_nl_init_domain_conv): New function, extracted
from _nl_load_domain. Append //TRANSLIT also when using libiconv.
(_nl_free_domain_conv): New function, extracted from _nl_unload_domain.
(_nl_load_domain): Add domainbinding argument. Call
_nl_init_domain_conv.
(_nl_unload_domain): Call _nl_free_domain_conv.
* intl/Makefile (distribute): Add tst-codeset.sh, tstcodeset.po.
(test-srcs): Add tst-codeset.
(tests): Depend on tst-codeset.out.
(tst-codeset.out): New rule.
(CFLAGS-tst-codeset.c): New variable.
* intl/tst-codeset.sh: New file.
* intl/tstcodeset.po: New file.
* intl/tst-codeset.c: New file.
* locale/findlocale.c (_nl_find_locale): Update _nl_make_l10nflist
calls.
2001-02-19 Ulrich Drepper <drepper@redhat.com>
* libio/iogetline.c: Move return until after last statement.
* localedata/show-ucs-data.c: Don't show < > for better readability.
* sysdeps/ia64/fpu/Dist: New file.
* sysdeps/ia64/fpu/Makefile: New file.
* sysdeps/ia64/fpu/Versions: New file.
* sysdeps/ia64/fpu/e_acos.S: New file.
* sysdeps/ia64/fpu/e_acosf.S: New file.
* sysdeps/ia64/fpu/e_acosl.S: New file.
* sysdeps/ia64/fpu/e_asin.S: New file.
* sysdeps/ia64/fpu/e_asinf.S: New file.
* sysdeps/ia64/fpu/e_asinl.S: New file.
* sysdeps/ia64/fpu/e_atan2.S: New file.
* sysdeps/ia64/fpu/e_atan2f.S: New file.
* sysdeps/ia64/fpu/e_atan2l.c: New file.
* sysdeps/ia64/fpu/e_cosh.S: New file.
* sysdeps/ia64/fpu/e_coshf.S: New file.
* sysdeps/ia64/fpu/e_coshl.S: New file.
* sysdeps/ia64/fpu/e_exp.S: New file.
* sysdeps/ia64/fpu/e_expf.S: New file.
* sysdeps/ia64/fpu/e_expl.c: New file.
* sysdeps/ia64/fpu/e_fmod.S: New file.
* sysdeps/ia64/fpu/e_fmodf.S: New file.
* sysdeps/ia64/fpu/e_fmodl.S: New file.
* sysdeps/ia64/fpu/e_hypot.S: New file.
* sysdeps/ia64/fpu/e_hypotf.S: New file.
* sysdeps/ia64/fpu/e_hypotl.S: New file.
* sysdeps/ia64/fpu/e_log.S: New file.
* sysdeps/ia64/fpu/e_log10.c: New file.
* sysdeps/ia64/fpu/e_log10f.c: New file.
* sysdeps/ia64/fpu/e_log10l.c: New file.
* sysdeps/ia64/fpu/e_logf.S: New file.
* sysdeps/ia64/fpu/e_logl.c: New file.
* sysdeps/ia64/fpu/e_pow.S: New file.
* sysdeps/ia64/fpu/e_powf.S: New file.
* sysdeps/ia64/fpu/e_powl.S: New file.
* sysdeps/ia64/fpu/e_rem_pio2.c: New file.
* sysdeps/ia64/fpu/e_rem_pio2f.c: New file.
* sysdeps/ia64/fpu/e_remainder.S: New file.
* sysdeps/ia64/fpu/e_remainderf.S: New file.
* sysdeps/ia64/fpu/e_remainderl.S: New file.
* sysdeps/ia64/fpu/e_scalb.S: New file.
* sysdeps/ia64/fpu/e_scalbf.S: New file.
* sysdeps/ia64/fpu/e_scalbl.S: New file.
* sysdeps/ia64/fpu/e_sinh.S: New file.
* sysdeps/ia64/fpu/e_sinhf.S: New file.
* sysdeps/ia64/fpu/e_sinhl.S: New file.
* sysdeps/ia64/fpu/e_sqrt.S: New file.
* sysdeps/ia64/fpu/e_sqrtf.S: New file.
* sysdeps/ia64/fpu/e_sqrtl.S: New file.
* sysdeps/ia64/fpu/k_rem_pio2.c: New file.
* sysdeps/ia64/fpu/k_rem_pio2f.c: New file.
* sysdeps/ia64/fpu/k_rem_pio2l.c: New file.
* sysdeps/ia64/fpu/libm_atan2_reg.S: New file.
* sysdeps/ia64/fpu/libm_error.c: New file.
* sysdeps/ia64/fpu/libm_frexp4.S: New file.
* sysdeps/ia64/fpu/libm_frexp4f.S: New file.
* sysdeps/ia64/fpu/libm_frexp4l.S: New file.
* sysdeps/ia64/fpu/libm_reduce.S: New file.
* sysdeps/ia64/fpu/libm_support.h: New file.
* sysdeps/ia64/fpu/libm_tan.S: New file.
* sysdeps/ia64/fpu/s_atan.S: New file.
* sysdeps/ia64/fpu/s_atanf.S: New file.
* sysdeps/ia64/fpu/s_atanl.S: New file.
* sysdeps/ia64/fpu/s_cbrt.S: New file.
* sysdeps/ia64/fpu/s_cbrtf.S: New file.
* sysdeps/ia64/fpu/s_cbrtl.S: New file.
* sysdeps/ia64/fpu/s_ceil.S: New file.
* sysdeps/ia64/fpu/s_ceilf.S: New file.
* sysdeps/ia64/fpu/s_ceill.S: New file.
* sysdeps/ia64/fpu/s_cos.S: New file.
* sysdeps/ia64/fpu/s_cosf.S: New file.
* sysdeps/ia64/fpu/s_cosl.S: New file.
* sysdeps/ia64/fpu/s_expm1.S: New file.
* sysdeps/ia64/fpu/s_expm1f.S: New file.
* sysdeps/ia64/fpu/s_expm1l.S: New file.
* sysdeps/ia64/fpu/s_floor.S: New file.
* sysdeps/ia64/fpu/s_floorf.S: New file.
* sysdeps/ia64/fpu/s_floorl.S: New file.
* sysdeps/ia64/fpu/s_frexp.c: New file.
* sysdeps/ia64/fpu/s_frexpf.c: New file.
* sysdeps/ia64/fpu/s_frexpl.c: New file.
* sysdeps/ia64/fpu/s_ilogb.S: New file.
* sysdeps/ia64/fpu/s_ilogbf.S: New file.
* sysdeps/ia64/fpu/s_ilogbl.S: New file.
* sysdeps/ia64/fpu/s_ldexp.S: New file.
* sysdeps/ia64/fpu/s_ldexpf.S: New file.
* sysdeps/ia64/fpu/s_ldexpl.S: New file.
* sysdeps/ia64/fpu/s_log1p.S: New file.
* sysdeps/ia64/fpu/s_log1pf.S: New file.
* sysdeps/ia64/fpu/s_log1pl.S: New file.
* sysdeps/ia64/fpu/s_logb.S: New file.
* sysdeps/ia64/fpu/s_logbf.S: New file.
* sysdeps/ia64/fpu/s_logbl.S: New file.
* sysdeps/ia64/fpu/s_matherrf.c: New file.
* sysdeps/ia64/fpu/s_matherrl.c: New file.
* sysdeps/ia64/fpu/s_modf.S: New file.
* sysdeps/ia64/fpu/s_modff.S: New file.
* sysdeps/ia64/fpu/s_modfl.S: New file.
* sysdeps/ia64/fpu/s_nearbyint.S: New file.
* sysdeps/ia64/fpu/s_nearbyintf.S: New file.
* sysdeps/ia64/fpu/s_nearbyintl.S: New file.
* sysdeps/ia64/fpu/s_rint.S: New file.
* sysdeps/ia64/fpu/s_rintf.S: New file.
* sysdeps/ia64/fpu/s_rintl.S: New file.
* sysdeps/ia64/fpu/s_round.S: New file.
* sysdeps/ia64/fpu/s_roundf.S: New file.
* sysdeps/ia64/fpu/s_roundl.S: New file.
* sysdeps/ia64/fpu/s_scalbn.S: New file.
* sysdeps/ia64/fpu/s_scalbnf.S: New file.
* sysdeps/ia64/fpu/s_scalbnl.S: New file.
* sysdeps/ia64/fpu/s_significand.S: New file.
* sysdeps/ia64/fpu/s_significandf.S: New file.
* sysdeps/ia64/fpu/s_significandl.S: New file.
* sysdeps/ia64/fpu/s_sin.c: New file.
* sysdeps/ia64/fpu/s_sincos.c: New file.
* sysdeps/ia64/fpu/s_sincosf.c: New file.
* sysdeps/ia64/fpu/s_sincosl.c: New file.
* sysdeps/ia64/fpu/s_sinf.c: New file.
* sysdeps/ia64/fpu/s_sinl.c: New file.
* sysdeps/ia64/fpu/s_tan.S: New file.
* sysdeps/ia64/fpu/s_tanf.S: New file.
* sysdeps/ia64/fpu/s_tanl.S: New file.
* sysdeps/ia64/fpu/s_trunc.S: New file.
* sysdeps/ia64/fpu/s_truncf.S: New file.
* sysdeps/ia64/fpu/s_truncl.S: New file.
* sysdeps/ia64/fpu/w_acos.c: New file.
* sysdeps/ia64/fpu/w_acosf.c: New file.
* sysdeps/ia64/fpu/w_acosl.c: New file.
* sysdeps/ia64/fpu/w_asin.c: New file.
* sysdeps/ia64/fpu/w_asinf.c: New file.
* sysdeps/ia64/fpu/w_asinl.c: New file.
* sysdeps/ia64/fpu/w_atan2.c: New file.
* sysdeps/ia64/fpu/w_atan2f.c: New file.
* sysdeps/ia64/fpu/w_atan2l.c: New file.
* sysdeps/ia64/fpu/w_cosh.c: New file.
* sysdeps/ia64/fpu/w_coshf.c: New file.
* sysdeps/ia64/fpu/w_coshl.c: New file.
* sysdeps/ia64/fpu/w_exp.c: New file.
* sysdeps/ia64/fpu/w_expf.c: New file.
* sysdeps/ia64/fpu/w_fmod.c: New file.
* sysdeps/ia64/fpu/w_fmodf.c: New file.
* sysdeps/ia64/fpu/w_fmodl.c: New file.
* sysdeps/ia64/fpu/w_hypot.c: New file.
* sysdeps/ia64/fpu/w_hypotf.c: New file.
* sysdeps/ia64/fpu/w_hypotl.c: New file.
* sysdeps/ia64/fpu/w_log.c: New file.
* sysdeps/ia64/fpu/w_log10.c: New file.
* sysdeps/ia64/fpu/w_log10f.c: New file.
* sysdeps/ia64/fpu/w_log10l.c: New file.
* sysdeps/ia64/fpu/w_logf.c: New file.
* sysdeps/ia64/fpu/w_logl.c: New file.
* sysdeps/ia64/fpu/w_pow.c: New file.
* sysdeps/ia64/fpu/w_powf.c: New file.
* sysdeps/ia64/fpu/w_powl.c: New file.
* sysdeps/ia64/fpu/w_remainder.c: New file.
* sysdeps/ia64/fpu/w_remainderf.c: New file.
* sysdeps/ia64/fpu/w_remainderl.c: New file.
* sysdeps/ia64/fpu/w_scalb.c: New file.
* sysdeps/ia64/fpu/w_scalbf.c: New file.
* sysdeps/ia64/fpu/w_scalbl.c: New file.
* sysdeps/ia64/fpu/w_sqrt.c: New file.
* sysdeps/ia64/fpu/w_sqrtf.c: New file.
* sysdeps/ia64/fpu/w_sqrtl.c: New file.
* sysdeps/ia64/fpu/libm-test-ulps: Adjust for long double
implementation.
* sysdeps/ia64/fpu/bits/mathdef.h: Correct float_t and double_t types.
Change FP_ILOGBNAN for new implementation.
* Verions.def: Add 2.2.3 versions.
2001-02-12 Andreas Jaeger <aj@suse.de>
* posix/Makefile (tests): Don't run bug-regex2 when
cross-compiling.
* libio/Makefile (tests): Don't run test-freopen when
cross-compiling.
* manual/stdio.texi (Streams and I18N): Fix typos.
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.
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.
* stdio-common/Makefile (tests): Add tst-fmemopen.
* stdio-common/tst-fmemopen.c: New file.
Test case by Ben Collins <bcollins@debian.org>.
* libio/iofopncook.c (_IO_cookie_seek): Correct test for error.
* libio/fmemopen.c (fmemopen_read): Return 0 at end of buffer.
(fmemopen_write): Set errno at end of buffer.
2000-09-24 Ulrich Drepper <drepper@redhat.com>
* libio/genops.c (_IO_doallocbuf): Don't use single byte buffer if
stream is in wide mode.
* stdio-common/vfprintf.c (buffered_vfprintf): Orient stream.
2000-09-21 Bruno Haible <haible@clisp.cons.org>
* iconvdata/iso-2022-cn-ext.c (EMIT_SHIFT_TO_INIT): Shift __count
by 3, not 2.
(INIT_PARAMS, UPDATE_PARAMS): Likewise.
handling.
* stdio/tst-printf.sh: Adjust expected results.
Reported by Joseph S. Myers <jsm28@cam.ac.uk>.
2000-09-05 Ulrich Drepper <drepper@redhat.com>
* libio/libio.h (_IO_fwide_maybe_incompatible): For glibc 2.0
compatibility check for old stream and call _IO_wide in doubt.
(_IO_fwide): Use _IO_fwide_maybe_incompatible macro.
* libio/iofwide.c (_IO_fwide): If compatibility with glibc 2.0 is
needed tst for such an old structure and don't do anything.
* libio/freopen.c: Remove declaration of _IO_stdin_used.
* soft-fp/Makefile (distribute): Add op-8.h and testit.c.
* soft-fp/Makefile (distribute): Add the math functions, too.
* soft-fp/Makefile (distribute): Add ChangeLog, Banner, and configure.
* soft-fp/soft-fp.h (_FP_ROUND_ZERO): Cast 0 to void before using it
as a statement.
* soft-fp/sysdeps/powerpc/Makefile (routines): New file.
* soft-fp/sysdeps/powerpc/q_*: New files.
2000-09-02 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Fixes for fcntl64.
* libio/fmemopen.c (fmemopen_close): Revert one part of last
patch.
2000-07-24 Jakub Jelinek <jakub@redhat.com>
* libio/wfiledoalloc.c (_IO_wfile_doallocate): Measure size
in wide characters, not bytes.
* libio/tst_putwc.c (do_test): Add test for writing lots of data
into file.
2000-07-22 Bruno Haible <haible@clisp.cons.org>
* locale/nl_langinfo.c (nl_langinfo): Accept items belonging to the
new categories LC_PAPER, LC_NAME, LC_ADDRESS, LC_TELEPHONE,
LC_MEASUREMENT, LC_IDENTIFICATION.
* locale/xlocale.h (struct __locale_struct): Increase size of
__locales array.
* locale/duplocale.c (__duplocale): Copy newly added categories as
well.
* locale/freelocale.c (__freelocale): Free newly added categories.
* locale/newlocale.c (__newlocale): Fix typo in sanity check.
If a base is given, use it, don't simply return it.
2000-07-22 Bruno Haible <haible@clisp.cons.org>
* crypt/md5-crypt.c (__md5_crypt_r): Avoid gcc warnings: Use pointer
variables, copied_key and copied_salt, instead of boolean variables.
* libio/Makefile (routines): Add fwide.
* libio/iofwide.c (_IO_fwide): Remove locking. This is done in
fwide now. Internal calls to _IO_fwide must do locking themselves
or don't need locking.
* libio/fwide.c: New file.
* elf/dl-load.c (_dl_map_object): Implement handling of DF_1_NODEFLIB.
2000-07-20 Ulrich Drepper <drepper@redhat.com>
* libio/Makefile (tests): Add tst_wprintf2.
(tst_wprintf2-ARGS): Define.
* libio/tst_wprintf2.c: New file.
Based on a test case by Yoshito Kawada <KAWADA@jp.ibm.com>.
* libio/wfiledoalloc.c: Only allocate external buffer if this
hasn't happened yet.
* libio/wfileops.c (_IO_wdo_write): Overflow only if there is really
something in the buffer. gconv call can write up to end of the
buffer, not only _IO_write_end.
(_IO_wfile_overflow): Allocate also external buffer.
* stdio-common/vfprintf.c (process_string_arg): Handle multibyte
strings with precision in vfwprintf correctly.
* stdio-common/vfprintf.c: Fix completely broken handling of
unbuffered wide character streams.
Reported by Yoshito Kawada <KAWADA@jp.ibm.com>.
* libio/libioP.h (_IO_ITER): Revert to type _IO_FILE*.
(FILEBUF_LITERAL): Add cast for CHAIN init.
* libio/genops.c (_IO_un_link, _IO_link_in, _IO_iter_begin): Add casts.
(_IO_flush_all, _IO_flush_all_linebuffered, _IO_unbuffer_write):
Revert type of `fp' to _IO_FILE*.
(_IO_iter_file): Remove cast.
(_IO_iter_next): Elide intermediate member reference.
* libio/libio.h (_IO_FILE): Revert type of _chain to _IO_FILE*.
* libio/libioP.h (_IO_ITER): Revert to type _IO_FILE*.
(FILEBUF_LITERAL): Add cast for CHAIN init.
* libio/genops.c (_IO_un_link, _IO_link_in, _IO_iter_begin): Add casts.
(_IO_flush_all, _IO_flush_all_linebuffered, _IO_unbuffer_write):
Revert type of `fp' to _IO_FILE*.
(_IO_iter_file): Remove cast.
(_IO_iter_next): Elide intermediate member reference.
2000-07-03 Ulrich Drepper <drepper@redhat.com>
* libio/genops.c (__overflow): Use _IO_fwide to orient the stream.
(__uflow): Likewise.
(__underflow): Likewise.
* libio/wgenops.c (__wunderflow): Likewise.
* stdio-common/tst-unbputc.c: New file.
* stdio-common/tst-unbputc.sh: New file.
* stdio-common/Makefile: Add rules to build and run tst-unbputc.
* po/en_GB.po: New file.
Contributed by Robert Brady <rwb197@ecs.soton.ac.uk>.
* libio/Makefile (tests): Add tst-getwc and tst_putwc.
(CFLAGS-tst_putwc.c): New definition.
* libio/tst_getwc.c: New file.
* libio/tst_getwc.input: New file.
* libio/tst_putwc.c: New file.
2000-06-19 Ulrich Drepper <drepper@redhat.com>
* iconv/gconv.h (__gconv_trans_fct): Add new parameter.
General namespace cleanup.
(struct __gconv_trans_data): Add next field.
(struct __gconv_step_data): Make __trans a pointer.
* iconv/gconv_conf.c: Split out code to find gconv directories from
__gconv_read_conf in new functions.
* iconv/gconv_int.h: Define new data structure and declare new
functions for handling of gconv directory list.
* iconv/gconv_open.c: Allow more than one error handling step being
used. Call function to load error handling module if it is none
of the builtin transformations.
* iconv/gconv_close.c: Add code to free transliteration data.
* iconv/gconv_trans.c: Add functions to load and unload modules
implementing transliteration etc.
* iconv/skeleton.c: Call all context functions now that more than
one module is allowed.
* iconv/loop.c (STANDARD_ERR_HANDLING): New macro.
* iconv/gconv_simple.c: Use STANDARD_ERR_HANDLING macro for places
where the full error handling using transliteration is needed.
* iconvdata/8bit-gap.c: Likewise.
* iconvdata/8bit-generic.c: Likewise.
* iconvdata/ansi_x3.110.c: Likewise.
* iconvdata/big5.c: Likewise.
* iconvdata/big5hkscs.c: Likewise.
* iconvdata/euc-cn.c: Likewise.
* iconvdata/euc-jp.c: Likewise.
* iconvdata/euc-kr.c: Likewise.
* iconvdata/euc-tw.c: Likewise.
* iconvdata/gbgbk.c: Likewise.
* iconvdata/gbk.c: Likewise.
* iconvdata/iso-2022-cn.c: Likewise.
* iconvdata/iso-2022-jp.c: Likewise.
* iconvdata/iso-2022-kr.c: Likewise.
* iconvdata/iso646.c: Likewise.
* iconvdata/iso8859-1.c: Likewise.
* iconvdata/iso_6937-2.c: Likewise.
* iconvdata/iso_6937.c: Likewise.
* iconvdata/johab.c: Likewise.
* iconvdata/sjis.c: Likewise.
* iconvdata/t.61.c: Likewise.
* iconvdata/uhc.c: Likewise.
* iconvdata/unicode.c: Likewise.
* iconvdata/utf-16.c: Likewise.
* libio/iofwide.c: Reset __trans member of __gconv_trans_data
structure correctly after last change.
* wcsmbs/btowc.c: Likewise.
* wcsmbs/mbrtowc.c: Likewise.
* wcsmbs/mbsnrtowcs.c: Likewise.
* wcsmbs/mbsrtowcs.c: Likewise.
* wcsmbs/wcrtomb.c: Likewise.
* wcsmbs/wcsnrtombs.c: Likewise.
* wcsmbs/wcsrtombs.c: Likewise.
* wcsmbs/wctob.c: Likewise.
* localedata/Makefile: Set -Wno-format for some files since gcc does
not know all the format specifiers.
2000-06-18 Ulrich Drepper <drepper@redhat.com>
* locale/loadlocale.c (_nl_unload_locale): Remove a bit of
unneeded code.
* locale/lc-time.c (_nl_init_era_entries): Likewise.
2000-06-04 Kaz Kylheku <kaz@ashi.footprints.net>
Lock for stdio stream list becomes global, for use in LinuxThreads.
* libio/genops.c (_IO_iter_begin, _IO_iter_end,
_IO_iter_next, _IO_iter_file, _IO_list_lock, _IO_list_unlock,
_IO_list_resetlock): New interface for iterating global list of
streams without accessing the _IO_list_all global variable,
and for manipulating the lock which protects this list.
* libio/libioP.h: Likewise.
* libio/Version: Add entries for the new functions.
* libio/libioP.h (_IO_ITER): New typedef, just an alias for
pointer to _IO_FILE.