aboutsummaryrefslogtreecommitdiff
path: root/stdio-common/vfprintf.c
AgeCommit message (Collapse)Author
2002-03-13Update.Ulrich Drepper
2002-03-13 Wolfram Gloger <wg@malloc.de> * malloc/malloc.c (sYSMALLOc): Don't change brk if mmap failed. 2002-03-02 Andreas Schwab <schwab@suse.de> * stdio-common/vfprintf.c (process_arg): Fix decimal format with 'h' flag and positional arg. * stdio-common/tst-printf.c (rfg3): New function to test positional arguments. (main): Fix some warnings. 2002-03-13 Jakub Jelinek <jakub@redhat.com> * elf/dl-minimal.c (_itoa): Use _itoa_lower_digits_internal if SHARED. * elf/dl-reloc.c (_dl_reloc_bad_type): Likewise.
2002-03-11(vfprintf): Avoid crashing for ridiculously large widths and precisions.Ulrich Drepper
2002-02-26Update.Ulrich Drepper
2002-02-25 Ulrich Drepper <drepper@redhat.com> * assert/assert-perr.c: Use INTUSE to reference functions and variables inside libc itself. Ise INTDEF and INTDEF2 to define appropriate aliases. Add prototypes for the new aliases. * assert/assert.c: Likewise. * include/libc-symbols.h: Likewise. * include/stdio.h: Likewise. * include/netinet/in.h: Likewise. * include/rpc/auth.h: Likewise. * include/rpc/auth_unix.h: Likewise. * include/rpc/key_prot.h: Likewise. * include/rpc/pmap_prot.h: Likewise. * include/rpc/pmap_rmt.h: Likewise. * include/rpc/rpc_msg.h: Likewise. * include/rpc/xdr.h: Likewise. * inet/gethstbyad_r.c: Likewise. * inet/gethstbynm2_r.c: Likewise. * inet/gethstbynm_r.c: Likewise. * inet/gethstent_r.c: Likewise. * inet/in6_addr.c: Likewise. * libio/__fpurge.c: Likewise. * libio/filedoalloc.c: Likewise. * libio/fileops.c: Likewise. * libio/ftello.c: Likewise. * libio/ftello64.c: Likewise. * libio/genops.c: Likewise. * libio/iofclose.c: Likewise. * libio/iofdopen.c: Likewise. * libio/iofflush.c: Likewise. * libio/iofflush_u.c: Likewise. * libio/iofgetpos.c: Likewise. * libio/iofgetpos64.c: Likewise. * libio/iofgets.c: Likewise. * libio/iofgets_u.c: Likewise. * libio/iofopen.c: Likewise. * libio/iofopncook.c: Likewise. * libio/iofputs.c: Likewise. * libio/iofread.c: Likewise. * libio/iofread_u.c: Likewise. * libio/iofsetpos.c: Likewise. * libio/iofsetpos64.c: Likewise. * libio/ioftell.c: Likewise. * libio/iofwrite.c: Likewise. * libio/iogetline.c: Likewise. * libio/iogets.c: Likewise. * libio/iogetwline.c: Likewise. * libio/iolibio.h: Likewise. * libio/iopadn.c: Likewise. * libio/iopopen.c: Likewise. * libio/ioseekoff.c: Likewise. * libio/ioseekpos.c: Likewise. * libio/iosetbuffer.c: Likewise. * libio/iosetvbuf.c: Likewise. * libio/ioungetc.c: Likewise. * libio/ioungetwc.c: Likewise. * libio/iovdprintf.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * libio/libioP.h: Likewise. * libio/memstream.c: Likewise. * libio/obprintf.c: Likewise. * libio/oldfileops.c: Likewise. * libio/oldiofclose.c: Likewise. * libio/oldiofdopen.c: Likewise. * libio/oldiofgetpos.c: Likewise. * libio/oldiofgetpos64.c: Likewise. * libio/oldiofopen.c: Likewise. * libio/oldiofsetpos.c: Likewise. * libio/oldiofsetpos64.c: Likewise. * libio/oldiopopen.c: Likewise. * libio/oldstdfiles.c: Likewise. * libio/putc.c: Likewise. * libio/setbuf.c: Likewise. * libio/setlinebuf.c: Likewise. * libio/stdfiles.c: Likewise. * libio/stdio.c: Likewise. * libio/strops.c: Likewise. * libio/vasprintf.c: Likewise. * libio/vscanf.c: Likewise. * libio/vsnprintf.c: Likewise. * libio/vswprintf.c: Likewise. * libio/wfiledoalloc.c: Likewise. * libio/wfileops.c: Likewise. * libio/wgenops.c: Likewise. * libio/wstrops.c: Likewise. * malloc/mtrace.c: Likewise. * misc/error.c: Likewise. * misc/syslog.c: Likewise. * nss/getXXbyYY_r.c: Likewise. * nss/getXXent_r.c: Likewise. * nss/hosts-lookup.c: Likewise. * stdio-common/getw.c * stdio-common/printf-prs.c: Likewise. * stdio-common/printf_fp.c: Likewise. * stdio-common/printf_size.c: Likewise. * stdio-common/putw.c: Likewise. * stdio-common/scanf.c: Likewise. * stdio-common/sprintf.c: Likewise. * stdio-common/tmpfile64.c: Likewise. * stdio-common/vfprintf.c: Likewise. * stdio-common/vfscanf.c: Likewise. * stdlib/strfmon.c: Likewise. * sunrpc/auth_des.c: Likewise. * sunrpc/auth_none.c: Likewise. * sunrpc/auth_unix.c: Likewise. * sunrpc/authdes_prot.c: Likewise. * sunrpc/authuxprot.c: Likewise. * sunrpc/clnt_perr.c: Likewise. * sunrpc/clnt_raw.c: Likewise. * sunrpc/clnt_tcp.c: Likewise. * sunrpc/clnt_udp.c: Likewise. * sunrpc/clnt_unix.c: Likewise. * sunrpc/key_call.c: Likewise. * sunrpc/key_prot.c: Likewise. * sunrpc/openchild.c: Likewise. * sunrpc/pm_getmaps.c: Likewise. * sunrpc/pm_getport.c: Likewise. * sunrpc/pmap_clnt.c: Likewise. * sunrpc/pmap_prot.c: Likewise. * sunrpc/pmap_prot2.c: Likewise. * sunrpc/pmap_rmt.c: Likewise. * sunrpc/rpc_cmsg.c: Likewise. * sunrpc/rpc_prot.c: Likewise. * sunrpc/svc_authux.c: Likewise. * sunrpc/svc_raw.c: Likewise. * sunrpc/svc_simple.c: Likewise. * sunrpc/svc_tcp.c: Likewise. * sunrpc/svc_udp.c: Likewise. * sunrpc/svc_unix.c: Likewise. * sunrpc/xdr.c: Likewise. * sunrpc/xdr_array.c: Likewise. * sunrpc/xdr_mem.c: Likewise. * sunrpc/xdr_rec.c: Likewise. * sunrpc/xdr_ref.c: Likewise. * sunrpc/xdr_stdio.c: Likewise. * sysdeps/generic/_strerror.c: Likewise. * sysdeps/generic/printf_fphex.c: Likewise. * sysdeps/generic/tmpfile.c: Likewise. * sysdeps/gnu/errlist.awk: Likewise. * sysdeps/gnu/errlist.c: Likewise. * libio/Makefile (routines): Remove iosprint. * libio/iosprintf.c: Removed
2001-12-14Update.Ulrich Drepper
2001-12-13 Ulrich Drepper <drepper@redhat.com> * stdio-common/tst-sprintf.c: New file. 2001-12-13 Andreas Schwab <schwab@suse.de> * stdio-common/vfprintf.c (process_string_arg): Correctly handle zero precision with wide character string format.
2001-08-24* sysdeps/mach/hurd/bits/libc-lock.h: New file, initially copied fromRoland McGrath
sysdeps/mach version. Implement counting ("recursive") mutexes on top of cthreads mutexes. * sysdeps/mach/hurd/bits/stdio-lock.h: File removed; generic now works. * sysdeps/generic/bits/stdio-lock.h (_IO_lock_initializer): Define to _LIBC_LOCK_RECURSIVE_INITIALIZER if defined, else do an #error. (__libc_cleanup_region_start, __libc_cleanup_region_end, __libc_clean_end): Define these to call the cleanup function after normal exit when they're supposed to. * sysdeps/mach/bits/libc-lock.h (__libc_cleanup_region_start): Take new first arg DOIT, a boolean saying whether to really install any cleanup handler. (__libc_cleanup_region_end): Do nothing if start's DOIT arg was zero. (__libc_cleanup_end): Likewise. * stdio-common/vfscanf.c (LOCK_STREAM): Pass new arg. * stdio-common/vfprintf.c (buffered_vfprintf, vfprintf): Likewise. * sysdeps/mach/hurd/bits/stdio-lock.h (_IO_cleanup_region_start): Likewise. * misc/syslog.c (vsyslog, openlog, closelog): Likewise. * sysdeps/generic/bits/stdio-lock.h (_IO_cleanup_region_start, _IO_cleanup_region_start_noarg): Likewise.
2001-08-17Update.Ulrich Drepper
* libio/tst-ungetwc2.c (main): Define str const. * include/wchar.h: Add prototypes for __fwprintf and __vfwprintf. * libio/fwprintf.c: Also define __fwprintf. * stdio-common/vfprintf.c [COMPILE_WPRINTF]: Also define __vfwprintf. * argp/argp-fmtstream.c: Handle wide oriented stderr stream. * assert/assert-perr.c: Likewise. * assert/assert.c: Likewise. * gmon/gmon.c: Likewise. * inet/rcmd.c: Likewise. * malloc/obstack.c: Likewise. * misc/err.c: Likewise. * misc/error.c: Likewise. * misc/getpass.c: Likewise. * posix/getopt.c: Likewise. * resolv/res_hconf.c: Likewise. * stdio-common/perror.c: Likewise. * stdio-common/psignal.c: Likewise. * stdlib/fmtmsg.c: Likewise. * sunrpc/auth_unix.c: Likewise. * sunrpc/clnt_perr.c: Likewise. * sunrpc/clnt_tcp.c: Likewise. * sunrpc/clnt_udp.c: Likewise. * sunrpc/clnt_unix.c: Likewise. * sunrpc/svc_simple.c: Likewise. * sunrpc/svc_tcp.c: Likewise. * sunrpc/svc_udp.c: Likewise. * sunrpc/svc_unix.c: Likewise. * sunrpc/xdr.c: Likewise. * sunrpc/xdr_array.c: Likewise. * sunrpc/xdr_rec.c: Likewise. * sunrpc/xdr_ref.c: Likewise. * sysdeps/generic/wordexp.c: Likewise. * misc/err.c: Handle wide oriented stderr stream.
2001-08-11Update.Ulrich Drepper
* libio/iovdprintf.c (_IO_vdprintf): Set _IO_USER_LOCK flag for temporary stream. Don't define lock. * libio/iovsprintf.c: Likewise. * libio/iovsnprintf.c: Likewise. * libio/iovswprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * libio/iovswscanf.c: Likewise. * stdio-common/vfprintf.c [USE_IN_LIBIO] (buffered_vfprintf): Likewise. * libio/genops.c (_IO_no_init): Don't call _IO_lock_init if _lock is NULL. (_IO_default_finish): Likewise. * libio/wgenops.c (_IO_wdefault_finish): Likewise.
2001-07-06Update to LGPL v2.1.Andreas Jaeger
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-01-21(vfprintf): Add casts.Andreas Jaeger
2000-12-27Update.Andreas Jaeger
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-09-25Update.Ulrich Drepper
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-24Update.Ulrich Drepper
2000-09-24 Ulrich Drepper <drepper@redhat.com> * stdio-common/vfprintf.c (process_arg): Handle %hhn. Add missing case in va_arg handling for numbers. * stdio-common/tst-printf.c (main): Add tests for %hhu and %hhn handling. Reported by Joseph S. Myers <jsm28@cam.ac.uk>.
2000-09-05Update.Ulrich Drepper
2000-09-05 Ulrich Drepper <drepper@redhat.com> * stdio-common/vfprintf.c (process_string_arg): Handle precision in wide char case correctly. Don't allocate too long temporary strings with alloca. * stdio-common/Makefile (tests): Add tst-swprintf. (tst-swprintf-ENV): New variable. * stdio-common/tst-swprintf.c: New file. * soft-fp/sysdeps/sparc/sparc64/qp_neg.S: Move from here... * sysdeps/sparc/sparc64/soft-fp/qp_neg.S: ... to here.
2000-08-23Update.Ulrich Drepper
* stdio-common/vfprintf.c: Handle %F format. * stdio-common/printf-parse.h (parse_one_spec): Likewise. Reported by Joseph S. Myers <jsm28@cam.ac.uk>. * stdio-common/tstdiomisc.c: Add test for %F printf format. * po/zh.po: New file.
2000-08-21Update.Ulrich Drepper
* argp/argp-help.c: Unify use of function aliases to make more compact PLT. * include/libintl.h: Likewise. * inet/rcmd.c: Likewise. * intl/dcigettext.c: Likewise. * libio/iofputws.c: Likewise. * libio/iofputws_u.c: Likewise. * libio/iogetwline.c: Likewise. * libio/swprintf.c: Likewise. * malloc/malloc.c: Likewise. * nss/digits_dots.c: Likewise. * posix/fnmatch.c: Likewise. * posix/spawn_faction_addclose.c: Likewise. * posix/spawn_faction_adddup2.c: Likewise. * posix/spawn_faction_addopen.c: Likewise. * posix/spawni.c: Likewise. * posix/wordexp.c: Likewise. * posix/spawni.c: Likewise. * resolv/res_hconf.c: Likewise. * resolv/res_init.c: Likewise. * shadow/lckpwdf.c: Likewise. * signal/sighold.c: Likewise. * signal/sigrelse.c: Likewise. * stdio-common/printf-parse.h: Likewise. * stdio-common/printf-prs.c: Likewise. * stdio-common/printf_fp.c: Likewise. * stdio-common/vfprintf.c: Likewise. * stdio-common/vfscanf.c: Likewise. * stdlib/rpmatch.c: Likewise. * sunrpc/create_xid.c: Likewise. * sunrpc/key_call.c: Likewise. * sysdeps/generic/setrlimit64.c: Likewise. * sysdeps/generic/utmp_file.c: Likewise. * sysdeps/generic/vlimit.c: Likewise. * sysdeps/posix/posix_fallocate.c: Likewise. * sysdeps/posix/posix_fallocate64.c: Likewise. * sysdeps/posix/sigpause.c: Likewise. * sysdeps/posix/sigset.c: Likewise. * sysdeps/unix/grantpt.c: Likewise. * sysdeps/unix/bsd/ualarm.c: Likewise. * sysdeps/unix/sysv/linux/dl-origin.c: Likewise. * sysdeps/unix/sysv/linux/getloadavg.c: Likewise. * sysdeps/unix/sysv/linux/ttyname.c: Likewise. * sysdeps/unix/sysv/linux/ulimit.c: Likewise. * time/strftime.c: Likewise. * wcsmbs/wcscoll.c: Likewise. * wcsmbs/wcsxfrm.c: Likewise. * sysdeps/powerpc/fpu_control.h (_FPU_GETCW): Allow gcc to generate postinc/predec instruction.
2000-08-09* stdio-common/vfprintf.c (vfprintf): Also set `is_long' if theAndreas Schwab
long long modifier is seen.
2000-07-30Update.Ulrich Drepper
2000-07-29 Ulrich Drepper <drepper@redhat.com> * locale/langinfo.h: Add entries for extra tables in CTYPE data. * locale/programs/ld-ctype.c: Adjust for this. * locale/programs/ld-collate.c: Add more alignment checks. * locale/string/strcoll.c: Likewise. 2000-07-30 Mark Kettenis <kettenis@gnu.org> * stdio-common/vfprintf.c: Move inclusion of _i18n_number.h outside USE_IN_LIBIO block.
2000-07-29Update.Ulrich Drepper
2000-07-28 Ulrich Drepper <drepper@redhat.com> * stdio-common/_i18n_itoa.c: Removed. * stdio-common/_i18n_itoa.h: Removed. * stdio-common/_i18n_itowa.c: Removed. * stdio-common/_i18n_itowa.h: Removed. * stdio-common/_i18n_number.h: New file. * stdio-common/Depend: New file. * stdio-common/printf-parse.h: Handle I modifier correctly. Optimize. * stdio-common/vfprintf.c: Rewrite buffer handling for integer printing. Change printing of numbers with locale specific digits to use new code in _i18n_number.h. * stdio-common/bug13.c: Improve messages. * locale/programs/ld-ctype.c (ctype_read): Improve error message. (set_class_defaults): Always search also for Uxxxx names. Detect insufficient number of outdigits. * locale/Makefile (C-translit.h): Use mv not $(move-if-changed).
2000-07-23Update.Ulrich Drepper
* stdio-common/vfprintf.c (process_string_arg): For wide character version, handle precision also correctly.
2000-07-22Update.Ulrich Drepper
2000-07-22 Ulrich Drepper <drepper@redhat.com> * stdio-common/vfprintf.c (process_string_arg): Correct handling of multibyte character strings in %s format with precision.
2000-07-20Update.Ulrich Drepper
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>.
2000-07-07Update.Ulrich Drepper
* stdio-common/vfprintf.c (process_string_arg): Check result of wcrtomb call and bail out if it failed. * configure.in: Fix CFLAGS-memprofstat.c definition after
2000-06-292000-06-28 Greg McGary <greg@mcgary.org>Greg McGary
* libio/libio.h (struct _IO_cookie_file): Move struct type defintion out. (_IO_FILE): Declare chain as (struct _IO_FILE_plus *). * libio/libioP.h (struct _IO_cookie_file): Move struct type defintion in. (_IO_JUMPS): Don't cast THIS--expect arg to be a (struct _IO_FILE_plus *). (_IO_JUMPS_FUNC): Express in terms of _IO_JUMPS, and add cast to THIS, since _IO_JUMPS no longer does it implicitly. (_IO_file_init, _IO_old_file_init, _IO_new_file_init): Declare arg type as (struct _IO_FILE_plus *). (_IO_str_init_static, _IO_str_init_readonly): Declare 1st arg as (_IO_strfile *). * libio/strops.c (_IO_str_init_static, _IO_str_init_readonly): Declare 1st arg as (_IO_strfile *). * libio/fileops.c (_IO_new_file_init): Declare arg type as (struct _IO_FILE_plus *). * libio/oldfileops.c (_IO_old_file_init): Likewise. * libio/genops.c (_IO_link_in, _IO_un_link): Likewise. (_IO_flush_all, _IO_flush_all_linebuffered, _IO_unbuffer_write): Declare iteration pointer as (struct _IO_FILE_plus *). (_IO_iter_next, _IO_iter_file): _IO_ITER is now (struct _IO_FILE_plus *). * libio/stdfiles.c (_IO_list_all): Declare as (struct _IO_FILE_plus *). * libio/oldstdfiles.c (_IO_list_all): Likewise. (_IO_check_libio): Set user-visible handles to (struct _IO_FILE_plus *). * libio/stdio.c (stdin, stdout, stderr): Set user-visible handles to (struct _IO_FILE_plus *). * libio/iofdopen.c (_IO_new_fdopen): Pass FILE handle pointer whose high bound includes vtable to all functions that will use vtable. For streambufs, pass pointer whose bounds include struct _IO_strfile. * libio/wgenops.c (_IO_wdefault_finish): Likewise. * libio/oldiofdopen.c (_IO_old_fdopen): Likewise. * libio/iofopen.c (_IO_new_fopen): Likewise. * libio/oldiofopen.c (_IO_old_fopen): Likewise. * libio/iofopen64.c (_IO_fopen64): Likewise. * libio/iopopen.c (_IO_new_popen): Likewise. * libio/oldiopopen.c (_IO_old_popen): Likewise. * libio/memstream.c (open_memstream): Likewise. * libio/iovsscanf.c (_IO_vsscanf): Likewise. * libio/iovsprintf.c (_IO_vsprintf): Likewise. * libio/iovdprintf.c (_IO_vdprintf): Likewise. * libio/iofopncook.c (_IO_cookie_init): Likewise. * libio/obprintf.c (_IO_obstack_vprintf): Likewise. * libio/vasprintf.c (_IO_vasprintf): Likewise. * libio/vsnprintf.c (_IO_vsnprintf): Likewise. * libio/stdfiles.c (_IO_stdout_, _IO_stderr_): Likewise. * libio/oldstdfiles.c (_IO_stdout_, _IO_stderr_): Likewise. * stdlib/strfmon.c (__strfmon_l): Likewise. * stdio-common/vfprintf.c (buffered_vfprintf): Likewise. (vfprintf): Qualify computed-goto targets as unbounded. 2000-06-28 Greg McGary <greg@mcgary.org> * libio/libio.h (struct _IO_cookie_file): Move struct type defintion out. (_IO_FILE): Declare chain as (struct _IO_FILE_plus *). * libio/libioP.h (struct _IO_cookie_file): Move struct type defintion in. (_IO_JUMPS): Don't cast THIS--expect arg to be a (struct _IO_FILE_plus *). (_IO_JUMPS_FUNC): Express in terms of _IO_JUMPS, and add cast to THIS, since _IO_JUMPS no longer does it implicitly. (_IO_file_init, _IO_old_file_init, _IO_new_file_init): Declare arg type as (struct _IO_FILE_plus *). (_IO_str_init_static, _IO_str_init_readonly): Declare 1st arg as (_IO_strfile *). * libio/strops.c (_IO_str_init_static, _IO_str_init_readonly): Declare 1st arg as (_IO_strfile *). * libio/fileops.c (_IO_new_file_init): Declare arg type as (struct _IO_FILE_plus *). * libio/oldfileops.c (_IO_old_file_init): Likewise. * libio/genops.c (_IO_link_in, _IO_un_link): Likewise. (_IO_flush_all, _IO_flush_all_linebuffered, _IO_unbuffer_write): Declare iteration pointer as (struct _IO_FILE_plus *). (_IO_iter_next, _IO_iter_file): _IO_ITER is now (struct _IO_FILE_plus *). * libio/stdfiles.c (_IO_list_all): Declare as (struct _IO_FILE_plus *). * libio/oldstdfiles.c (_IO_list_all): Likewise. (_IO_check_libio): Set user-visible handles to (struct _IO_FILE_plus *). * libio/stdio.c (stdin, stdout, stderr): Set user-visible handles to (struct _IO_FILE_plus *). * libio/iofdopen.c (_IO_new_fdopen): Pass FILE handle pointer whose high bound includes vtable to all functions that will use vtable. For streambufs, pass pointer whose bounds include struct _IO_strfile. * libio/wgenops.c (_IO_wdefault_finish): Likewise. * libio/oldiofdopen.c (_IO_old_fdopen): Likewise. * libio/iofopen.c (_IO_new_fopen): Likewise. * libio/oldiofopen.c (_IO_old_fopen): Likewise. * libio/iofopen64.c (_IO_fopen64): Likewise. * libio/iopopen.c (_IO_new_popen): Likewise. * libio/oldiopopen.c (_IO_old_popen): Likewise. * libio/memstream.c (open_memstream): Likewise. * libio/iovsscanf.c (_IO_vsscanf): Likewise. * libio/iovsprintf.c (_IO_vsprintf): Likewise. * libio/iovdprintf.c (_IO_vdprintf): Likewise. * libio/iofopncook.c (_IO_cookie_init): Likewise. * libio/obprintf.c (_IO_obstack_vprintf): Likewise. * libio/vasprintf.c (_IO_vasprintf): Likewise. * libio/vsnprintf.c (_IO_vsnprintf): Likewise. * libio/stdfiles.c (_IO_stdout_, _IO_stderr_): Likewise. * libio/oldstdfiles.c (_IO_stdout_, _IO_stderr_): Likewise. * stdlib/strfmon.c (__strfmon_l): Likewise. * stdio-common/vfprintf.c (buffered_vfprintf): Likewise. (vfprintf): Qualify computed-goto targets as unbounded.
2000-06-17Update.Ulrich Drepper
* stdio-common/vfprintf.c (vfprintf): Fix handling of I flag. more cases. * stdlib/strfmon.c: Corrected problems with missing signs and * sysdeps/unix/sysv/linux/alpha/syscall.S: Doc Fixes. * manual/message.texi (Using gettextized software): Doc Fixes. * manual/filesys.texi (File Size): Doc Fixes. * manual/charset.texi (glibc iconv Implementation): Doc Fixes. * locale/programs/ld-collate.c (collate_output): Doc Fixes. * iconv/gconv_db.c (find_derivation): Doc Fixes. * manual/install.texi: Doc Fixes. * manual/search.texi (Hash Search Function): Doc Fixes. * manual/stdio.texi (Output Conversion Syntax): Doc Fixes. * FAQ.in: Doc Fixes. * config.h.in: Doc Fixes. * sysdeps/generic/dl-sysdep.c: Doc Fixes.
2000-03-31Update.Ulrich Drepper
2000-03-29 Jes Sorensen <jes@pcatls01.cern.ch> * malloc/malloc.c: Declare bit flags UL so that they will not default to int size when being inverted. 2000-03-29 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/arm/errlist.c: Use shlib-compat macros. * sysdeps/unix/sysv/linux/arm/siglist.c: Likewise. 2000-03-29 Andreas Jaeger <aj@suse.de>, Ralf Baechle <ralf@uni-koblenz.de> * Makeconfig: Introduce new variable SHARED to mark code used in the shared library. * elf/dl-close.c: Use it instead of PIC. * elf/dl-load.c: Likewise. * elf/dl-open.c: Likewise. * hurd/geteuids.c: Likewise. * include/libc-symbols.h: Likewise. * include/shlib-compat.h: Likewise. * libio/freopen.c: Likewise. * linuxthreads/cancel.c: Likewise. * linuxthreads/pthread.c: Likewise. * linuxthreads/wrapsyscall.c: Likewise. * nss/nsswitch.c: Likewise. * stdio-common/vfprintf.c: Likewise. * sysdeps/arm/init-first.c: Likewise. * sysdeps/i386/init-first.c: Likewise * sysdeps/generic/init-first.c: Likewise. * sysdeps/generic/libc-start.c: Likewise. * sysdeps/mips/init-first.c: Likewise. * sysdeps/powerpc/elf/libc-start.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Likewise. * sysdeps/unix/sysv/linux/arm/siglist.c: Likewise. * sysdeps/unix/sysv/linux/arm/errlist.c: Likewise. * sysdeps/unix/sysv/linux/i386/chown.c: Likewise. * sysdeps/mips/machine-gmon.h (asm): Use __PIC__ as check.
2000-02-15Update.Ulrich Drepper
* stdio-common/vfprintf.c (vfprintf): Initialize thousands_sep. Define and initialize use_outdigits in the inner loops.
2000-01-29Update.Ulrich Drepper
2000-01-28 Ulrich Drepper <drepper@redhat.com> * stdio-common/vfprintf.c [COMPILE_WPRINT] (_i18n_itoa_word, _i18n_itoa): Fix parameter lists.
2000-01-29Update.Ulrich Drepper
2000-01-28 Ulrich Drepper <drepper@cygnus.com> * locale/C-monetary.c: Add initializers for new fields. * locale/C-numeric.c: Likewise. * locale/Makefile (distribute): Add indigits.h, indigitswc.h, outdigits.h, and outdigitswc.h. * locale/langinfo.h: Add _NL_MONETARY_DECIMAL_POINT_WC, _NL_MONETARY_THOUSANDS_SEP_WC, _NL_NUMERIC_DECIMAL_POINT_WC, and _NL_NUMERIC_THOUSANDS_SEP_WC. * locale/indigits.h: New file. * locale/indigitswc.h: New file. * locale/outdigits.h: New file. * locale/outdigitswc.h: New file. * locale/programs/ld-monetary.c: Write out decimal point and thousands separator info in wide character form. * locale/programs/ld-numeric.c: Likewise. * stdio-common/Makefile (routines): Add _i18n_itoa and _i18n_itowa. (distribute): Add _i18n_itoa.h and _i18n_itowa.h. * stdio-common/_i18n_itoa.c: New file. * stdio-common/_i18n_itoa.h: New file. * stdio-common/_i18n_itowa.c: New file. * stdio-common/_i18n_itowa.h: New file. * stdio-common/printf-parse.h: Parse 'I' flag. * stdio-common/printf.h (struct printf_info): Add i18n field. * stdio-common/vfprintf.c: Implement 'I' flag to print using locales' outdigits.
1999-10-05Update.Ulrich Drepper
* stdio-common/vfprintf.c: Correct last patch and use outchar instead of PUTC to output single characters.
1999-09-12Update.Ulrich Drepper
* stdio-common/vfprintf.c: Remove limitation on size of precision for integers.
1999-08-22Update.Ulrich Drepper
1999-08-21 Mark Kettenis <kettenis@gnu.org> * stdio-common/vfscanf.c [! USE_IN_LIBIO]: Add necessary definitions for MEMCPY, ISSPACE, ISDIGIT, ISXDIGIT, TOLOWER, L_, CHAR_T, UCHAR_T and WIN_T to make the code compile again when stdio is used instead of libio. * stdio-common/vfprintf.c [! USE_IN_LIBIO]: Add necessary definitions for CHAR_T, UCHAR_T, INT_T, L_, ISDIGIT, PAD and PUTC to make the code compile again when stdio is used instead of libio. (vfprintf): Only check for correct orientation if ORIENT is defined. * stdio-common/Makefile (routines): Only add vfwprintf and vfwscanf if we're using libio. 1999-08-21 Mark Kettenis <kettenis@gnu.org> * include/stdio.h [! USE_IN_LIBIO && __need_FILE]: Avoid defining any additional prototype just as we do for libio. 1999-08-21 Mark Kettenis <kettenis@gnu.org> * include/bits/xopen_lim.h: Do not define STREAM_MAX and TZNAME_MAX. These limits are not X/Open specific. * stdio-common/stdio_lim.h.in: Allow inclusion when __need_IOV_MAX is defined. 1999-08-21 Mark Kettenis <kettenis@gnu.org> * Rules: When generated stdio_lim.h, avoid defining IOV_MAX if UIO_MAXIOV is left undefined in sys/uio.h. * stdio-common/stdio_lim.h.in: Adapt for change above. 1999-08-21 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/mips/bits/sigaction.h (SA_RESETHAND): Add it. * sysdeps/mips/bits/dlfcn.h: Remove SGI specific calls, add RTLD_LOCAL. Patches by Ralf Baechle <ralf@uni-koblenz.de>
1999-08-17Update.Ulrich Drepper
1999-08-17 Ulrich Drepper <drepper@cygnus.com> * stdio-common/vfprintf.c (process_string_arg): Correct last patch and write correct number of bytes in case of %ls with precision. Reported by Shinya Hanataka <hanataka@abyss.rim.or.jp>.
1999-08-17Update.Ulrich Drepper
* stdio-common/vfprintf.c (process_string_arg) [printf]: Handle possibly unterminated strings for %ls when a precision is specified. Patch by Akira YOSHIYAMA <yosshy@tkf.att.ne.jp>.
1999-08-16Update.Ulrich Drepper
1999-08-10 H.J. Lu <hjl@gnu.org> * stdio-common/vfprintf.c (ORIENT): Check for the old stream. (vfprintf): Likewise. * stdio-common/vfscanf.c (ORIENT): Likewise. * libio/genops.c (__underflow): Likewise. (__uflow): Likewise. * libio/iofputs.c (_IO_fputs): Likewise. * libio/ioftell.c (_IO_ftell): Likewise. * libio/iofwrite.c (_IO_fwrite): Likewise. * libio/ioputs.c (_IO_puts): Likewise. * libio/iosetbuffer.c (_IO_setbuffer): Likewise. * libio/iosetvbuf.c (_IO_setvbuf): Likewise.
1999-08-15Update.Ulrich Drepper
1999-08-10 H.J. Lu <hjl@gnu.org> * resolv/nss_dns/dns-host.c (getanswer_r): Cleanup out-of- buffer handling. 1999-08-15 Ulrich Drepper <drepper@cygnus.com> * elf/elf.h: Define ElfXX_Versym. * elf/link.h (struct link_map): Use ElfXX_Versym for l_versyms definition. * stdio-common/vfprintf.c (process_string_arg): Handle precisions for string output correctly in the wide character case. Patch by Akira YOSHIYAMA <yosshy@tkf.att.ne.jp>. * intl/locale.alias: Add catalan. 1999-08-14 Andreas Jaeger <aj@arthur.rhein-neckar.de> * manual/install.texi (Configuring and compiling): Mention CFLAGS. 1999-08-15 Ulrich Drepper <drepper@cygnus.com> * po/pt_BR.po: New file. 1999-08-13 Andreas Jaeger <aj@arthur.rhein-neckar.de> * math/libm-test.c (yn_test): Adjust deltas for i386. (ccosh_test): Likewise. (jn_test): Likewise. 1999-08-15 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/_G_config.h: Get definition of mbstate_t.
1999-07-31Update.Ulrich Drepper
* configure.in: Add test for local label subtraction. * config.h.in: Ad HAVE_SUBTRACT_LOCAL_LABELS. * stdio-common/vfprintf.c (vfprintf): Use subtraction of local labels to reduce number of runtime relocations and move jump tables in read-only seciton.
1999-07-09Update.Ulrich Drepper
1999-07-09 Ulrich Drepper <drepper@cygnus.com> * stdio-common/vfprintf.c (buffered_vfprintf): Add locking.
1999-07-08Update.Ulrich Drepper
1999-07-08 Andreas Schwab <schwab@suse.de> * libio/iofopncook.c (fopencookie): Set _fileno to -2. * libio/libioP.h (_IO_file_is_open): Only check for -1, not all negative numbers. * libio/fileops.c (_IO_new_file_close_it): Set _fileno to -1, not EOF. * libio/oldfileops.c (_IO_old_file_close_it): Likewise. 1999-07-08 Andreas Schwab <schwab@suse.de> * stdio-common/vfprintf.c (buffered_vfprintf): Initialize _mode. 1999-07-08 Andreas Schwab <schwab@suse.de> * libio/fileno.c: Return -1 instead of EOF and set errno if the stream is not a real file stream. 1999-07-08 Andreas Schwab <schwab@suse.de> * manual/charset.texi: Fix typos.
1999-06-21Update.Ulrich Drepper
1999-06-18 Thorsten Kukuk <kukuk@suse.de> * sysdeps/alpha/atomicity.h: Correct counting of subsections. 1999-06-17 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * stdlib/tst-strtoll.c: Avoid warning about huge constant. 1999-06-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * stdio-common/vfprintf.c (group_member): Make parameters and return types pointers to CHAR_T instead of UCHAR_T. (vfprintf): Change type of work_buffer, workend and string to CHAR_T pointer/array. (process_arg, process_string_arg): Adjust/remove casts. Add missing use of L_ macro. (printf_unknown): Add missing uses of L_ macro. 1999-06-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * wcsmbs/wcschrnul.c: Explicitly cast return value to avoid warning. 1999-06-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * libio/wgenops.c (__wuflow): Fix use of WEOF vs. EOF. Call _IO_switch_to_wget_mode instead of _IO_switch_to_get_mode. (__wunderflow): Likewise. (_IO_switch_to_wget_mode): Likewise. (_IO_init_wmarker): Likewise. * libio/wfileops.c (_IO_wfile_seekoff): Call _IO_switch_to_wget_mode, not _IO_switch_to_get_mode. (_IO_wfile_jumps): Fix pbackfail entry. * libio/iosetvbuf.c (_IO_setvbuf): Only call wide char setbuf function if the stream is currently unoriented. 1999-06-19 Zack Weinberg <zack@rabi.columbia.edu> * wcsmbs/wchar.h: Define __need___va_list before including stdarg.h. Wrap all wide stream functions with #ifdef __USE_ISOC9X. Use __gnuc_va_list in v*w(printf|scanf) prototypes. 1999-06-20 Andreas Jaeger <aj@arthur.rhein-neckar.de> * libio/oldiopopen.c (_IO_old_proc_open): Apply change from 1999-03-29 to iopopen also here. Reported by Richard Braakman <dark@xs4all.nl>. 1999-06-20 Andreas Jaeger <aj@arthur.rhein-neckar.de> * include/features.h: Use __GNUC_PREREQ. * sysdeps/i386/fpu/bits/mathinline.h: Likewise 1999-06-19 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * stdio-common/vfscanf.c (ungetc, inchar) [COMPILE_WPRINTF]: Change EOF to WEOF and remove cast. (UNGETC): Remove macro. (_IO_vfwscanf): Change isspace to ISSPACE and UNGETC to ungetc. * stdio-common/printf-parse.h (find_spec) [!COMPILE_WPRINTF]: Change ISASCII to isascii and MBRLEN to mbrlen. (parse_one_spec): Compare info.spec always against wchar_t values. * stdio-common/vfprintf.c: Remove unused ISASCII and MBRLEN. (_itoa, _itoa_word) [COMPILE_WRPINTF]: Don't cast second argument. (NOT_IN_JUMP_RANGE, CHAR_CLASS): Change (int) to (INT_T), use L_. 1999-06-19 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * libio/Makefile (shared-only-routines): Add oldiofgetpos, oldiofgetpos64, oldiofsetpos and oldiofsetpos64. (routines): Include oldiofgetpos, oldiofgetpos64, oldiofsetpos and oldiofsetpos64 only if doing versioning.
1999-06-16Update.Ulrich Drepper
* Versions.def: Add GLIBC_2.2 for libc. * iconv/gconv.h: Make header suitable for inclusion in public header by protecting all names with __. * iconv/gconv.c: Adapt for symbol name changes. * iconv/gconv.h: Likewise. * iconv/gconv_builtin.c: Likewise. * iconv/gconv_close.c: Likewise. * iconv/gconv_db.c: Likewise. * iconv/gconv_dl.c: Likewise. * iconv/gconv_int.h: Likewise. * iconv/gconv_open.c: Likewise. * iconv/gconv_simple.c: Likewise. * iconv/iconv.c: Likewise. * iconv/iconv_close.c: Likewise. * iconv/iconv_open.c: Likewise. * iconv/loop.c: Likewise. * iconv/skeleton.c: Likewise. * iconvdata/8bit-gap.c: Likewise. * iconvdata/8bit-generic.c: Likewise. * iconvdata/ansi_x3.110.c: Likewise. * iconvdata/big5.c: Likewise. * iconvdata/cns11643.h: Likewise. * iconvdata/cns11643l1.h: Likewise. * iconvdata/euc-cn.c: Likewise. * iconvdata/euc-jp.c: Likewise. * iconvdata/euc-kr.c: Likewise. * iconvdata/euc-tw.c: Likewise. * iconvdata/gb2312.h: 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/jis0201.h: Likewise. * iconvdata/jis0208.h: Likewise. * iconvdata/jis0212.h: Likewise. * iconvdata/johab.c: Likewise. * iconvdata/ksc5601.h: Likewise. * iconvdata/sjis.c: Likewise. * iconvdata/t.61.c: Likewise. * iconvdata/uhc.c: Likewise. * stdlib/mblen.c: Likewise. * stdlib/mbtowc.c: Likewise. * stdlib/wctomb.c: Likewise. * wcsmbs/btowc.c: Likewise. * wcsmbs/mbrtowc.c: Likewise. * wcsmbs/mbsnrtowcs.c: Likewise. * wcsmbs/mbsrtowcs.c: Likewise. * wcsmbs/wchar.h: Likewise. * wcsmbs/wcrtomb.c: Likewise. * wcsmbs/wcsmbsload.c: Likewise. * wcsmbs/wcsmbsload.h: Likewise. * wcsmbs/wcsnrtombs.c: Likewise. * wcsmbs/wcsrtombs.c: Likewise. * wcsmbs/wctob.c: Likewise. * include/limits.h (MB_LEN_MAX): Increase to 16. * sysdeps/generic/_G_config.h: Define _G_fpos_t as struct. Define _G_iconv_t. * sysdeps/unix/sysv/linux/_G_config.h: Likewise. * include/wchar.h: Change mbstate_t to __mbstate_t. * libio/Makefile (routines): Add wfiledoalloc, oldiofgetpos, oldiofgetpos64, oldiofsetpos, oldiofsetpos64, fputwc, fputwc_u, getwc, getwc_u, getwchar, getwchar_u, iofgetws, iofgetws_u, iofputws, iofputws_u, iogetwline, iowpadn, ioungetwc, putwc, putwc_u, putchar, putchar_u, swprintf, vwprintf, wprintf, wscanf, fwscanf, vwscanf, vswprintf, iovswscanf, swscanf, wgenops, wstrops, wfileops, and iofwide. (tests): Add tst_swprintf, tst_wprintf, tst_swscanf, and tst_wscanf. * libio/Versions: Add _IO_fgetpos, _IO_fgetpos64, _IO_fsetpos, _IO_fsetpos64, fgetpos, fgetpos64, fgetwc, fgetwc_unlocked, fgetws, fgetws_unlocked, fputwc, fputwc_unlocked, fputws, fputws_unlocked, fsetpos, fsetpos64, fwide, fwprintf, fwscanf, getwc, getwc_unlocked, getwchar, getwchar_unlocked, putwc, putwc_unlocked, putwchar, putwchar_unlocked, swprintf, swscanf, ungetwc, vfwprintf, vswprintf, vwprintf, vfwscanf, vswscanf, vwscanf, wprintf, and wscanf to GLIBC_2.2 for libc. * libio/libio.h: Define codecvt struct. Define _IO_wide_data. Extend _IO_file contain pointer to codecvt, widedata and mode. (_IO_getwc_unlocked): New macro. (_IO_putwc_unlocked): New macro. (_IO_fwide): New macro. * libio/libioP.h: Add new prototypes and adjust existing declarations. * libio/fileops.c (_IO_new_file_close_it): Reset normal or widedata buffers based on mode. (new_do_write): Set _IO_write_end to _IO_buf_end if stream is wide oriented. (_IO_new_file_overflow): Don't depend only on _IO_CURRENTLY_PUTTING flag to be enough to signal unallocated buffer. For wide oriented stream don't make it linebuffered. Don't use _IO_do_flush, use _IO_new_do_write directly. (_IO_new_file_seekoff): Change return value type to _IO_off64_t. (_IO_file_seek): Likewise. * libio/genops.c (_IO_least_marker): Make global. (__underflow): Orient stream if not already done. (__uflow): Likewise. (_IO_default_seekpos): Change to type _IO_off64_t. (_IO_default_seekoff): Likewise. (_IO_default_seek): Likewise. (_IO_no_init): New function. Similar to _IO_init but allows to orient in initialization. * libio/iolibio.h: Add prototype for _IO_vswprintf. Change _IO_pos_BAD to use _IO_off64_t. * libio/ftello.c: Use _IO_off_t. For now abort when use with wide char stream. * libio/ftello64.c: Likewise. * libio/ioftell.c: Likewise. * libio/iofopncook.c: Likewise. * libio/ioseekoff.c: Likewise. * libio/ioseekpos.c: Likewise. * libio/oldfileops.c: Likewise. * libio/iofgetpos.c: Store state of conversion if necessary. * libio/iofgetpos64.c: Likewise. * libio/iofsetpos.c: Restore conversion state if necessary. * libio/iofsetpos64.c: Likewise. * libio/iofdopen.c: Initialize so that stream can be wide oriented. * libio/iofopen.c: Likewise. * libio/iofopen64.c: Likewise. * libio/iopopen.c: Likewise. * libio/iovdprintf.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * libio/memstream.c: Likewise. * libio/obprintf.c: Likewise. * libio/iofputs.c: Orient stream if not already happened. * libio/iofputs_u.c: Likewise. * libio/iofwrite.c: Likewise. * libio/iofwrite_u.c: Likewise. * libio/ioputs.c: Likewise. * libio/iosetbuffer.c: Handle not yet oriented stream. * libio/iosetvbuf.c: Likewise. * libio/oldstdfiles.c: Adjust FILEBUF_LITERAL call. * libio/stdfiles.c: Likewise. * libio/strops.c (_IO_str_overflow): Correctly free buffer after failed allocation. (_IO_str_seekoff): Use _IO_off64_t. * libio/vasprintf.c: Pre-orient stream. * libio/vsnprintf.c: Likewise. * libio/fputwc.c: New file. * libio/fputwc_u.c: New file. * libio/fwprintf.c: New file. * libio/fwscanf.c: New file. * libio/getwc.c: New file. * libio/getwc_u.c: New file. * libio/getwchar.c: New file. * libio/getwchar_u.c: New file. * libio/iofgetws.c: New file. * libio/iofgetws_u.c: New file. * libio/iofputws.c: New file. * libio/iofputws_u.c: New file. * libio/iofwide.c: New file. * libio/iogetwline.c: New file. * libio/ioungetwc.c: New file. * libio/iovswscanf.c: New file. * libio/iowpadn.c: New file. * libio/oldiofgetpos.c: New file. * libio/oldiofgetpos64.c: New file. * libio/oldiofsetpos.c: New file. * libio/oldiofsetpos64.c: New file. * libio/putwc.c: New file. * libio/putwc_u.c: New file. * libio/putwchar.c: New file. * libio/putwchar_u.c: New file. * libio/swprintf.c: New file. * libio/swscanf.c: New file. * libio/tst_swprintf.c: New file. * libio/tst_swscanf.c: New file. * libio/tst_wprintf.c: New file. * libio/tst_wscanf.c: New file. * libio/tst_wscanf.input: New file. * libio/vswprintf.c: New file. * libio/vwprintf.c: New file. * libio/vwscanf.c: New file. * libio/wfiledoalloc.c: New file. * libio/wfileops.c: New file. * libio/wgenops.c: New file. * libio/wprintf.c: New file. * libio/wscanf.c: New file. * libio/wstrops.c: New file. * stdio-common/Makefile (routines): Add _itowa, itowa-digits, vfwprintf, and vfwscanf. * stdio-common/_itoa.c (base_table): Rename to _IO_base_table and make global. * stdio-common/_itowa.c: New file. * stdio-common/_itowa.h: New file. * stdio-common/itoa-digits.c: Minimal optimization. * stdio-common/itowa-digits.c: New file. * stdio-common/printf-parse.h: Allow use in wide character context. * stdio-common/printf-prs.c: Define ISASCII and MBRLEN. * stdio-common/printf.h (printf_info): Add wide bit. * stdio-common/printf_fp.c: Determine from wide bit whether stream is wide oriented or not. * stdio-common/printf_size.c: Likewise. * sysdeps/generic/printf_fphex.c: Likewise. * stdlib/strfmon.c: Call __printf_fp with wide bit cleared. * stdio-common/vfprintf.c: Rewrite to allow use in wide character context. * stdio-common/vfscand.c: Likewise. * stdio-common/vfwprintf.c: New file. * stdio-common/vfwscanf.c: New file. * time/Makefile (routines): Add wcsftime. (tests): Add tst_wcsftime. * time/Versions: Add wcsftime to GLIBC_2.2 for libc. * time/strftime.c: Make usable as wcsftime. * time/wcsftime.c: New file. * time/tst_wcsftime.c: New file. * wcsmbs/Makefile (routines): Add wmempcpy and wcschrnul. * wcsmbs/Versions: Add wmempcpy and wcschrnul to GLIBC_2.2 for libc. * wcsmbs/wcschrnul.c: New file. * wcsmbs/wmemcpy.c: New file. * wcsmbs/wmemcpy.c: Rename to __wmemcpy and make wmemcpy weak alias. * wcsmbs/wmemmove.c: Likewise for wmemmove. * manual/stdio.texi: Document is_char and wide element if printf_info. * manual/time.texi: Document wcsftime. * include/wchar.h: Add prototypes for __wmemcpy, __wmempcpy, __wmemmove, __wcschrnul, and __vfwscanf. * locale/langinfo.h: Add new LC_TIME entries for wchar_t data. * locale/C-time.c: Adapt for above change. * locale/categories.def: Likewise. * locale/localeinfo.h: Likewise. * localedata/Makefile: Don't run tests for now.
1999-06-07Update.Ulrich Drepper
* sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_SIOCGIFNAME for kernel >= 2.1.50. * sysdeps/unix/sysv/linux/if_index.c: Correct typo (SIOGIFNAME -> SIOCGIFNAME) and use __ASSUME_SIOCGIFNAME. * sysdeps/libm-ieee754/w_j0.c: Remove __ from symbol definitions. * sysdeps/libm-ieee754/w_j0f.c: Likewise. * sysdeps/libm-ieee754/w_j0l.c: Likewise. * sysdeps/libm-ieee754/w_j1.c: Likewise. * sysdeps/libm-ieee754/w_j1f.c: Likewise. * sysdeps/libm-ieee754/w_j1l.c: Likewise. * sysdeps/libm-ieee754/w_jn.c: Likewise. * sysdeps/libm-ieee754/w_jnf.c: Likewise. * sysdeps/libm-ieee754/w_jnl.c: Likewise. * stdio-common.c: Correct typos. * math/libm-test.c (jn_test): Adjust delta. (y1_test): Likewise. (yn_test): Likewise. * elf/do-lookup.h: It should never happen that if we expect a versioned symbol from a file the file has no version table. This should have been checked in dl-version.c. * elf/dl-lookup.c: Include assert.h.
1999-05-25Update.Ulrich Drepper
1999-05-26 Jakub Jelinek <jj@ultra.linux.cz> * stdlib/longlong.h (add_ssaaaa, sub_ddmmss, umul_ppmm): Optimized sparc64 routines. * stdio-common/vfprintf.c (vfprintf): Don't handle long numbers if they are the same as ints. * stdio-common/vfscanf.c (_IO_vfscanf): Likewise.
1999-05-25Update.Ulrich Drepper
* stdio-common/vfprintf.c (vfprintf): Don't implement special handling for long long if it is the same as long.
1999-05-07Update.Ulrich Drepper
1999-05-07 Ulrich Drepper <drepper@cygnus.com> * stdio-common/tst-printf.c: Add test case for last _itoa problem. * stdio-common/vfprintf.c: Fix typo.
1999-02-23Update.Ulrich Drepper
1999-02-23 Ulrich Drepper <drepper@cygnus.com> * stdio-common/vfprintf.c (vfprintf): If precision or width if too large for work_buffer, allocate new buffer. (printf_unknown): Likewise. [PR libc/988]
1999-02-07Update.Ulrich Drepper
1999-02-06 Ulrich Drepper <drepper@cygnus.com> * Versions.def: Add versions for ld.so. * csu/Versions: Remove __libc_stack_end here. * elf/Versions: Split libc definitions in libc and ld.so definitions. * elf/Makefile (ld-map): Change to ld.so.map. * scripts/versions.awk: Recognize dot in library names. * ctype/ctype.h: Remove definitions of __tolower and __toupper. Don't use __tolower and __toupper in inline functions. Add optimizing macros for tolower and toupper. * ctype/ctype-extn.c (_tolower): Don't use __tolower. (_toupper): Don't use __toupper. * ctype/ctype.c (tolower): Don't use __tolower. (toupper): Don't use toupper. * nscd/cache.c (prune_cache): Correct printing of debugging messages. * resolv/Versions (libresolv): Export __ns_name_unpack and __ns_name_ntop. * resolv/res_comp.c: Rename ns_name_unpack to __ns_name_unpack and make it global. Change all users. Similar for ns_name_ntop. * resolv/nss_dns/dns-host.c: Don't use dn_expand when extracting in user-provided buffer. Use __ns_name_unpack and __ns_name_ntop directly to detect too small buffer. * stdio-common/Makefile (tests): Add scanf12. * stdio-common/scanf12.c: New file. * stdio-common/scanf12.input: New file. * stdio-common/vfscanf.c (__vfscanf): Handle +/- at beginning of floating-point correctly if the number is invalid. * stdio-common/vfscanf.c: Don't use non-reentrant multibyte conversion * stdio-common/printf_fphex.c: Likewise. * stdio-common/vfprintf.c: Likewise. See ChangeLog.9 for earlier changes.
1998-10-29Update.Ulrich Drepper
(printf_unknown): Add label all_done.
1998-10-29Update.Ulrich Drepper
* stdio-common/vfprintf.c (vfprintf): Fix the remaining premature returns without cleaning up the lock.
1998-07-28Update.Ulrich Drepper
1998-07-28 Ulrich Drepper <drepper@cygnus.com> * math/libm-test.c (tgamma_test): Remove redundant tests. 1998-07-28 16:20 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/glob.c: Correct problems with */foo and GLOB_NOCHECK where foo does not exist in any of the subdirectories. Reported by Paul D. Smith <psmith@BayNetworks.COM>. * posix/globtest.sh: Add test for this bug. 1998-07-28 Mark Kettenis <kettenis@phys.uva.nl> * io/sys/statfs.h: Fix typos. * io/sys/statvfs.h: Fix typos. 1998-07-28 Ulrich Drepper <drepper@cygnus.com> * version.h (VERSION): Bump to 2.0.95. * math/Makefile (libm-calls): Remove w_gamma, add w_tgamma. * math/Versions [GLIBC_2.1]: Add tgamma, tgammaf, and tgammal. * math/libm-test.c: Split old gamma_test and move half of it in new function tgamma_test. * math/bits/mathcalls.h: Add declaration of tgamma. * sysdeps/libm-ieee754/k_standard.c: Change gamma errors into tgamma errors. * sysdeps/libm-ieee754/w_gamma.c: Remove lgamma compatibility code and rename to ... * sysdeps/libm-ieee754/w_tgamma.c: ... this. New file. * sysdeps/libm-ieee754/w_gammaf.c: Remove lgammaf compatibility code and rename to ... * sysdeps/libm-ieee754/w_tgammaf.c: ... this. New file. * sysdeps/libm-ieee754/w_gammal.c: Remove lgammal compatibility code and rename to ... * sysdeps/libm-ieee754/w_tgammal.c: ... this. New file. * sysdeps/libm-ieee754/w_lgamma.c: Add gamma as weak alias. * sysdeps/libm-ieee754/w_lgammaf.c: Likewise. * sysdeps/libm-ieee754/w_lgammal.c: Likewise. * stgdio-common/printf-parse.h: Implement handling of j, t, and z modifiers. * stdio-common/vfprintf.c: Likewise. * stdio-common/vfscanf.c: Likewise. * manual/stdio.texi: Document new printf/scanf modifiers. * sysdeps/unix/sysv/linux/recvmsg.c: Remove alias __recvmsg. * sysdeps/unix/sysv/linux/sendmsg.c: Remove alias __sendmsg. 1998-07-28 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * sunrpc/Makefile (routines): Add clnt_unix and svc_unix. * sunrpc/Versions: Add new *unix_create functions. * sunrpc/clnt_gen.c: Add support for RPC over AF_UNIX. * sunrpc/clnt_unix.c: New, client side of RPC over AF_UNIX. * sunrpc/key_call.c: Use RPC over AF_UNIX for communication with keyserv daemon. * sunrpc/rpc/clnt.h: Add AF_UNIX based RPC function prototypes. * sunrpc/rpc/svc.h: Likewise. * sunrpc/svc_authux.c: Copy internal auth flavor if none is given. * sunrpc/svc_tcp.c: Fix typos. * sunrpc/svc_unix.c: New, server side of AF_UNIX based RPC. * nis/Makefile: Remove currently not working cache functions. * nis/Versions: Add __nisbind_* functions for rpc.nisd. * nis/nis_call.c: Rewrite binding to a NIS+ server to reuse CLIENT handles. * nis/nis_file.c: Fix memory leaks. * nis/nis_intern.h: Move internal structs from here ... * nis/rpcsvc/nislib.h: ... to here for NIS+ server and tools. * nis/nis_lookup.c: Try at first if last client handle works. * nis/nis_table.c: Likewise. * nis/nis_checkpoint.c: Adjust __do_niscall2 parameters. * nis/nis_mkdir.c: Likewise. * nis/nis_ping.c: Likewise. * nis/nis_rmdir.c: Likewise. * nis/nis_server.c: Likewise. * nis/nis_util.c: Likewise. * nis/nis_findserv.c (__nis_findfastest): Little optimization. 1998-07-28 Andreas Jaeger <aj@arthur.rhein-neckar.de> * stdlib/strtol.c (STRTOL_LONG_MAX): Correct typo in last patch - define as LONG_MAX. 1998-07-28 09:31 Ulrich Drepper <drepper@cygnus.com> * nscd/connections.c (gr_send_answer): Deal with missing UIO_MAXIOV. Correct test whether writev send all data. * nscd/nscd_getgr_r.c (__nscd_getgr_r): Correct test whether readv received all data. 1998-07-28 Mark Kettenis <kettenis@phys.uva.nl> * nscd/nscd_getgr_r.c (__nscd_getgr_r): Deal with missing UIO_MAXIOV. 1998-07-28 Mark Kettenis <kettenis@phys.uva.nl> * sysdeps/mach/hurd/dl-sysdep.c (open_file): Change assert call to allow mode to be 0. (__xstat): New function. (__fxstat): New function. (_dl_sysdep_read_whole_file): Removed. The implementation in `elf/dl-misc.c' now also works for the Hurd.
1998-06-07Update.Ulrich Drepper
1998-06-07 13:32 Ulrich Drepper <drepper@cygnus.com> * libc.map: Add _dl_profile. * elf/dl-reloc.c (_dl_relocate_object): Take extra argument, pass this to ELF_DYNAMIC_RELOCATE. Always allocate array for relocation result if LD_PROFILE is defined. * elf/ldsodefs.h: Adjust prototypes. * elf/dl-open.c (_dl_open): Call relocation function with extra argument. * elf/rtld.c: Likewise. * elf/dl-profile.c (_dl_mcount): Don't mark as internal function. Correct loop condition. * elf/dynamic-link.h: Don't examine _dl_profile variable, pass consider_profile to runtime setup function. * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Use _dl_runtime_profile for all shared objects if LD_PROFILE is defined. * elf/dl-support.c: Define __libc_stack_end. * elf/rtld.c: Likewise. * sysdeps/generic/libc-start.c: Store last stack address in __libc_stack_end. * sysdeps/i386/dl-machine.h (_dl_start_user): Store stack address. * sysdeps/i386/elf/start.s: Call __libc_start_main with extra argument. * elf/elf.h: Include <features.h>, not <sys/cdefs.h>. Include <stdint.h>, not <inttypes.h>. * elf/sprof.c: Implement flat profiling. * libio/fgetc.c: Call _IO_cleanup_region_end with 0 and call _IO_funlockfile explicitly. * libio/fileops.c: Likewise. * libio/fputc.c: Likewise. * libio/freopen.c: Likewise. * libio/freopen64.c: Likewise. * libio/fseek.c: Likewise. * libio/fseeko.c: Likewise. * libio/fseeko64.c: Likewise. * libio/ftello.c: Likewise. * libio/ftello64.c: Likewise. * libio/getc.c: Likewise. * libio/getchar.c: Likewise. * libio/iofclose.c: Likewise. * libio/iofflush.c: Likewise. * libio/iofgetpos.c: Likewise. * libio/iofgetpos64.c: Likewise. * libio/iofgets.c: Likewise. * libio/iofputs.c: Likewise. * libio/iofread.c: Likewise. * libio/iofsetpos.c: Likewise. * libio/iofsetpos64.c: Likewise. * libio/ioftell.c: Likewise. * libio/iofwrite.c: Likewise. * libio/iogetdelim.c: Likewise. * libio/iogets.c: Likewise. * libio/ioputs.c: Likewise. * libio/ioseekoff.c: Likewise. * libio/ioseekpos.c: Likewise. * libio/iosetbuffer.c: Likewise. * libio/iosetvbuf.c: Likewise. * libio/ioungetc.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * libio/oldfileops.c: Likewise. * libio/oldiofclose.c: Likewise. * libio/peekc.c: Likewise. * libio/putc.c: Likewise. * libio/putchar.c: Likewise. * libio/rewind.c: Likewise. * malloc/mtrace.c: Pretty print. * misc/mntent.h (struct mentent): Make string elements const char *. * nis/nis_printf.c: Optimize I/O a little bit. * signal/Makefile (distribute): Add sigset-cvt-mask.h. * sysdeps/generic/sigset-cvt-mask.h: New file. * sysdeps/unix/sysv/linux/sigset-cvt-mask.h: New file. * sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h: New file. * sysdeps/posix/sigvec.c: Rewrite the use definitions from sigset-cvt-mask.h to do the dirty work. Patches by Joe Keane. * sysdeps/posix/mkstemp.c: Save one precious byte of rodata. * sysdeps/unix/sysv/linux/i386/sysdep.h: Rewrite PSEUDO etc to make syscall_error label in case of PIC anonymous. * sysdeps/unix/sysv/linux/i386/i686/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/i386/clone.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/mmap.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/s_pread64.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/s_pwrite64.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/socket.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/syscall.S: Adapt for this change.