aboutsummaryrefslogtreecommitdiff
path: root/libio/iovsprintf.c
AgeCommit message (Collapse)AuthorFilesLines
2020-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers1-1/+1
2019-09-07Prefer https to http for gnu.org and fsf.org URLsPaul Eggert1-1/+1
Also, change sources.redhat.com to sourceware.org. This patch was automatically generated by running the following shell script, which uses GNU sed, and which avoids modifying files imported from upstream: sed -ri ' s,(http|ftp)(://(.*\.)?(gnu|fsf|sourceware)\.org($|[^.]|\.[^a-z])),https\2,g s,(http|ftp)(://(.*\.)?)sources\.redhat\.com($|[^.]|\.[^a-z]),https\2sourceware.org\4,g ' \ $(find $(git ls-files) -prune -type f \ ! -name '*.po' \ ! -name 'ChangeLog*' \ ! -path COPYING ! -path COPYING.LIB \ ! -path manual/fdl-1.3.texi ! -path manual/lgpl-2.1.texi \ ! -path manual/texinfo.tex ! -path scripts/config.guess \ ! -path scripts/config.sub ! -path scripts/install-sh \ ! -path scripts/mkinstalldirs ! -path scripts/move-if-change \ ! -path INSTALL ! -path locale/programs/charmap-kw.h \ ! -path po/libc.pot ! -path sysdeps/gnu/errlist.c \ ! '(' -name configure \ -execdir test -f configure.ac -o -f configure.in ';' ')' \ ! '(' -name preconfigure \ -execdir test -f preconfigure.ac ';' ')' \ -print) and then by running 'make dist-prepare' to regenerate files built from the altered files, and then executing the following to cleanup: chmod a+x sysdeps/unix/sysv/linux/riscv/configure # Omit irrelevant whitespace and comment-only changes, # perhaps from a slightly-different Autoconf version. git checkout -f \ sysdeps/csky/configure \ sysdeps/hppa/configure \ sysdeps/riscv/configure \ sysdeps/unix/sysv/linux/csky/configure # Omit changes that caused a pre-commit check to fail like this: # remote: *** error: sysdeps/powerpc/powerpc64/ppc-mcount.S: trailing lines git checkout -f \ sysdeps/powerpc/powerpc64/ppc-mcount.S \ sysdeps/unix/sysv/linux/s390/s390-64/syscall.S # Omit change that caused a pre-commit check to fail like this: # remote: *** error: sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S: last line does not end in newline git checkout -f sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S
2019-01-02Set behavior of sprintf-like functions with overlapping source and destinationGabriel F. T. Gomes1-2/+12
According to ISO C99, passing the same buffer as source and destination to sprintf, snprintf, vsprintf, or vsnprintf has undefined behavior. Until the commit commit 4e2f43f842ef5e253cc23383645adbaa03cedb86 Author: Zack Weinberg <zackw@panix.com> Date: Wed Mar 7 14:32:03 2018 -0500 Use PRINTF_FORTIFY instead of _IO_FLAGS2_FORTIFY (bug 11319) a call to sprintf or vsprintf with overlapping buffers, for instance vsprintf (buf, "%sTEXT", buf), would append `TEXT' into buf, while a call to snprintf or vsnprintf would override the contents of buf. After the aforementioned commit, the behavior of sprintf and vsprintf changed (so that they also override the contents of buf). This patch reverts this behavioral change, because it will likely break applications that rely on the previous behavior, even though it is undefined by ISO C. As noted by Szabolcs Nagy, this is used in SPEC2017 507.cactuBSSN_r/src/PUGH/PughUtils.c: sprintf(mess," Size:"); for (i=0;i<dim+1;i++) { sprintf(mess,"%s %d",mess,pughGH->GFExtras[dim]->nsize[i]); } More important to notice is the fact that the overwriting of the destination buffer is not the only behavior affected by the refactoring. Before the refactoring, sprintf and vsprintf would use _IO_str_jumps, whereas __sprintf_chk and __vsprintf_chk would use _IO_str_chk_jumps. After the refactoring, all use _IO_str_chk_jumps, which would make sprintf and vsprintf report buffer overflows and terminate the program. This patch also reverts this behavior, by installing the appropriate jump table for each *sprintf functions. Apart from reverting the changes, this patch adds a test case that has the old behavior hardcoded, so that regressions are noticed if something else unintentionally changes the behavior. Tested for powerpc64le.
2019-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers1-1/+1
* All files with FSF copyright notices: Update copyright dates using scripts/update-copyrights. * locale/programs/charmap-kw.h: Regenerated. * locale/programs/locfile-kw.h: Likewise.
2018-12-05Use PRINTF_FORTIFY instead of _IO_FLAGS2_FORTIFY (bug 11319)Zack Weinberg1-5/+49
The _chk variants of all of the printf functions become much simpler. This is the last thing that we needed _IO_acquire_lock_clear_flags2 for, so it can go as well. I took the opportunity to make the headers included and the names of all local variables consistent across all the affected files. Since we ultimately want to get rid of __no_long_double as well, it must be possible to get all of the nontrivial effects of the _chk functions by calling the _internal functions with appropriate flags. For most of the __(v)xprintf_chk functions, this is covered by PRINTF_FORTIFY plus some up-front argument checks that can be duplicated. However, __(v)sprintf_chk installs a custom jump table so that it can crash instead of overflowing the output buffer. This functionality is moved to __vsprintf_internal, which now has a 'maxlen' argument like __vsnprintf_internal; to get the unsafe behavior of ordinary (v)sprintf, pass -1 for that argument. obstack_printf_chk and obstack_vprintf_chk are no longer in the same file. As a side-effect of the unification of both fortified and non-fortified vdprintf initialization, this patch fixes bug 11319 for __dprintf_chk and __vdprintf_chk, which was previously fixed only for dprintf and vdprintf by the commit commit 7ca890b88e6ab7624afb1742a9fffb37ad5b3fc3 Author: Ulrich Drepper <drepper@redhat.com> Date: Wed Feb 24 16:07:57 2010 -0800 Fix reporting of I/O errors in *dprintf functions. This patch adds a test case to avoid regressions. Tested for powerpc and powerpc64le.
2018-12-05Add __v*printf_internal with flags argumentsZack Weinberg1-5/+11
There are a lot more printf variants than there are scanf variants, and the code for setting up and tearing down their custom FILE variants around the call to __vf(w)printf is more complicated and variable. Therefore, I have added _internal versions of all the v*printf variants, rather than introducing helper routines so that they can all directly call __vf(w)printf_internal, as was done with scanf. As with the scanf changes, in this patch the _internal functions still look at the environmental mode bits and all callers pass 0 for the flags parameter. Several of the affected public functions had _IO_ name aliases that were not exported (but, in one case, appeared in libio.h anyway); I was originally planning to leave them as aliases to avoid having to touch internal callers, but it turns out ldbl_*_alias only work for exported symbols, so they've all been removed instead. It also turns out there were hardly any internal callers. _IO_vsprintf and _IO_vfprintf *are* exported, so those two stick around. Summary for the changes to each of the affected symbols: _IO_vfprintf, _IO_vsprintf: All internal calls removed, thus the internal declarations, as well as uses of libc_hidden_proto and libc_hidden_def, were also removed. The external symbol is now exposed via uses of ldbl_strong_alias to __vfprintf_internal and __vsprintf_internal, respectively. _IO_vasprintf, _IO_vdprintf, _IO_vsnprintf, _IO_vfwprintf, _IO_vswprintf, _IO_obstack_vprintf, _IO_obstack_printf: All internal calls removed, thus declaration in internal headers were also removed. They were never exported, so there are no aliases tying them to the internal functions. I.e.: entirely gone. __vsnprintf: Internal calls were always preceded by macros such as #define __vsnprintf _IO_vsnprintf, and #define __vsnprintf vsnprintf The macros were removed and their uses replaced with calls to the new internal function __vsnprintf_internal. Since there were no internal calls, the internal declaration was also removed. The external symbol is preserved with ldbl_weak_alias to ___vsnprintf. __vfwprintf: All internal calls converted into calls to __vfwprintf_internal, thus the internal declaration was removed. The function is now a wrapper that calls __vfwprintf_internal. The external symbol is preserved. __vswprintf: Similarly, but no external symbol. __vasprintf, __vdprintf, __vfprintf, __vsprintf: New internal wrappers. Not exported. vasprintf, vdprintf, vfprintf, vsprintf, vsnprintf, vfwprintf, vswprintf, obstack_vprintf, obstack_printf: These functions used to be aliases to the respective _IO_* function, they are now aliases to their respective __* functions. Tested for powerpc and powerpc64le.
2018-02-21Mechanically remove _IO_ name aliases for types and constants.Zack Weinberg1-1/+1
This patch mechanically removes all remaining uses, and the definitions, of the following libio name aliases: name replaced with ---- ------------- _IO_FILE FILE _IO_fpos_t __fpos_t _IO_fpos64_t __fpos64_t _IO_size_t size_t _IO_ssize_t ssize_t or __ssize_t _IO_off_t off_t _IO_off64_t off64_t _IO_pid_t pid_t _IO_uid_t uid_t _IO_wint_t wint_t _IO_va_list va_list or __gnuc_va_list _IO_BUFSIZ BUFSIZ _IO_cookie_io_functions_t cookie_io_functions_t __io_read_fn cookie_read_function_t __io_write_fn cookie_write_function_t __io_seek_fn cookie_seek_function_t __io_close_fn cookie_close_function_t I used __fpos_t and __fpos64_t instead of fpos_t and fpos64_t because the definitions of fpos_t and fpos64_t depend on the largefile mode. I used __ssize_t and __gnuc_va_list in a handful of headers where namespace cleanliness might be relevant even though they're internal-use-only. In all other cases, I used the public-namespace name. There are a tiny handful of places where I left a use of 'struct _IO_FILE' alone, because it was being used together with 'struct _IO_FILE_plus' or 'struct _IO_FILE_complete' in the same arithmetic expression. Because this patch was almost entirely done with search and replace, I may have introduced indentation botches. I did proofread the diff, but I may have missed something. The ChangeLog below calls out all of the places where this was not a pure search-and-replace change. Installed stripped libraries and executables are unchanged by this patch, except that some assertions in vfscanf.c change line numbers. * libio/libio.h (_IO_FILE): Delete; all uses changed to FILE. (_IO_fpos_t): Delete; all uses changed to __fpos_t. (_IO_fpos64_t): Delete; all uses changed to __fpos64_t. (_IO_size_t): Delete; all uses changed to size_t. (_IO_ssize_t): Delete; all uses changed to ssize_t or __ssize_t. (_IO_off_t): Delete; all uses changed to off_t. (_IO_off64_t): Delete; all uses changed to off64_t. (_IO_pid_t): Delete; all uses changed to pid_t. (_IO_uid_t): Delete; all uses changed to uid_t. (_IO_wint_t): Delete; all uses changed to wint_t. (_IO_va_list): Delete; all uses changed to va_list or __gnuc_va_list. (_IO_BUFSIZ): Delete; all uses changed to BUFSIZ. (_IO_cookie_io_functions_t): Delete; all uses changed to cookie_io_functions_t. (__io_read_fn): Delete; all uses changed to cookie_read_function_t. (__io_write_fn): Delete; all uses changed to cookie_write_function_t. (__io_seek_fn): Delete; all uses changed to cookie_seek_function_t. (__io_close_fn): Delete: all uses changed to cookie_close_function_t. * libio/iofopncook.c: Remove unnecessary forward declarations. * libio/iolibio.h: Correct outdated commentary. * malloc/malloc.c (__malloc_stats): Remove unnecessary casts. * stdio-common/fxprintf.c (__fxprintf_nocancel): Remove unnecessary casts. * stdio-common/getline.c: Use _IO_getdelim directly. Don't redefine ssize_t. * stdio-common/printf_fp.c, stdio_common/printf_fphex.c * stdio-common/printf_size.c: Don't redefine size_t or FILE. Remove outdated comments. * stdio-common/vfscanf.c: Don't redefine va_list.
2018-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers1-1/+1
* All files with FSF copyright notices: Update copyright dates using scripts/update-copyrights. * locale/programs/charmap-kw.h: Regenerated. * locale/programs/locfile-kw.h: Likewise.
2017-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers1-1/+1
2016-01-04Update copyright dates with scripts/update-copyrights.Joseph Myers1-1/+1
2015-01-02Update copyright dates with scripts/update-copyrights.Joseph Myers1-1/+1
2014-01-01Update copyright notices with scripts/update-copyrightsAllan McRae1-1/+1
2013-01-02Update copyright notices with scripts/update-copyrights.Joseph Myers1-1/+1
2012-05-24Remove use of INTDEF/INTUSE in libioAndreas Schwab1-3/+3
2012-02-09Replace FSF snail mail address with URLs.Paul Eggert1-3/+2
2009-04-26* sysdeps/unix/sysv/linux/libc_pthread_init.c (__libc_pthread_init):Ulrich Drepper1-4/+4
Avoid warning by using may_alias attribute on ptrhack.
2006-01-14* math/math.h [__NO_LONG_DOUBLE_MATH] (__nldbl_nexttowardf): NewRoland McGrath1-9/+5
prototype. (nexttowardf): Redirect to __nldbl_nexttowardf. (nexttoward): Redirect to nextafter. (__MATHDECL_2, __MATHDECL_1): Redirect *l functions to non-*l versions if __LONG_DOUBLE_MATH_OPTIONAL and __NO_LONG_DOUBLE_MATH. * math/complex.h (__MATHDECL_1): Likewise. * math/bits/mathcalls.h (nexttoward): Don't prototype if __LDBL_COMPAT. * misc/sys/cdefs.h: Include <bits/wordsize.h>. (__LDBL_COMPAT, __LDBL_REDIR1, __LDBL_REDIR, __LDBL_REDIR1_NTH, __LDBL_REDIR_NTH, __LDBL_REDIR_DECL): New macros. * libio/bits/stdio-ldbl.h: New file. * libio/Makefile (headers): Add it. * libio/stdio.h [__LDBL_COMPAT]: #include it. * libio/bits/libio-ldbl.h: New file. * libio/Makefile (headers): Add it. * libio/libio.h [__LDBL_COMPAT]: #include it. * libio/libioP.h: Include <math_ldbl_opt.h>. * include/wchar.h (__fwprintf, __vfwprintf): Fix commented out attribute. (__vfwprintf_chk): New prototype. Add libc_hidden_proto. * wcsmbs/bits/wchar-ldbl.h: New file. * wcsmbs/Makefile (headers): Add it. * wcsmbs/wchar.h [__LDBL_COMPAT]: #include it. * wcsmbs/bits/wchar2.h (__vswprintf_alias): Removed. (vswprintf): Define as a macro rather than inline function. * stdio-common/bits/printf-ldbl.h: New file. * stdio-common/Makefile (headers): Add it. * stdio-common/printf.h [__LDBL_COMPAT]: #include it. * libio/fwprintf.c: Include libioP.h. (fwprintf): Use ldbl_weak_alias instead of weak_alias. * libio/fwscanf.c: Include libioP.h. (fwscanf): Rename to __fwscanf and add ldbl_strong_alias. * libio/iovdprintf.c (vdprintf): Use ldbl_weak_alias instead of weak_alias. * libio/iovsprintf.c (_IO_vsprintf): Rename to __IO_vsprintf, add ldbl_strong_alias and use INTDEF2 instead of INTDEF. (vsprintf): Use ldbl_weak_alias instead of weak_alias. * libio/iovsscanf.c (__vsscanf, vsscanf): Use ldbl_weak_alias instead of weak_alias. * libio/iovswscanf.c (vswscanf): Rename to __vswscanf, add ldbl_strong_alias and use ldbl_hidden_def instead of libc_hidden_def. * libio/obprintf.c (obstack_printf, obstack_vprintf): Use ldbl_weak_alias instead of weak_alias. * libio/swprintf.c: Include libioP.h. (swprintf): Rename to __swprintf and add ldbl_strong_alias. * libio/swscanf.c: Include libioP.h. (swscanf): Rename to __swscanf and add ldbl_strong_alias. * libio/vasprintf.c (vasprintf): Use ldbl_weak_alias instead of weak_alias. * libio/vscanf.c (vscanf): Use ldbl_weak_alias instead of weak_alias. * libio/vsnprintf.c (__vsnprintf, vsnprintf): Use ldbl_weak_alias instead of weak_alias. * libio/vswprintf.c (__vswprintf): Remove alias. (vswprintf): Use ldbl_weak_alias instead of weak_alias. * libio/vwprintf.c: Include libioP.h. (vwprintf): Rename to __vwprintf and add ldbl_strong_alias. * libio/vwscanf.c (vwscanf): Rename to __vwscanf and add ldbl_strong_alias. * libio/wprintf.c: Include libioP.h. (wprintf): Rename to __wprintf and add ldbl_strong_alias. * libio/wscanf.c: Include libioP.h. (wscanf): Rename to __wscanf and add ldbl_strong_alias. * stdio-common/asprintf.c (__asprintf): Rename to ___asprintf, add ldbl_strong_alias and use INTDEF2 instead of INTDEF. (asprintf): Use ldbl_weak_alias instead of weak_alias. * stdio-common/dprintf.c (dprintf): Rename to __dprintf, add ldbl_strong_alias and use ldbl_hidden_def instead of libc_hidden_def. * stdio-common/fprintf.c: Include libioP.h. (fprintf): Rename to __fprintf, add ldbl_strong_alias and use ldbl_hidden_def instead of libc_hidden_def. (_IO_fprintf): Use ldbl_weak_alias instead of weak_alias. * stdio-common/fscanf.c: Include libioP.h. (fscanf): Rename to __fscanf and add ldbl_strong_alias. * stdio-common/printf.c: Include libioP.h. (printf): Rename to __printf and add ldbl_strong_alias. (_IO_printf): Use ldbl_strong_alias instead of strong_alias. * stdio-common/printf_fp.c (__printf_fp): Rename to __printf_fp, add ldbl_strong_alias and use ldbl_hidden_def instead of libc_hidden_def. * stdio-common/printf_size.c (printf_size): Rename to __printf_size and add ldbl_strong_alias. * stdio-common/scanf.c (scanf): Rename to __scanf and add ldbl_strong_alias. * stdio-common/snprintf.c (snprintf): Use ldbl_weak_alias instead of weak_alias. * stdio-common/sprintf.c (sprintf): Rename to __sprintf, add ldbl_strong_alias and use ldbl_hidden_def instead of libc_hidden_def. (_IO_sprintf): Use ldbl_strong_alias instead of strong_alias. * stdio-common/sscanf.c: Include libioP.h instead of iolibio.h. (sscanf): Rename to __sscanf and add ldbl_strong_alias. * stdio-common/vfprintf.c (vfprintf): Define to _IO_vfprintf_internal. Use ldbl_strong_alias instead. Use ldbl_hidden_def instead of libc_hidden_def. (_IO_vfprintf_internal): Clear is_long_double if __ldbl_is_dbl, handle the argument as double if it is non-zero. (vfwprintf): Use ldbl_weak_alias instead of weak_alias. (_IO_vfprintf): Add ldbl_strong_alias. * stdio-common/vfscanf.c (_IO_vfscanf): Rename to _IO_vfscanf_internal, don't use strtold if __ldbl_is_dbl, add ldbl_strong_alias. (vfwscanf): Use ldbl_weak_alias instead of weak_alias. (__vfscanf): Rename to ___vfscanf, add ldbl_strong_alias and use ldbl_hidden_def instead of libc_hidden_def. (vfscanf): Use ldbl_weak_alias instead of weak_alias. * stdio-common/vprintf.c: Include libioP.h. (vprintf): Rename to __vprintf and add ldbl_strong_alias. * debug/fprintf_chk.c (__fprintf_chk): Rename to ___fprintf_chk and add ldbl_strong_alias. * debug/printf_chk.c (__printf_chk): Rename to ___printf_chk and add ldbl_strong_alias. * debug/snprintf_chk.c: Include libioP.h. (__snprintf_chk): Rename to ___snprintf_chk and add ldbl_strong_alias. * debug/sprintf_chk.c: Include libioP.h. (__sprintf_chk): Rename to ___sprintf_chk and add ldbl_strong_alias. * debug/vfprintf_chk.c (__vfprintf_chk): Rename to ___vfprintf_chk, add ldbl_strong_alias and use ldbl_hidden_def instead of libc_hidden_def. * debug/vfwprintf_chk.c (__vfwprintf_chk): Add libc_hidden_def. * debug/vprintf_chk.c (__vprintf_chk): Rename to ___vprintf_chk and add ldbl_strong_alias. * debug/vsnprintf_chk.c (__vsnprintf_chk): Rename to ___vsnprintf_chk, add ldbl_strong_alias and use ldbl_hidden_def instead of libc_hidden_def. * debug/vsprintf_chk.c (__vsprintf_chk): Rename to ___vsprintf_chk, add ldbl_strong_alias and use ldbl_hidden_def instead of libc_hidden_def. * stdlib/stdlib.h (strtold): Don't define inline if [!__LDBL_COMPAT]. * wcsmbs/wchar.h (wcstold): Likewise. * stdlib/strtod_l.c: Include math_ldbl_opt.h. (____STRTOF_INTERNAL): Define. (INTERNAL (__STRTOF)): Rename to ____STRTOF_INTERNAL. (__STRTOF): Call ____STRTOF_INTERNAL instead. [LONG_DOUBLE_COMPAT] (strtold_l, wcstold_l, __strtold_l, __wcstold_l): Add compatibility symbols. * stdlib/strtod.c: Include math_ldbl_opt.h. [LONG_DOUBLE_COMPAT] (strtold, wcstold, __strtold_internal, __wcstold_internal): Add compatibility symbols. * stdlib/strtold.c: Include bits/wordsize.h, wchar.h. (NEW, NEW1): Define. (__new_strtold, __new_wcstold): New prototypes. (____new_strtold_internal, ____new_wcstold_internal): Likewise. Add libc_hidden_proto. (STRTOF): Define to NEW (*told). [__LONG_DOUBLE_MATH_OPTIONAL] (wcstold, strtold): Add long_double_symbol. [__LONG_DOUBLE_MATH_OPTIONAL] (__wcstold_internal, __strtold_internal): Likewise. Add libc_hidden_ver. * stdlib/bits/stdlib-ldbl.h: New file. * stdlib/Makefile (headers): Add it. * stdlib/stdlib.h [__LDBL_COMPAT]: #include it. * include/stdlib.h (ecvt_r, fcvt_r, qecvt_r, qfcvt_r): Remove libc_hidden_proto. (__ecvt, __fcvt, __gcvt, __ecvt_r, __fcvt_r, __qecvt, __qfcvt, __qgcvt, __qecvt_r, __qfcvt_r): New prototypes. * misc/efgcvt_r.c: Include shlib-compat.h. (LONG_DOUBLE_CVT): Define. (__APPEND, __APPEND2): Define. (*fcvt_r): Use __APPEND instead of APPEND. Remove libc_hidden_def. (*ecvt_r): Likewise. (cvt_symbol): Define. Use it on fcvt_r and ecvt_r. * misc/efgcvt.c: Include shlib-compat.h. (LONG_DOUBLE_CVT): Define. (__APPEND, __APPEND2): Define. (fcvt): Use __APPEND instead of APPEND. Remove libc_hidden_def. (ecvt, gcvt): Likewise. (cvt_symbol): Define. Use it on fcvt, ecvt and gcvt. * stdlib/bits/monetary-ldbl.h: New file. * stdlib/Makefile (headers): Add it. * stdlib/monetary.h [__LDBL_COMPAT]: #include it. * stdlib/strfmon.c: Include math_ldbl_opt.h. (strfmon): Rename to __strfmon and add ldbl_strong_alias. * stdlib/strfmon_l.c: Remove all traces of [!USE_IN_LIBIO]. (__vstrfmon_l): Don't set is_long_double if __ldbl_is_dbl. (__strfmon_l): Rename to ___strfmon_l and add ldbl_strong_alias. (strfmon_l): Use ldbl_weak_alias instead of weak_alias. * misc/bits/syslog-ldbl.h: New file. * misc/Makefile (headers): Add it. * misc/sys/syslog.h [__LDBL_COMPAT]: #include it. * misc/syslog.c: Include math_ldbl_opt.h. (syslog): Rename to __syslog and add ldbl_strong_alias, use ldbl_hidden_def instead of libc_hidden_def. (vsyslog): Rename to __vsyslog and add ldbl_strong_alias, use ldbl_hidden_def instead of libc_hidden_def. * sysdeps/generic/math_ldbl_opt.h: New file. * math/w_j1l.c (j1l, y1l): Rename to __ prefixed variants. Add weak_alias. * math/w_j0l.c (j0l, y0l): Likewise. * math/w_jnl.c (jnl, ynl): Likewise. * sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttowardl): Remove strong_alias. (nexttowardl): Remove weak_alias. * sysdeps/ieee754/ldbl-96/s_erfl.c (__erfl, __erfcl): Remove strong_alias. (erfl, erfcl): Remove weak_alias. * sysdeps/ieee754/ldbl-64-128/s_asinhl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_atanl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_cbrtl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_ceill.c: New file. * sysdeps/ieee754/ldbl-64-128/s_copysignl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_cosl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_erfl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_expm1l.c: New file. * sysdeps/ieee754/ldbl-64-128/s_fabsl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_finitel.c: New file. * sysdeps/ieee754/ldbl-64-128/s_floorl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_fpclassifyl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_frexpl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_ilogbl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_isinfl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_isnanl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_llrintl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_llroundl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_log1pl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_logbl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_lrintl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_lroundl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_modfl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_nearbyintl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_nextafterl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_nexttoward.c: New file. * sysdeps/ieee754/ldbl-64-128/s_nexttowardf.c: New file. * sysdeps/ieee754/ldbl-64-128/s_nexttowardfd.c: New file. * sysdeps/ieee754/ldbl-64-128/s_remquol.c: New file. * sysdeps/ieee754/ldbl-64-128/s_rintl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_roundl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_scalblnl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_scalbnl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_signbitl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_sincosl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_sinl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_tanhl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_tanl.c: New file. * sysdeps/ieee754/ldbl-64-128/s_truncl.c: New file. * sysdeps/ieee754/ldbl-64-128/strtold_l.c: New file. * sysdeps/ieee754/ldbl-64-128/w_expl.c: New file. * sysdeps/ieee754/ldbl-opt/configure.in: New file. * sysdeps/ieee754/ldbl-opt/configure: New file. * sysdeps/ieee754/ldbl-opt/Makefile: New file. * sysdeps/ieee754/ldbl-opt/Versions: New file. * sysdeps/ieee754/ldbl-opt/cabs.c: New file. * sysdeps/ieee754/ldbl-opt/cabsl.c: New file. * sysdeps/ieee754/ldbl-opt/carg.c: New file. * sysdeps/ieee754/ldbl-opt/cargl.c: New file. * sysdeps/ieee754/ldbl-opt/cimag.c: New file. * sysdeps/ieee754/ldbl-opt/cimagl.c: New file. * sysdeps/ieee754/ldbl-opt/conj.c: New file. * sysdeps/ieee754/ldbl-opt/conjl.c: New file. * sysdeps/ieee754/ldbl-opt/creal.c: New file. * sysdeps/ieee754/ldbl-opt/creall.c: New file. * sysdeps/ieee754/ldbl-opt/math_ldbl_opt.c: New file. * sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h: New file. * sysdeps/ieee754/ldbl-opt/nldbl-acos.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-acosh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-asin.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-asinh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-asprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-atan.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-atan2.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-atanh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-cabs.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-cacos.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-cacosh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-carg.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-casin.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-casinh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-catan.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-catanh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-cbrt.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-ccos.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-ccosh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-ceil.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-cexp.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-cimag.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-clog.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-clog10.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-compat.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-compat.h: New file. * sysdeps/ieee754/ldbl-opt/nldbl-conj.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-copysign.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-cos.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-cosh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-cpow.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-cproj.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-creal.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-csin.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-csinh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-csqrt.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-ctan.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-ctanh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-dprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-drem.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-erf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-erfc.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-exp.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-exp10.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-exp2.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-expm1.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fabs.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fdim.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-finite.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-floor.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fma.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fmax.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fmin.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fmod.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-frexp.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fwprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fwprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-fwscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-gamma.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-hypot.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-ilogb.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-iovfscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isinf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isnan.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-j0.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-j1.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-jn.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-ldexp.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-lgamma.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-lgamma_r.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-llrint.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-llround.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-log.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-log10.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-log1p.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-log2.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-logb.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-lrint.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-lround.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-modf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-nan.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-nearbyint.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-nextafter.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-nexttoward.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-nexttowardf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-obstack_printf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-obstack_vprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-pow.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-pow10.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-printf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-printf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-printf_fp.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-printf_size.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-qecvt.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-qecvt_r.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-qfcvt.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-qfcvt_r.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-qgcvt.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-remainder.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-remquo.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-rint.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-round.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-scalb.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-scalbln.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-scalbn.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-scanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-signbit.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-significand.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-sin.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-sincos.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-sinh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-snprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-snprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-sprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-sprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-sqrt.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-sscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-strfmon.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-strfmon_l.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-strtold.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-strtold_l.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-strtoldint.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-swprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-swprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-swscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-syslog.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-syslog_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-tan.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-tanh.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-tgamma.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-trunc.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vasprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vdprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vfprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vfprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vfscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vfwprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vfwprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vfwscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vsnprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vsnprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vsprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vsprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vsscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vswprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vswprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vswscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vsyslog.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vsyslog_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vwprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vwprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vwscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-wcstold.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-wcstold_l.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-wcstoldint.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-wprintf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-wprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-wscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-y0.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-y1.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-yn.c: New file. * sysdeps/ieee754/ldbl-opt/s_asinh.c: New file. * sysdeps/ieee754/ldbl-opt/s_atan.c: New file. * sysdeps/ieee754/ldbl-opt/s_cacos.c: New file. * sysdeps/ieee754/ldbl-opt/s_cacosh.c: New file. * sysdeps/ieee754/ldbl-opt/s_cacoshl.c: New file. * sysdeps/ieee754/ldbl-opt/s_cacosl.c: New file. * sysdeps/ieee754/ldbl-opt/s_casin.c: New file. * sysdeps/ieee754/ldbl-opt/s_casinh.c: New file. * sysdeps/ieee754/ldbl-opt/s_casinhl.c: New file. * sysdeps/ieee754/ldbl-opt/s_casinl.c: New file. * sysdeps/ieee754/ldbl-opt/s_catan.c: New file. * sysdeps/ieee754/ldbl-opt/s_catanh.c: New file. * sysdeps/ieee754/ldbl-opt/s_catanhl.c: New file. * sysdeps/ieee754/ldbl-opt/s_catanl.c: New file. * sysdeps/ieee754/ldbl-opt/s_cbrt.c: New file. * sysdeps/ieee754/ldbl-opt/s_ccos.c: New file. * sysdeps/ieee754/ldbl-opt/s_ccosh.c: New file. * sysdeps/ieee754/ldbl-opt/s_ccoshl.c: New file. * sysdeps/ieee754/ldbl-opt/s_ccosl.c: New file. * sysdeps/ieee754/ldbl-opt/s_ceil.c: New file. * sysdeps/ieee754/ldbl-opt/s_cexp.c: New file. * sysdeps/ieee754/ldbl-opt/s_cexpl.c: New file. * sysdeps/ieee754/ldbl-opt/s_clog.c: New file. * sysdeps/ieee754/ldbl-opt/s_clog10.c: New file. * sysdeps/ieee754/ldbl-opt/s_clog10l.c: New file. * sysdeps/ieee754/ldbl-opt/s_clogl.c: New file. * sysdeps/ieee754/ldbl-opt/s_copysign.c: New file. * sysdeps/ieee754/ldbl-opt/s_cpow.c: New file. * sysdeps/ieee754/ldbl-opt/s_cpowl.c: New file. * sysdeps/ieee754/ldbl-opt/s_cproj.c: New file. * sysdeps/ieee754/ldbl-opt/s_cprojl.c: New file. * sysdeps/ieee754/ldbl-opt/s_csin.c: New file. * sysdeps/ieee754/ldbl-opt/s_csinh.c: New file. * sysdeps/ieee754/ldbl-opt/s_csinhl.c: New file. * sysdeps/ieee754/ldbl-opt/s_csinl.c: New file. * sysdeps/ieee754/ldbl-opt/s_csqrt.c: New file. * sysdeps/ieee754/ldbl-opt/s_csqrtl.c: New file. * sysdeps/ieee754/ldbl-opt/s_ctan.c: New file. * sysdeps/ieee754/ldbl-opt/s_ctanh.c: New file. * sysdeps/ieee754/ldbl-opt/s_ctanhl.c: New file. * sysdeps/ieee754/ldbl-opt/s_ctanl.c: New file. * sysdeps/ieee754/ldbl-opt/s_erf.c: New file. * sysdeps/ieee754/ldbl-opt/s_expm1.c: New file. * sysdeps/ieee754/ldbl-opt/s_fabs.c: New file. * sysdeps/ieee754/ldbl-opt/s_fdim.c: New file. * sysdeps/ieee754/ldbl-opt/s_fdiml.c: New file. * sysdeps/ieee754/ldbl-opt/s_finite.c: New file. * sysdeps/ieee754/ldbl-opt/s_floor.c: New file. * sysdeps/ieee754/ldbl-opt/s_fma.c: New file. * sysdeps/ieee754/ldbl-opt/s_fmal.c: New file. * sysdeps/ieee754/ldbl-opt/s_fmax.c: New file. * sysdeps/ieee754/ldbl-opt/s_fmaxl.c: New file. * sysdeps/ieee754/ldbl-opt/s_fmin.c: New file. * sysdeps/ieee754/ldbl-opt/s_fminl.c: New file. * sysdeps/ieee754/ldbl-opt/s_frexp.c: New file. * sysdeps/ieee754/ldbl-opt/s_ilogb.c: New file. * sysdeps/ieee754/ldbl-opt/s_isinf.c: New file. * sysdeps/ieee754/ldbl-opt/s_isnan.c: New file. * sysdeps/ieee754/ldbl-opt/s_ldexp.c: New file. * sysdeps/ieee754/ldbl-opt/s_ldexpl.c: New file. * sysdeps/ieee754/ldbl-opt/s_llrint.c: New file. * sysdeps/ieee754/ldbl-opt/s_llround.c: New file. * sysdeps/ieee754/ldbl-opt/s_log1p.c: New file. * sysdeps/ieee754/ldbl-opt/s_logb.c: New file. * sysdeps/ieee754/ldbl-opt/s_lrint.c: New file. * sysdeps/ieee754/ldbl-opt/s_lround.c: New file. * sysdeps/ieee754/ldbl-opt/s_modf.c: New file. * sysdeps/ieee754/ldbl-opt/s_nan.c: New file. * sysdeps/ieee754/ldbl-opt/s_nanl.c: New file. * sysdeps/ieee754/ldbl-opt/s_nearbyint.c: New file. * sysdeps/ieee754/ldbl-opt/s_nextafter.c: New file. * sysdeps/ieee754/ldbl-opt/s_remquo.c: New file. * sysdeps/ieee754/ldbl-opt/s_rint.c: New file. * sysdeps/ieee754/ldbl-opt/s_round.c: New file. * sysdeps/ieee754/ldbl-opt/s_scalbln.c: New file. * sysdeps/ieee754/ldbl-opt/s_scalbn.c: New file. * sysdeps/ieee754/ldbl-opt/s_significand.c: New file. * sysdeps/ieee754/ldbl-opt/s_significandl.c: New file. * sysdeps/ieee754/ldbl-opt/s_sin.c: New file. * sysdeps/ieee754/ldbl-opt/s_sincos.c: New file. * sysdeps/ieee754/ldbl-opt/s_tan.c: New file. * sysdeps/ieee754/ldbl-opt/s_tanh.c: New file. * sysdeps/ieee754/ldbl-opt/s_trunc.c: New file. * sysdeps/ieee754/ldbl-opt/w_acos.c: New file. * sysdeps/ieee754/ldbl-opt/w_acosh.c: New file. * sysdeps/ieee754/ldbl-opt/w_acoshl.c: New file. * sysdeps/ieee754/ldbl-opt/w_acosl.c: New file. * sysdeps/ieee754/ldbl-opt/w_asin.c: New file. * sysdeps/ieee754/ldbl-opt/w_asinl.c: New file. * sysdeps/ieee754/ldbl-opt/w_atan2.c: New file. * sysdeps/ieee754/ldbl-opt/w_atan2l.c: New file. * sysdeps/ieee754/ldbl-opt/w_atanh.c: New file. * sysdeps/ieee754/ldbl-opt/w_atanhl.c: New file. * sysdeps/ieee754/ldbl-opt/w_cosh.c: New file. * sysdeps/ieee754/ldbl-opt/w_coshl.c: New file. * sysdeps/ieee754/ldbl-opt/w_drem.c: New file. * sysdeps/ieee754/ldbl-opt/w_dreml.c: New file. * sysdeps/ieee754/ldbl-opt/w_exp.c: New file. * sysdeps/ieee754/ldbl-opt/w_exp10.c: New file. * sysdeps/ieee754/ldbl-opt/w_exp10l.c: New file. * sysdeps/ieee754/ldbl-opt/w_fmod.c: New file. * sysdeps/ieee754/ldbl-opt/w_fmodl.c: New file. * sysdeps/ieee754/ldbl-opt/w_hypot.c: New file. * sysdeps/ieee754/ldbl-opt/w_hypotl.c: New file. * sysdeps/ieee754/ldbl-opt/w_j0.c: New file. * sysdeps/ieee754/ldbl-opt/w_j0l.c: New file. * sysdeps/ieee754/ldbl-opt/w_j1.c: New file. * sysdeps/ieee754/ldbl-opt/w_j1l.c: New file. * sysdeps/ieee754/ldbl-opt/w_jn.c: New file. * sysdeps/ieee754/ldbl-opt/w_jnl.c: New file. * sysdeps/ieee754/ldbl-opt/w_lgamma.c: New file. * sysdeps/ieee754/ldbl-opt/w_lgamma_r.c: New file. * sysdeps/ieee754/ldbl-opt/w_lgammal.c: New file. * sysdeps/ieee754/ldbl-opt/w_lgammal_r.c: New file. * sysdeps/ieee754/ldbl-opt/w_log.c: New file. * sysdeps/ieee754/ldbl-opt/w_log10.c: New file. * sysdeps/ieee754/ldbl-opt/w_log10l.c: New file. * sysdeps/ieee754/ldbl-opt/w_log2.c: New file. * sysdeps/ieee754/ldbl-opt/w_log2l.c: New file. * sysdeps/ieee754/ldbl-opt/w_logl.c: New file. * sysdeps/ieee754/ldbl-opt/w_pow.c: New file. * sysdeps/ieee754/ldbl-opt/w_powl.c: New file. * sysdeps/ieee754/ldbl-opt/w_remainder.c: New file. * sysdeps/ieee754/ldbl-opt/w_remainderl.c: New file. * sysdeps/ieee754/ldbl-opt/w_scalb.c: New file. * sysdeps/ieee754/ldbl-opt/w_scalbl.c: New file. * sysdeps/ieee754/ldbl-opt/w_sinh.c: New file. * sysdeps/ieee754/ldbl-opt/w_sinhl.c: New file. * sysdeps/ieee754/ldbl-opt/w_sqrt.c: New file. * sysdeps/ieee754/ldbl-opt/w_sqrtl.c: New file. * sysdeps/ieee754/ldbl-opt/w_tgamma.c: New file. * sysdeps/ieee754/ldbl-opt/w_tgammal.c: New file. * sysdeps/unix/sysv/linux/sparc/bits/wordsize.h: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/Implies: New file. * sysdeps/sparc/sparc32/Implies: Move ldbl-128 first and flt-32 after dbl-64. * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (NLDBL_VERSION): %define this to to GLIBC_2.4. * sysdeps/sparc/sparc32/fpu/e_sqrtl.c: New file. * sysdeps/sparc/sparc32/fpu/s_fabs.c: New file. * sysdeps/sparc/sparc32/fpu/s_fabsf.S: New file. * sysdeps/sparc/sparc32/fpu/s_fabsl.c: New file. * sysdeps/sparc/sparc32/soft-fp/q_qtoui.c: Removed. * sysdeps/sparc/sparc32/soft-fp/q_qtoux.c: Removed. * sysdeps/sparc/sparc32/soft-fp/q_qtox.c: Removed. * sysdeps/sparc/sparc32/soft-fp/q_uitoq.c: Removed. * sysdeps/sparc/sparc32/soft-fp/q_uxtoq.c: Removed. * sysdeps/sparc/sparc32/soft-fp/q_xtoq.c: Removed. * sysdeps/sparc/sparc32/soft-fp/q_lltoq.c: New file. * sysdeps/sparc/sparc32/soft-fp/q_qtoll.c: New file. * sysdeps/sparc/sparc32/soft-fp/q_qtou.c: New file. * sysdeps/sparc/sparc32/soft-fp/q_qtoull.c: New file. * sysdeps/sparc/sparc32/soft-fp/q_ulltoq.c: New file. * sysdeps/sparc/sparc32/soft-fp/q_utoq.c: New file. * sysdeps/sparc/sparc32/soft-fp/Versions: New file. * sysdeps/sparc/fpu/bits/mathinline.h (__unordered_cmp, __unordered_v9cmp): Define differently depending on -m32 -mlong-double-{64,128}. (__signbitl, sqrtl, __ieee754_sqrtl): New inlines. * sysdeps/sparc/fpu/bits/mathdef.h (__NO_LONG_DOUBLE_MATH): Remove. * sysdeps/sparc/sparc32/soft-fp/Makefile (sparc32-quad-routines): Set. (sysdep-routines): Add sparc32-quad-routines. * sysdeps/sparc/sparc32/soft-fp/sfp-machine.h: Include stdlib.h. (FP_HANDLE_EXCEPTIONS): Call ___Q_simulate_exceptions as a normal function. * sysdeps/sparc/sparc32/soft-fp/q_sqrt.c (__ieee754_sqrtl): New alias to _Q_sqrt. * sysdeps/sparc/sparc32/soft-fp/q_div.c (_Q_div): Fix a typo. * sysdeps/sparc/sparc64/soft-fp/sfp-machine.h: Include stdlib.h. * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update. * libio/libio.h (_IO_vfscanf, _IO_vfprintf): Remove __THROW. (_IO_vfwscanf, _IO_vfwprintf): Likewise. * libio/libioP.h (_IO_vdprintf): Likewise.
2004-12-22(CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.Ulrich Drepper1-5/+9
2007-07-122.5-18.1Jakub Jelinek1-9/+5
2003-05-27Update.Ulrich Drepper1-2/+2
2003-05-27 Jakub Jelinek <jakub@redhat.com> * stdio-common/vfprintf.c (process_arg, process_string_arg): Use pa_int/pa_u_int instead of pa_short_int, pa_u_short_int and pa_char. * stdio-common/printf-parse.h (union printf_arg): Remove pa_char, pa_short_int, pa_u_short_int and pa_float. 2003-05-26 Jakub Jelinek <jakub@redhat.com> * libio/strops.c (_IO_str_init_static): Change into a wrapper around _IO_str_init_static_internal. (_IO_str_init_static_internal): Moved from _IO_str_init_static, change size argument to _IO_size_t, don't limit sprintf to 64M. (_IO_str_init_readonly): Call _IO_str_init_static_internal. * libio/wstrops.c (_IO_wstr_init_static): Change size argument to _IO_size_t, don't limit swprintf to 256M. (_IO_wstr_init_readonly): Remove. * libio/libioP.h (_IO_str_init_static_internal, _IO_wstr_init_static): Adjust prototypes. (_IO_wstr_init_readonly): Remove prototype. * libio/iovsprintf.c (_IO_vsprintf): Use _IO_str_init_static_internal instead of INTUSE(_IO_str_init_static). * libio/iovsscanf.c (_IO_vsscanf): Likewise. * libio/memstream.c (open_memstream): Likewise. * libio/obprintf.c (_IO_obstack_vfprintf): Likewise. * libio/vasprintf.c (_IO_vasprintf): Likewise. * libio/vsnprintf.c (_IO_vsnprintf): Likewise. * stdio-common/tst-sprintf.c (main): Add new test.
2002-02-26Update.Ulrich Drepper1-3/+4
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-08-11Update.Ulrich Drepper1-6/+3
* 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 Jaeger1-20/+22
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.
2000-06-292000-06-28 Greg McGary <greg@mcgary.org>Greg McGary1-5/+5
* 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.
1999-06-16Update.Ulrich Drepper1-2/+2
* 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.
1998-06-07Update.Ulrich Drepper1-4/+1
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.
1997-08-20Update.cvs/libc-ud-970819Ulrich Drepper1-24/+25
1997-08-20 05:30 Ulrich Drepper <drepper@cygnus.com> * catgets/catgets.c (catclose): Use __munmap instead of munmap. * catgets/gencat.c (read_input_file): Fix typo. * dirent/dirent.h: Make seekdir and telldir available for __USE_XOPEN. * elf/dl-load.c: Fix case of missing DT_RPATH in object which gets executed (e.g., when it is a static binary). * intl/bindtextdomain.c: Use strdup in glibc. Correct comment. * intl/dcgettext.c: Likewise. * intl/dgettext.c: Likewise. * intl/explodename.c: Likewise. * intl/finddomain.c: Likewise. * intl/gettext.c: Likewise. * intl/gettext.h: Likewise. * intl/hash-string.h: Likewise. * intl/l10nflist.c: Likewise. * intl/libintl.h: Likewise. * intl/loadinfo.h: Likewise. * intl/loadmsgcat.c: Likewise. * intl/localealias.c: Likewise. * intl/textdomain.c: Likewise. Unify libio sources with code in libg++. * libio/fcloseall.c: Update and reformat copyright. Protect use of weak_alias. Use _IO_* thread macros instead of __libc_*. * libio/feof.c: Likewise. * libio/feof_u.c: Likewise. * libio/ferror.c: Likewise. * libio/ferror_u.c: Likewise. * libio/fgetc.c: Likewise. * libio/filedoalloc.c: Likewise. * libio/fileno.c: Likewise. * libio/fileops.c: Likewise. * libio/fputc.c: Likewise. * libio/fputc_u.c: Likewise. * libio/freopen.c: Likewise. * libio/fseek.c: Likewise. * libio/genops.c: Likewise. * libio/getc.c: Likewise. * libio/getc_u.c: Likewise. * libio/getchar.c: Likewise. * libio/getchar_u.c: Likewise. * libio/iofclose.c: Likewise. * libio/iofdopen.c: Likewise. * libio/iofflush.c: Likewise. * libio/iofflush_u.c: Likewise. * libio/iofgetpos.c: Likewise. * libio/iofgets.c: Likewise. * libio/iofopen.c: Likewise. * libio/iofopncook.c: Likewise. * libio/iofprintf.c: Likewise. * libio/iofputs.c: Likewise. * libio/iofread.c: Likewise. * libio/iofsetpos.c: Likewise. * libio/ioftell.c: Likewise. * libio/iofwrite.c: Likewise. * libio/iogetdelim.c: Likewise. * libio/iogetline.c: Likewise. * libio/iogets.c: Likewise. * libio/iopadn.c: Likewise. * libio/iopopen.c: Likewise. * libio/ioputs.c: Likewise. * libio/ioseekoff.c: Likewise. * libio/ioseekpos.c: Likewise. * libio/iosetbuffer.c: Likewise. * libio/iosetvbuf.c: Likewise. * libio/iosprintf.c: Likewise. * libio/ioungetc.c: Likewise. * libio/iovdprintf.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * libio/libio.h: Likewise. * libio/libioP.h: Likewise. * libio/obprintf.c: Likewise. * libio/pclose.c: Likewise. * libio/peekc.c: Likewise. * libio/putc.c: Likewise. * libio/putchar.c: Likewise. * libio/rewind.c: Likewise. * libio/setbuf.c: Likewise. * libio/setlinebuf.c: Likewise. * libio/stdfiles.c: Likewise. * libio/stdio.c: Likewise. * libio/strfile.h: Likewise. * libio/strops.c: Likewise. * libio/vasprintf.c: Likewise. * libio/vscanf.c: Likewise. * libio/vsnprintf.c: Likewise. * manual/libc.texinfo: Add menu entries for chapter on message translation. * manual/locale.texi: Correct next entry in @node for new chapter. * manual/search.texi: Likewise for previous link. * manual/message.texi: New file. * manual/startup.texi: Document LC_ALL, LC_MESSAGES, NLSPATH, setenv, unsetenv, and clearenv. * manual/string.texi: Fix typos. Patch by Jim Meyering. * math/Makefile (test-longdouble-yes): Enable. We want long double tests now. Crusade against strcat. * nis/nss_nisplus/nisplus-publickey.c: Remove uses of strcat. * stdlib/canonicalize.c: Likewise. * posix/glob.h: Define __const if necessary. Use __const in all prototypes. * sysdeps/generic/stpcpy.c: Use K&R form to allow use in other GNU packages. * posix/wordexp.c: Completely reworked buffer handling for much better performance. Patch by Tim Waugh. * socket/sys/sochet.h (getpeername): Fix type of LEN parameter, it must be socklen_t. * sysdeps/libm-i387/e_remainder.S: Pretty print. * sysdeps/libm-i387/e_remainderf.S: Likewise. * sysdeps/libm-i387/e_remainderl.S: Pop extra value for FPU stack. * sysdeps/libm-i387/s_cexp.S: Little optimization. * sysdeps/libm-i387/s_cexpl.S: Likewise. * sysdep/libm-ieee754/s_csinhl.c: Include <fenv.h>. 1997-08-18 15:21 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Fix memory leak in cleanup code. 1997-08-17 Paul Eggert <eggert@twinsun.com> * tzset.c (__tzset_internal): Fix memory leak when the user specifies a TZ value that uses a default rule file. Do not assume US DST rules when the user specifies that there is no DST. 1997-08-10 19:17 Philip Blundell <Philip.Blundell@pobox.com> * inet/getnameinfo.c: Tidy up. * sysdeps/posix/getaddrinfo.c: Likewise. * sysdeps/unix/sysv/linux/if_index.c (if_nametoindex): Return 0 if using stub code. (if_indextoname): Use SIOGIFNAME ioctl if the kernel supports it. (if_nameindex): Use alloca() rather than malloc(); use SIOCGIFCOUNT ioctl if the kernel supports it. 1997-08-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/sys/mount.h: Remove the IS_* macros, they operate on internal kernel structures and have no place in a user header. 1997-08-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules (lib%.so): Depend on $(+preinit) and $(+postinit). (build-shlib): Filter them out of $^. 1997-08-15 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-error.c (_dl_signal_error): Fix error message. 1997-08-16 04:06 Ulrich Drepper <drepper@cygnus.com> * assert/assert.h [__USE_GNU]: Undefine assert_perror. Reported by Theodore C. Belding <Ted.Belding@umich.edu>. 1997-08-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makeconfig: Change object suffixes from *.[spgb]o to *.o[spgb] to avoid conflict with PO files. * Makerules: Likewise. * Rules: Likewise. * elf/Makefile: Likewise. * extra-lib.mk: Likewise. * gmon/Makefile: Likewise. * nis/Makefile: Likewise. * nss/Makefile: Likewise. * resolv/Makefile: Likewise. * rpm/Makefile: Likewise. * sunrpc/Makefile: Likewise. * sysdeps/sparc/elf/Makefile: Likewise. * sysdeps/sparc64/elf/Makefile: Likewise. * sysdeps/unix/sysv/linux/sparc/Makefile: Likewise. (ASFLAGS-.os): Renamed from as-FLAGS.os.
1997-08-14Update.cvs/libc-ud-970813Ulrich Drepper1-0/+2
1997-08-14 03:14 Ulrich Drepper <drepper@cygnus.com> * elf/dl-minimal.c: Don't use relative #include paths. (malloc): Don't try to initialize _dl_pagesize, it already is. (__sigjmp_save, longjmp): Reformat. * sysdeps/generic/dl-sysdep.c: Implement _dl_show_auxv function to show content of auxiliary array. (_dl_sysdep_start): Remember start of auxiliary vector. * sysdeps/mach/hurd/dl-sysdep.c: (_dl_show_auxv): New dummy function. * elf/link.h: Add prototype for _dl_show_auxv. * elf/rtld.c (dl_main): Call _dl_show_auxv if LD_SHOW_AUXV envvar is present. * libio/iofdopen.c: Better prepare for use in libstdc++. * libio/iofflush.c: Likewise. * libio/iofgetpos.c: Likewise. * libio/iofgets.c: Likewise. * libio/iofopen.c: Likewise. * libio/iofputs.c: Likewise. * libio/iofread.c: Likewise. * libio/iofsetpos.c: Likewise. * libio/ioftell.c: Likewise. * libio/iofwrite.c: Likewise. * libio/iogetdelim.c: Likewise. * libio/iogets.c: Likewise. * libio/iopopen.c: Likewise. * libio/ioputs.c: Likewise. * libio/iosetbuffer.c: Likewise. * libio/iosetvbuf.c: Likewise. * libio/ioungetc.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * manual/creature.texi: Mention _XOPEN_SOURCE_EXTENDED in correct place. * manual/math.texi: Add comment to sincos decsription to say it's a GNU extension. Fix description of random function. * posix/fnmatch.h: Recognize Windog by _WINDOWS32 not WIN32. * posix/glob.c: Likewise. Handle stupid system headers on SunOS. Add casts for all __alloca calls. * posix/glob.h: Recognize Windog by _WINDOWS32 not WIN32. Declare additional GLOB_* constants also if _GNU_SOURCE is defined. Patches by Paul D. Smith <psmith@BayNetworks.COM>. * stdio-common/_itoa.c: Don't use relateive #include paths. * sysdeps/i386/fpu/bits/mathinline.h: Enable optimizations even for gcc 2.7. (atan): Loading 1.0 from memory does not pay off. (asinh): Fix typo. 1997-08-13 09:44 Philip Blundell <Philip.Blundell@pobox.com> * sysdeps/stub/accept.c: Use socklen_t where necessary. * sysdeps/stub/bind.c: Likewise. * sysdeps/stub/connect.c: Likewise. * sysdeps/stub/getsockname.c: Likewise. * sysdeps/stub/getsockopt.c: Likewise. * sysdeps/stub/recvfrom.c: Likewise. * sysdeps/stub/sendto.c: Likewise. * sysdeps/stub/setsockopt.c: Likewise. 1997-08-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * io/ftw.c (object_compare): Avoid memcmp when comparing scalar types. 1997-08-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * math/libm-test.c (cbrt_test): Add epsilon for long double to `cbrt (-0.001)'. 1997-08-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/stub/bits/string.h: Fix comment. 1997-08-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/Makefile (routines): Remove dl-version. (dl-routines): Add it here instead. This removes dead code from libc.so. 1997-08-12 17:17 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de> * malloc/thread-m.h (thread_atfork, thread_atfork_static): New macros to encapsulate pthread_atfork's functionality. * malloc/malloc.c (ptmalloc_lock_all, ptmalloc_unlock_all): New functions, registered via thread_atfork in the initialization routine or via thread_atfork_static in global scope. This ensures a consistent state of all locks across fork(). 1997-08-11 23:00:32 1997 Mark Kettenis <kettenis@phys.uva.nl> * login/programs/xtmp.c (compare_entry): Partially undo patch made by Klaus Espenlaub. There was no xtmp/utmp typo. Added comment to cclarify this. * login/programs/xtmp.h: Likewise. * posix/getopt.c: Recognize Windog by _WINDOWS32 not WIN32. Patch by Paul D. Smith <psmith@BayNetworks.COM>. 1997-08-12 13:51 Ulrich Drepper <drepper@cygnus.com> * login/getutid.c: Rename to __getutid and make getutid and getutxid weak aliases. Patch by ir. Mark M._Kettenis <kettenis@phys.uva.nl>. 1997-08-11 23:55 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers): Add bits/mman.h. 1997-08-11 08:51:21 1997 H.J. Lu <hjl@gnu.ai.mit.edu> * stdlib/fmtmsg.c (fmtmsg): Add static to __libc_once_define macro. * libc.map (__progname_full, __progname): Added. 1997-08-04 08:31 H.J. Lu <hjl@gnu.ai.mit.edu> * sysdeps/unix/sysv/linux/if_index.c (if_nametoindex): Return 0 if SIOGIFINDEX is not defined. (if_indextoname): Initialize "result" to NULL. (if_nametoindex, if_nameindex): Fix ENOSYS setting. 1997-08-11 11:58 Richard Henderson <rth@cygnus.com> Sparc ISO C 9x exception handling: * sysdeps/sparc/fpu/bits/mathdef.h: New file. * sysdeps/sparc/fpu/fclrexcpt.c: New file. * sysdeps/sparc/fpu/fegetenv.c: New file. * sysdeps/sparc/fpu/fegetround.c: New file. * sysdeps/sparc/fpu/feholdexcpt.c: New file. * sysdeps/sparc/fpu/fesetenv.c: New file. * sysdeps/sparc/fpu/fesetround.c: New file. * sysdeps/sparc/fpu/feupdateenv.c: New file. * sysdeps/sparc/fpu/fgetexcptflg.c: New file. * sysdeps/sparc/fpu/fraiseexcpt.c: New file. * sysdeps/sparc/fpu/fsetexcptflg.c: New file. * sysdeps/sparc/fpu/ftestexcept.c: New file. * sysdeps/sparc/sparc32/fpu/bits/fenv.h: New file. * sysdeps/sparc/sparc64/fpu/bits/fenv.h: New file. 1997-08-11 11:58 Richard Henderson <rth@cygnus.com> Sparc64 merge: * configure.in: Change up subdirectories, rename sparc8->sparcv8. * csu/Makefile: Nuke need-nopic-initfini bits. The problem was that sparc64 ld did not recognize pic relocs at all. * elf/dl-deps.c: Include <string.h>. * elf/do-rel.h (elf_dynamic_do_rel): Take reloc address and size directly instead of the DT names to get them from. * elf/dynamic-link.h (_ELF_DYNAMIC_DO_RELOC): New macro distilled from ELF_DYNAMIC_DO_REL{,A}. Define a second version that accounts for the possibility that DT_RELA and DT_JMPPLT overlap, as such is the case on the Sparc. * elf/elf.h: Stub out Elf64_Ver*, and make them the same as the Elf32_Ver* bits. The linker does not even know to differentiate between the word sizes. Someone should examine this and figure out what the proper sizes of things should be for 64-bit hosts before the sparc64 libraries are distributed. * shlib-versions: Rename sparc64 ld.so to not conflict with sparc32 on the same machine. Move old sysdeps/sparc contents to sysdeps/sparc/sparc32, rename sparc8 subdir to sparcv8, move sysdeps/sparc64 content to sysdeps/sparc/sparc64. Same for sysdeps/unix/sysv/linux/sparc. * sysdeps/sparc/Implies: Do ieee754 here. * sysdeps/sparc/configure.in: Move from sparc32/. * sysdeps/sparc/sparc32/Implies: Do wordsize here. * sysdeps/sparc/sparc64/Implies: Likewise. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_load_address): Use uninitialized .got to find load address instead of AT_BASE, as the later does not exist when running ld.so directly. * sysdeps/sparc/sparc32/fpu/fpu_control.h: Move from ../. * sysdeps/sparc/sparc64/fpu/fpu_control.h: Likewise. * sysdeps/sparc/sparc32/udiv_qrnnd.S: Clean up PIC support. * sysdeps/sparc/sparc64/Makefile (sysdep_routines): Add s_finitel and s_signbitl for stdio. * sysdeps/sparc/sparc64/configure.in: Remove, we no longer need nopic_initfini. * sysdeps/sparc/sparc64/bsd-_setjmp.S: Remove. * sysdeps/sparc/sparc64/bsd-setjmp.S: Remove. * sysdeps/unix/sysv/linux/sparc/sparc64/bsd-_setjmp.S: New empty file. * sysdeps/unix/sysv/linux/sparc/sparc64/bsd-setjmp.S: New empty file. * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add __longjmp alias. * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Add weak _setjmp and setjmp entry points. * sysdeps/sparc/sparc64/dl-machine.h: Finish real implementation. * sysdeps/sparc/sparc64/elf/crtbegin.S: Add copyright, fix PIC. * sysdeps/sparc/sparc64/elf/crtend.S: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h (struct sigaction): Fix sa_flags size for sparc64; add sa_restorer for kernel. * sysdeps/unix/sysv/linux/sparc/sparc64/brk.S: Fix PIC. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/init-first.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: New file. 1997-08-10 18:29:08 1997 Mark Kettenis <kettenis@phys.uva.nl> * login/login.c (login): Check for correct return value of utmpname. 1997-08-11 16:49 Ulrich Drepper <drepper@cygnus.com> * time/tzset.c (__tzset_internal): Correctly handle TZ strings following incorrect old POSIX specs. Patch by Paul Eggert <eggert@twinsun.com>. * sysdeps/generic/bits/sigaction.h: Correct comment for SA_RESTART. * sysdeps/unix/bsd/osf/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/alpha/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/minix/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/sysv4/bits/sigaction.h: Likewise. Reported by NIIBE Yutaka <gniibe@mri.co.jp>. 1997-08-09 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * manual/math.texi: Define the macros @mul and @infinity and use them to format the multiplication and infinity signs. (FP Comparison Functions): Use @code, not @math, for C code examples. * elf/dl-profile.c: Add descriptions and implement reading of
1996-12-30update from main archive 961229cvs/libc20x-970306cvs/libc-961231cvs/libc-961230Ulrich Drepper1-1/+0
Mon Dec 30 01:32:59 1996 Ulrich Drepper <drepper@cygnus.com> * tme/localtime.c: Rewrite so that localtime_r does not call tzset, but localtime does. * features.h: Rename ANSI C to ISO C. Mention __GLIBC__ and __GLIBC_MINOR__ macros. * gnu-versions.h: Add _GNU_GETOPT_INTERFACE_VERSION. * posix/getopt.c: Use _GNU_GETOPT_INTERFACE_VERSION to check whether we can elide the code. * posix/getopt1.c: Likewise. * posix/Makefile: Correct copyright. * elf/dl-error.c (_dl_catch_error): Clear `catch' also when error occurred. * elf/dl-support.c (_dl_sysdep_open_zero_fill): Don't define if MAP_ANON is defined. * elf/eval.c: Use __getline instead of getline. * elf/rtld.c (dl_main): Check return value of _dl_new_object function for NULL. * sysdeps/generic/dl-cache.c: Update copyright. * signal/Makefile: Correct copyright. (routines): Remove gsignal and ssignal. Add bsd_signal. * signal/gsignal.c: Removed. Now is made an alias. * signal/ssignal.c: Likewise. * sysdeps/posix/raise.c: Add alias gsignal. * sysdeps/stub/raise.c: Likewise. * sysdeps/posix/signal.c: Add alias ssignal. * sysdeps/stub/signal.c: Likewise. * signal/signal.h: Declare bsd_signal. Define signal as bsd_signal if __FAVOR_BSD. * sysdeps/posix/bsd_signal.c: New file. Implementation of XPG function. * sysdeps/unix/sysv/linux/signal.c: Add explanation. * socket/sys/un.h: Define SUN_LEN according to POSIX.1g. * stdio-common/Makefile (tests): Add scanf10. * stdio-common/scanf10.c: New file. * stdio-common/vfscanf.c: Decrement counter if EOF is read while reading string. * sysdeps/libm-i387/e_acos.S: Use END, not PSEUDO_END. * sysdeps/libm-i387/e_acosl.S: Likewise. * sysdeps/libm-i387/e_asin.S: Likewise. * sysdeps/libm-i387/e_asinl.S: Likewise. * sysdeps/libm-i387/e_atan2.S: Likewise. * sysdeps/libm-i387/e_atan2f.S: Likewise. * sysdeps/libm-i387/e_atan2l.S: Likewise. * sysdeps/libm-i387/e_exp.S: Likewise. * sysdeps/libm-i387/e_expl.S: Likewise. * sysdeps/libm-i387/e_fmod.S: Likewise. * sysdeps/libm-i387/e_fmodl.S: Likewise. * sysdeps/libm-i387/e_log.S: Likewise. * sysdeps/libm-i387/e_log10.S: Likewise. * sysdeps/libm-i387/e_log10l.S: Likewise. * sysdeps/libm-i387/e_logl.S: Likewise. * sysdeps/libm-i387/e_remainder.S: Likewise. * sysdeps/libm-i387/e_remainderf.S: Likewise. * sysdeps/libm-i387/e_remainderl.S: Likewise. * sysdeps/libm-i387/e_scalb.S: Likewise. * sysdeps/libm-i387/e_scalbl.S: Likewise. * sysdeps/libm-i387/e_sqrt.S: Likewise. * sysdeps/libm-i387/e_sqrtf.S: Likewise. * sysdeps/libm-i387/e_sqrtl.S: Likewise. * sysdeps/libm-i387/s_atan.S: Likewise. * sysdeps/libm-i387/s_atanf.S: Likewise. * sysdeps/libm-i387/s_atanl.S: Likewise. * sysdeps/libm-i387/s_ceil.S: Likewise. * sysdeps/libm-i387/s_ceilf.S: Likewise. * sysdeps/libm-i387/s_ceill.S: Likewise. * sysdeps/libm-i387/s_copysign.S: Likewise. * sysdeps/libm-i387/s_copysignf.S: Likewise. * sysdeps/libm-i387/s_copysignl.S: Likewise. * sysdeps/libm-i387/s_cos.S: Likewise. * sysdeps/libm-i387/s_cosf.S: Likewise. * sysdeps/libm-i387/s_cosl.S: Likewise. * sysdeps/libm-i387/s_finite.S: Likewise. * sysdeps/libm-i387/s_finitef.S: Likewise. * sysdeps/libm-i387/s_finitel.S: Likewise. * sysdeps/libm-i387/s_floor.S: Likewise. * sysdeps/libm-i387/s_floorf.S: Likewise. * sysdeps/libm-i387/s_floorl.S: Likewise. * sysdeps/libm-i387/s_ilogb.S: Likewise. * sysdeps/libm-i387/s_ilogbf.S: Likewise. * sysdeps/libm-i387/s_ilogbl.S: Likewise. * sysdeps/libm-i387/s_log1p.S: Likewise. * sysdeps/libm-i387/s_log1pf.S: Likewise. * sysdeps/libm-i387/s_log1pl.S: Likewise. * sysdeps/libm-i387/s_logb.S: Likewise. * sysdeps/libm-i387/s_logbf.S: Likewise. * sysdeps/libm-i387/s_logbl.S: Likewise. * sysdeps/libm-i387/s_rint.S: Likewise. * sysdeps/libm-i387/s_rintf.S: Likewise. * sysdeps/libm-i387/s_rintl.S: Likewise. * sysdeps/libm-i387/s_scalbn.S: Likewise. * sysdeps/libm-i387/s_scalbnf.S: Likewise. * sysdeps/libm-i387/s_scalbnl.S: Likewise. * sysdeps/libm-i387/s_significand.S: Likewise. * sysdeps/libm-i387/s_significandf.S: Likewise. * sysdeps/libm-i387/s_significandl.S: Likewise. * sysdeps/libm-i387/s_sin.S: Likewise. * sysdeps/libm-i387/s_sinf.S: Likewise. * sysdeps/libm-i387/s_sinl.S: Likewise. * sysdeps/libm-i387/e_log.S: Use fyl2xp1 instruction for values near 1 to increase precision. * sysdeps/libm-i387/e_log10.S: Likewise. * sysdeps/libm-i387/e_log10l.S: Likewise. * sysdeps/libm-i387/e_logl.S: Likewise. * sysdeps/libm-i387/s_cos.S: Use testl instead of andw. * sysdeps/libm-i387/s_cosl.S: Likewise. * sysdeps/libm-i387/s_sin.S: Likewise. * sysdeps/libm-i387/s_sinl.S: Likewise. * sysdeps/libm-i387/s_tan.S: Likewise. * sysdeps/libm-i387/s_tanl.S: Likewise. * sysdeps/libm-i387/e_acosf.S: New file. Add float versions. * sysdeps/libm-i387/e_asinf.S: Likewise. * sysdeps/libm-i387/e_expf.S: Likewise. * sysdeps/libm-i387/e_fmodf.S: Likewise. * sysdeps/libm-i387/e_log10f.S: Likewise. * sysdeps/libm-i387/e_logf.S: Likewise. * sysdeps/libm-i387/e_scalbf.S: Likewise. * sysdeps/libm-i387/e_acosh.S: New file. Highly optimized versions. * sysdeps/libm-i387/e_acoshf.S: Likewise. * sysdeps/libm-i387/e_acoshl.S: Likewise. * sysdeps/libm-i387/e_atanh.S: Likewise. * sysdeps/libm-i387/e_atanhf.S: Likewise. * sysdeps/libm-i387/e_atanhl.S: Likewise. * sysdeps/libm-i387/e_asinh.S: Likewise. * sysdeps/libm-i387/e_asinhf.S: Likewise. * sysdeps/libm-i387/e_asinhl.S: Likewise. * sysdeps/libm-ieee754/s_asinhf.c: Tweak a bit. Use lower levels for simplified handling. * sysdeps/unix/sysv/linux/syscalls.list: Add query_module. Sun Dec 22 01:39:29 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * inet/rcmd.c (rcmd): Set h_errno before calling herror. * inet/rexec.c (rexec): Likewise. Sat Dec 21 21:47:08 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/m68k/setjmp.c (__setjmp): Make it really compatible. Sun Dec 22 03:23:33 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/s_log1p.S: Use fyl2xp1 for numbers in range -0.29 <= x <= 0.29, otherwise the old method. * sysdeps/libm-i387/s_log1pf.S: Likewise. * sysdeps/libm-i387/s_log1pl.S: Likewise.
1996-12-20Update from main archive 961219cvs/libc-961220Ulrich Drepper1-5/+6
Thu Dec 19 23:28:33 1996 Ulrich Drepper <drepper@cygnus.com> * resolv/resolv.h: Update from BIND 4.9.5-P1. * resolv/res_comp.c: Likewise. * resolv/res_debug.c: Likewise. * resolv/Banner: Update version number. Thu Dec 19 20:58:53 1996 Ulrich Drepper <drepper@cygnus.com> * elf/dlfcn.h: Add extern "C" wrapper. * io/utime.h: Don't define NULL since this isn't allowed in POSIX. * io/sys/stat.h: Declare `lstat' only if __USE_BSD || __USE_XOPEN_EXTENDED. * locale/locale.h: Define NULL. * math/math.c: Don't include <errno.h> to define math errors. * stdlib/stdlib.h: Likewise. * posix/unistd.h: Don't declare environ. * posix/sys/utsname.h (struct utsname): Declare member domainname as __domainname is !__USE_GNU. * signal/signal.h: Declare size_t only if __USE_BSD || __USE_XOPEN_EXTENDED. * stdio/stdio.h: Don't declare cuserid when __USE_POSIX, but instead when __USE_XOPEN. * string/string.h: Define strndup only if __USE_GNU. * sysdeps/unix/sysv/linux/clock.c: New file. * sysdeps/unix/sysv/linux/timebits.h: Define CLOCKS_PER_SEC as 1000000 per X/Open standard. * features.h: Add code to recognize _POSIX_C_SOURCE value 199309. Define __USE_POSIX199309. * posix/unistd.h: Declare fdatasync only if __USE_POSIX199309. * time/time.c: Declare nanosleep only if __USE_POSIX199309. Patches by Rüdiger Helsch <rh@unifix.de>. * locale/locale.h: Add declaration of newlocale and freelocale. * new-malloc/Makefile (distibute): Add mtrace.awk. (dist-routines): Add mcheck and mtrace. (install-lib, non-lib.a): Define as libmcheck.a. * new-malloc/malloc.h: Add declaration of __malloc_initialized. * new-malloc/mcheck.c: New file. * new-malloc/mcheck.h: New file. * new-malloc/mtrace.c: New file. * new-malloc/mtrace.awk: New file. * posix/unistd.h: Correct prototype for usleep. * sysdeps/unix/bsd/usleep.c: De-ANSI-declfy. Correct return type. * sysdeps/unix/sysv/linux/usleep.c: Real implementation based on nanosleep. * signal/signal.h: Change protoype of __sigpause to take two arguments. Remove prototype for sigpause. Add two different macros named sigpause selected when __USE_BSD or __USE_XOPEN are defined. This is necessary since the old BSD definition of theis function collides with the X/Open definition. * sysdeps/posix/sigpause.c: Change function definition to also fit X/Open definition. * sysdeps/libm-i387/e_exp.S: Make sure stack is empty when the function is left. * sysdeps/libm-i387/e_expl.S: Likewise. Patch by HJ Lu. 1996-12-17 Paul Eggert <eggert@twinsun.com> * many, many files: Spelling corrections. * catgets/catgetsinfo.h (mmapped): Renamed from mmaped (in struct catalog_info.status). * mach/err_kern.sub (err_codes_unix), string/stratcliff.c (main): Fix spelling in message. * po/libc.pot: Fix spelling in message for `zic'; this anticipates a fix in the tzcode distribution. Wed Dec 18 15:48:02 1996 Ulrich Drepper <drepper@cygnus.com> * time/strftime.c: Implement ^ flag to cause output be converted to use upper case characters. * time/zic.c: Update from ADO tzcode1996n. Wed Dec 18 14:29:24 1996 Erik Naggum <erik@naggum.no> * time/strftime.c (add): Don't change global `i' until all is over. Define NULL is not already defined. Tue Dec 17 09:49:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/iovsprintf.c (_IO_vsprintf): Change `&sf' to `&sf._sbf._f' to avoid the need for a cast. * libio/iovsscanf.c (_IO_vsscanf): Likewise. * sunrpc/rpc/xdr.h: Add prototype for xdr_free.
1996-12-18update from main archive 961217cvs/libc-961219cvs/libc-961218Ulrich Drepper1-1/+1
Wed Dec 18 03:31:58 1996 Ulrich Drepper <drepper@cygnus.com> * dirent/scandir.c: Undo change from Mon Dec 2 15:32:15 1996. The stream is private and usages outside glibc don't care about reentrancy. * io/fts.c: Likewise. * io/ftw.c: Likewise. * sysdeps/posix/getcwd.c: Likewise. * sysdeps/posix/ttyname.c: Likewise. * sysdeps/posix/ttyname_r.c: Likewise. * sysdeps/posix/glob.c: Likewise. * libio/iovsprintf.c: Add cast to prevent warning. * libio/iovsscanf.c: Likewise. * libio/libioP.h: Define mmap to __mmap and munmap to __munmap to keep namespace clean. * new-malloc/malloc.c: Update to last version from Wolfram Gloger. Add hooks and check functions from old GNU malloc. * new-malloc/malloc.h: Likewise. * nis/ypclnt.c: Remove prototype for xdr_free. * snrpc/rpc/xdr.h: Add prototype for xdr_free. * manual/nss.texi: Correct description of default values and don't meantion NSS as an add-on. * nss/grp-lookup.c: Provide default value as "compat [NOTFOUND=return] files". * nss/pwd-lookup.c: Likewise. * nss/spwd-lookup.c: Likewise. * nss/network-lookup.c: Correct default to "dns [!UNAVAIL=return] files". * nss/nsswitch.c: Change default-default value to "nis [NOTFOUND=return] files" since compat is only available for group, passwd, and shadow. * stdlib/on_exit.c (on_exit): Rename to __on_exit and make old name a weak alias. * stdlib/stdlib.h: Add prototype for __on_exit. * sysdeps/unix/sysv/linux/schedbits.h: Add prototype for __clone. * time/Makefile: Undo change from Sun Dec 8 06:56:49 1996. The new malloc now has mcheck. * time/ap.c: Likewise. * time/tzset.c (__tzset): Rename to __tzset_internal. (tzset): Rename to __tzset. Make tzset a weak alias for __tzset. * time/localtime.c: Use __tzset_internal not __tzset. * time/strftime.c [_LIBC]: Define tzname as __tzname and tzset as __tzset to prevent namespace pollution. * wctype/iswctype.h (icwctype): Rename to __iswctype. Make iswctype a weak alias of __iswctype. * wctype/wctype.h: Add prototype for __iswctype. (iswalnum, iswalpha, iswcntrl, iswdigit, iswlower, iswgraph, iswprint, iswpunct, iswspace, iswupper, iswxdigit, iswblank): Use __iswctype for the test, not iswctype. 1996-12-16 Paul Eggert <eggert@twinsun.com> * hurd/hurd/sigpreempt.h (struct hurd_signal_preemptor.preemptor, _hurdsig_preemptors), hurd/hurd/signal.h (struct hurd_sigstate.preemptors), hurd/hurdfault.c, hurd/hurdfault.h (_hurdsig_fault_preemptor), hurd/hurdsig.c (_hurdsig_preempters): Renamed to fix spelling from `preempter' to `preemptor'. All uses changed. 1996-12-15 Paul Eggert <eggert@twinsun.com> * ctime.c (ctime): Return asctime (localtime (t)), as the C standard requires. Tue Dec 17 02:05:48 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * sysdeps/mach/libc-lock.h (__libc_lock_trylock): Invert return value because Mach/cthreads uses the opposite convention from Posix/glibc. Mon Dec 16 22:41:01 1996 Ulrich Drepper <drepper@cygnus.com> * stdio-common/fcloseall.c: Correct test of already_called. Reported by Thomas Bushnell, n/BSG. Mon Dec 16 14:52:07 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * mach/lock-intern.h (__mutex_try_lock): New function. Sun Dec 15 16:33:44 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * termios/sys/ttydefaults.h (TTYDEF_OFLAG): Only use OXTABS if defined, else XTABS. (CEOL, CSTATUS): Use _POSIX_VDISABLE if defined. Sun Dec 15 11:56:19 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/m68k/mremap.S: New file. * sysdeps/unix/sysv/linux/m68k/Dist: Distribute it. * sysdeps/unix/sysv/linux/m68k/Makefile (sysdep_routines): Add mremap.
1996-12-15update from main archive 961214cvs/libc-961215Ulrich Drepper1-0/+3
Sun Dec 15 01:53:20 1996 Ulrich Drepper <drepper@cygnus.com> * Makefile (subdirs): Change crypt to md5-crypt. * crypt/Makefile, crypt/md5-crypt.c, crypt/md5.c, crypt/md5.h, crypt/md5c-test.c, crypt/md5test.c: Move to new directory md5-crypt. * sysdeps/unix/sysv/linux/configure.in: Refer to linuxthreads and crypt instead of LinuxThreads and des-crypt. * Makefile (subdirs): Add nss back. * sysdeps/unix/inet/Subdirs: Move nis to end of file to fulfill dependencies. * libio/iofclose.c: Implement fclose(NULL) as closing all streams. * stdio-common/Makefile (routines): Add fcloseall. * stdio-common/fcloseall.c: New file. * sysdeps/generic/abort.c: Make implementation POSIX.1 compatible. * sysdeps/mach/libc-lock.h: Add definition of __libc_lock_trylock. * sysdeps/stub/libc-lock.h: Define __libc_lock_trylock to always return 0. * stdio-common/printf.h: Define MIN and MAX only if not already defined. * stdio-common/vfprintf.c: Set errno to EBADF if stream does not allow writing. Required by POSIX.1. * libio/libioP.h (CHECK_FILE): Use MAYBE_SET_EINVAL instead of assignment. * interp.c: Update copyright. * libio/clearerr.c: Likewise. * libio/ioseekoff.c: Likewise. * libio/ioseekpos.c: Likewise. * stdio/fclose.c: Likewise. * stdio/fflus.c: Likewise. * libio/libio.h [!_IO_MTSAFE_IO]: Define _IO_cleanup_region_start and _IO_cleanup_region_end as empty. * libio/fgetc.c: Use _IO_cleanup_region_start and _IO_cleanup_region_end instead of __libc_cleanup_region_start and __libc_cleanup_region_end. * libio/fputc.c: Likewise. * libio/freopen.c: Likewise. * libio/fseek.c: Likewise. * libio/getc.c: Likewise. * libio/getchar.c: Likewise. * libio/iofclose.c: Likewise. * libio/iofflush.c: Likewise. * libio/iofgetpos.c: Likewise. * libio/iofgets.c: Likewise. * libio/iofputs.c: Likewise. * libio/iofread.c: Likewise. * libio/iofsetpos.c: Likewise. * libio/ioftell.c: Likewise. * libio/iofwrite.c: Likewise. * libio/iogetdelim.c: Likewise. * libio/iogets.c: Likewise. * libio/ioputs.c: Likewise. * libio/iosetbuffer.c: Likewise. * libio/iosetvbuf.c: Likewise. * libio/ioungetc.c: Likewise. * libio/iovspintf.c: Use cleanup handler to make sure no dangling locks can stay over. * libio/iovsscanf.c: Likewise. * libio/genops.c: Use _IO_lock_init_recursive and _IO_lock_fini instead of __libc_lock_init_recursive and __libc_lock_fini. * libio/filedoalloc.c: Only use __isatty when compiling GNU libc. Otherwise use isatty. * libio/fileops.c: Likewise for __open and open. * login/utmp_file.c (getutent_r_file): Use fcntl instead of flock. * nis/ypclnt.h: Add more casts to prevent warnings. * nss/Makefile (services): Remove dns. (libnss_dns, libnss_dns-inhibit-o): Remove definition. ($(objpfx)libnss_dns.so): Removed. * nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Moved to... * resolv/nss_dns: ...here. * resolv/Makefile (extra-libs): Add libnss_dns. (libnss_dns-routines, libnss_dns-inhibit-o): Define as in nss/Makefile. * nss/XXX-lookup.c: Call __nss_database_lookup with new argument specifying alternate name for entry in /etc/nsswitch.conf * nss/nsswitch.c: If no entry with primary name is found in /etc/nsswitch.conf try alternate name if given. * nss/nsswitch.h: Add new parameter in prototype for __nss_database_lookup. * nss/spwd-lookup.c: Provide alternative entry name to look for. This makes our NSS compatible with Solaris' nsswitch.conf files. * string/tst-strlen.c: Change all counting variables to type size_t to prevent warnings. * sysdeps/posix/fpathconf.c: Update copyright. * sysdeps/posix/pathconf.c: Don't call fpathconf to do the work. Opening the file at this path may fail if it is a FIFO or pipe. These changes make the time implementation POSIX.1 compliant. * time/localtime.c (__localtime_r): Always call __tzset not only if __tzset_run is zero. * time/strftime.c: Add definition of memset_space to help to reduce for systems which have memset. (strftime): Don't use tm_zone member of argument for zone name. Instead always use tzname[]. Call tzset() as required by POSIX.1 before any action. * time/tzset.c (tzset): Set tzname[] as required by POSIX.1. Remove global variable __tzset_run. __tzset is now called always when a dependent function is used. (__tzset): Caching happens based on the contents of the environment variable TZ. Fri Dec 13 01:06:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/paths.h: Add _PATH_KLOG. Thu Dec 12 09:16:35 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * rellns-sh: Correctly handle a relative source file name. Wed Dec 11 19:18:40 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * login/utmp_file.c (setutent_file): Seek back to beginning of the file if resetting. Thu Dec 12 16:39:12 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * hurd/hurdinit.c (map0): Delete function. Don't do this on _hurd_preinit_hook. * hurd/hurdstartup.c (_hurd_startup): Map page zero redzone here.
1996-12-08update from main archive 961207cvs/libc-961208Ulrich Drepper1-1/+1
Sun Dec 8 06:56:49 1996 Ulrich Drepper <drepper@cygnus.com> * io/getwd.c: Use PATH_MAX not LOCAL_PATH_MAX. Fix typo in comment. * stdlib/canonicalize.c: Correct bugs in last change. Patch by HJ Lu. * libio/Makefile (routines): Remove ioprims. (aux): Remove cleanup. Add IO_DEBUG option for .o files. * libio/cleanups.c: Removed. * libio/ioprims.c: Removed. * libio/filedoalloc.c: More updates from libg++-2.8b5. * libio/fileops.c: Likewise. * libio/genops.c: Likewise. * libio/iolibio.h: Likewise. * libio/iopopen.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * libio/libio.h: Likewise. * libio/libioP.h: Likewise. * libio/memstream.c: Likewise. * libio/strfile.h: Likewise. * libio/vasprintf.c: Likewise. * libio/vsnprintf.c: Likewise. * libio/stdio.h: Define P_tmpdir only is __USE_SVID. * manual/arith.texi: Change references to ANSI C to ISO C. * manual/conf.texi: Likewise. * manual/creature.texi: Likewise. * manual/ctype.texi: Likewise. * manual/errno.texi: Likewise. * manual/filesys.texi: Likewise. * manual/intro.texi. Likewise. * manual/io.texi: Likewise. * manual/lang.texi: Likewise. * manual/libc.texinfo: Likewise. * manual/locale.texi: Likewise. * manual/maint.texi: Likewise. * manual/mbyte.texi: Likewise. * manual/memory.texi: Likewise. * manual/process.texi: Likewise. * manual/process.texi: Likewise. * manual/search.texi: Likewise. * manual/setjmp.texi: Likewise. * manual/signal.texi: Likewise. * manual/startup.texi: Likewise. * manual/stdio.texi: Likewise. * manual/string.texi: Likewise. * manual/time.texi: Likewise. * manual/locale.texi: Remove description of LC_RESPONSE and add LC_MESSAGES. * Makefile (subdirs): Change malloc in $(malloc). * config.make.in: Add variable malloc which is initialized from @malloc@. * configure.in: Add new option --enable-new-malloc to use new malloc. This is the default on Linux. * sysdeps/unix/sysv/linux/configure.in: Define malloc to new-malloc by default. * new-malloc/Makefile: New file. Improved malloc implementation. * new-malloc/malloc.c: Likewise. * new-malloc/malloc.h: Likewise. * new-malloc/mallocbug.c: Likewise. * new-malloc/obstack.c: Likewise. * new-malloc/obstack.h: Likewise. * new-malloc/thread-m.h: Likewise. * time/Makefile: Compile ap.c with NO_MCHECK flag for now. * time/ap.c: Don't call mcheck if NO_MCHECK is defined. * resolv/Makefile: Add rule to rebuiild libresolv.so when libc.so changed. * stdio/feof.c: Update copyright. * stdio/stdio.h: Add field for lock to FILE structure. Add cast to *MAGIC constants to prevent warnings. * stdio-common/bug7.c: Correct test. Stream must not be closed twice. * stdlib/Makefile (routines): Add secure-getenv. * stdlib/secure-getenv.c: New file. __secure_getenv function moved to here from sysdeps/generic/getenv.c. Otherwise an application cannot replace the getenv function in the libc. * sysdeps/generic/getenv.c: Remove __secure_getenv function. * sysdeps/stub/getenv.c: Remove __secure_getenv alias. * sysdeps/mach/libc-lock.h: Define__libc_mutex_lock to __mutex_lock. * sysdeps/posix/fdopen.c: Update copyright. Don't use EXFUN. * time/test-tz.c: Comment fifth test out. PROBLEM. * time/tzset.c: De-ANSI-declfy. (__tzset): Don't increment pointer tz when no DST information is given. Sat Dec 7 23:47:54 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/mach/libc-lock.h [_LIBC]: Add definition of __libc_mutex_lock. Patch by Thomas Bushnell. * sysdeps/unix/sysv/linux/timebits.h: Load <asm/param.h> only if __USE_MISC. * sysdeps/unix/sysv/linux/Dist: Add llseek.c. Sat Dec 7 12:18:56 1996 Ulrich Drepper <drepper@cygnus.com> * time/strftime (%c format): Remove %Z from default string. Reported by Paul Eggert * io/getwd.c: Don't apply getcwd on user supplied buffer.
1996-09-07update from main archive 960907Ulrich Drepper1-0/+4
Sat Sep 7 14:00:33 1996 David Mosberger-Tang <davidm@azstarnet.com> * catgets/catgets.c (catopen): Allocate sizeof(*result) bytes instead of sizeof(nl_catd) (which is just a pointer!). Sat Sep 7 19:39:19 1996 Ulrich Drepper <drepper@cygnus.com> * Makefile ($(objpfx)version-info.h): Generate from Banner files. * version.c (banner): Add contents of version-info.h to string. * Makerules: If $($(subdir)-version) is available name versioned shared library according to this value instead of glibc's version. * libio/Banner: New file. * elf/eval.c (funcall): Write error message in case function is not found. (eval): Recognize `_' in names.
1996-09-07update from main archive 960906cvs/libc-960907Ulrich Drepper1-0/+3
Sat Sep 7 05:15:45 1996 Ulrich Drepper <drepper@cygnus.com> * libio/iofdopen: Initialize _lock field only if _IO_MTSAFE_IO. * libio/iofopen: Likewise. * libio/iofopncook.c: Likewise. * libio/iopopen.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * libio/memstream.c: Likewise. * libio/vasprintf.c: Likewise. * libio/vdprintf.c: Likewise. * libio/vsnprintf.c: Likewise. Sat Sep 7 03:55:47 1996 Ulrich Drepper <drepper@cygnus.com> * Makeconfig (soversions.mk): Also use shlib-versions files in add-on directories. * config.make.in (config-defines): Remove. Not used anymore. (defines): New variable. Initiliazed by @DEFINES@. * configure.in: Add AC_SUBST(DEFINES). * libio/Makefile (routines): When compiling reentrant libc add clearerr_u, feof_u, ferror_u, fputc_u, getc_u, getchar_u, iofflush_u, putc_u, putchar_u, ioflockfile. (CPPFLAGS): Add -D_IO_MTSAFE_IO for reentrant libc. * sysdeps/stub/libc-lock.h: Add stubs for __libc_cleanup_region_start and __libc_cleanup_region_end. * sysdeps/unix/i386/sysdep.S [_LIBC_REENTRANT]: Set errno using __errno_location function. * sysdeps/unix/sysv/linux/i386/sysdep.S [_LIBC_REENTRANT]: Set errno using __errno_location function. (__errno_location): New function. * sysdeps/unix/sysv/linux/i386/sysdep.h [PIC]: Add second syscall_error handler for reentrant libc. * sysdeps/unix/opendir.c: Remove unneeded `;'. * libio.h [_IO_MTSAFE_IO]: Include <pthread.h>. [!_IO_MTSAFE_IO]: Define _IO_flockfile and _IO_funlockfile as empty macros. * libioP.h: Include <libc-lock.h>. * libio/stdio.h: Add prototypes for *_locked and *_unlocked functions. * libio/clearerr.c: Use _IO_ protected versions of flockfile and funlockfile to be namespace clean. * libio/genops.c: Use __libc_lock_* macros for handling lock. * libio/iofdopen: Add initialization of _lock in _IO_FILE. * libio/iofopen: Likewise. * libio/iofopncook.c: Likewise. * libio/iopopen.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * libio/memstream.c: Likewise. * libio/vasprintf.c: Likewise. * libio/vdprintf.c: Likewise. * libio/vsnprintf.c: Likewise. * libio/fgetc.c: Use __libc_cleanup_region_* macros instead of flockfile etc. * libio/fputc.c: Likewise. * libio/freopen.c: Likewise. * libio/fseek.c: Likewise. * libio/getc.c: Likewise. * libio/getchar.c: Likewise. * libio/iofclose.c: Likewise. * libio/iofflush.c: Likewise. * libio/iofgetpos.c: Likewise. * libio/iofgets.c: Likewise. * libio/iofputs.c: Likewise. * libio/iofread.c: Likewise. * libio/iofsetpos.c: Likewise. * libio/ioftell.c: Likewise. * libio/iofwrite.c: Likewise. * libio/iogetdelim.c: Likewise. * libio/iogets.c: Likewise. * libio/ioputs.c: Likewise. * libio/iosetbuffer.c: Likewise. * libio/iosetvbuf.c: Likewise. * libio/ioungetc.c: Likewise. * libio/putc.c: Likewise. * libio/putchar.c: Likewise. * libio/rewind.c: Likewise. * stdio-common/vfprintf.c: Likewise. * stdio-common/vfscanf.c: Likewise. * libio/clearerr_u.c: Correct alias name. * libio/ferror_u.c: Likewise. * libio/fileno.c: Likewise. * libio/fputc_u.c: Likewise. * libio/getc.c: Likewise. * libio/getc_u.c: Likewise. * libio/getchar.c: Likewise. * libio/getchar_u.c: Likewise. * libio/putc.c: Likewise. * libio/putchar.c: Likewise. * libio/feof_u.c: Undefine macro with name of function before definition of function itself. * libio/ioflockfile.c: New file. Implementation of flockfile and funlockfile. * libio/putchar_u.c: Fix typo. Use stdout instead of fp. * malloc/malloc.h: Don't include <libc-lock.h> and don't declare _malloc_loc. * malloc/free.c: Include <libc-lock.h>. * malloc/realloc.c: Likewise. * malloc/malloc-find.c: Likewise. * malloc/malloc-size.c: Likewise. * malloc/malloc-walk.c: Likewise. * malloc/memalign.c: Likewise. * malloc/malloc.c: Likewise. * sysdeps/i386/dl-machine.h: Correct clearing of _dl_starting_up. Fri Sep 6 19:38:49 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/stub/libc-lock.h: Define __libc_lock_critical_start and __libc_lock_critical_end as empty macros. * malloc/malloc.h: Don't include <libc-lock.h> and don't declare __libc_malloc_lock. * malloc/free.c: Include <libc-lock.h>. * malloc/malloc-find.c: Likewise. * malloc/malloc-size.c: Likewise. * malloc/malloc-walk.c: Likewise. * malloc/malloc.c: Likewise. * malloc/memalign.c: Likewise. * malloc/realloc.c: Likewise. * Makefile: Undo change from Mon Sep 2 22:15:14 1996. No more extra_solibs pass. * Rules: Likewise. * extra-lib.mk: Likewise. * manual/Makefile: Likewise. * db/Makefile (makedb): Choose dependecies based on build-shared. Patch by Andres Schwab. * sysdeps/posix/sysconf.c: Don't use PTHREAD_DESTRUCTOR_ITERATIONS but _POSIX_THREAD_DESTRUCTOR_ITERATIONS. * sysdeps/unix/sysv/linux/errnos.h: New file. * sysdeps/unix/sysv/linux/schedbits.h: New file. * sysdeps/unix/sysv/linux/waitflags.h: New file. * sysdeps/unix/sysv/linux/gnu/types.h: Add definition of `key_t'. Fri Sep 6 08:26:31 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * rpm/template: Fix typo in %build section. Fri Sep 6 03:31:07 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/errnos.h: Don't define errno macro when building libc without thread support. * resolv/netdb.h: Likewise for h_errno macro. Thu Sep 5 23:01:48 1996 Ulrich Drepper <drepper@cygnus.com> * libc-symbols.h: Add new macro weak_const_function. It's like weak_function, but the function is additionally marked as const. * features.h: Only include <sys/cdefs.h> if !__ASSEMBLER__. Thu Sep 5 22:55:49 1996 Richard Henderson <rth@tamu.edu> * inet/herrno.c (__h_errno_location): New function. (h_errno): Make strong_alias __h_errno so that we can access the variable even if `h_errno' is a macro. * resolv/netdb.h: Define macro h_errno to access thread specific version of h_errno variable. Declare alias __h_errno for h_errno. * resolv/res_query (h_errno): Remove definition. * sysdeps/unix/sysv/linux/errnos.h [!__ASSEMBLER__ && __USE_REENTRANT]: Add macro `errno' to get thread specific variable. * sysdeps/unix/alpha/sysdep.S [_LIBC_REENTRANT]: Set errno using __errno_location function. (__errno_location): New function. Thu Sep 5 21:08:44 1996 Ulrich Drepper <drepper@cygnus.com> * posix/gnu/types.h: Remove definition of key_t. * sysdeps/generic/gnu/types.h: Move it to here. * sysdeps/unix/sysv/linux/gnu/types.h: Add Linux specific definition of key_t. * sysdeps/unix/sysv/linux/waitflags.h: New file. Linux specific definitions. * sysdeps/unix/sysv/linux/schedbits.h: New file. Include clone prototypes and associated flags. Thu Sep 5 08:58:47 1996 Richard Henderson <rth@tamu.edu> * sysdeps/alpha/elf/start.S: Make _start global again. hertz. here. Wed Sep 4 16:16:13 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/mach/hurd/send.c (__send): De-ANSI-fy. * sysdeps/mach/hurd/sendto.c (sendto): Likewise.
1996-05-09Wed May 8 20:04:29 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>Roland McGrath1-1/+1
* Rules (subdir_install): Depend on $(common-objpfx)sor-$(subdir). [! libc.so-version]: Clear static-only-routines. ($(common-objpfx)sor-$(subdir)): New target. [static-only-routines]: New static pattern rule for these .so's. * Makerules [libc.so-version] ($(slibdir)/libc.so): Target removed. [libc.so-version] ($(libdir)/libc.so, $(common-objpfx)libc-syms.so): New targets replace it. (install) [libc.so-version]: Depend on $(libdir)/libc.so instead of $(slibdir)/libc.so. * io/Makefile (static-only-routines): New variable. * configure.in: Check for tools objdump and objcopy, and for awk. * config.make.in (OBJDUMP, OBJCOPY, AWK): New variables. Thu May 9 01:24:00 1996 Ulrich Drepper <drepper@cygnus.com> * locale/programs/config.h: Remove definition of wint_t. * locale/programs/ld-collate.c: Include <wchar.h> instead of <wcstr.h>. * manual/time.texi: Add some more description for %U and %W format of strftime. Describe new format %V of strftime. * resolv/gethnamaddr.c: Prevent warning by preventing variable definition. * stdio-common/_itoa.c: Ditto. Tue May 7 23:43:07 1996 Ulrich Drepper <drepper@cygnus.com> * libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c, libio/fileno.c, libio/fputc.c, libio/freopen.c, libio/fseek.c, libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c, libio/iofputs.c, libio/iofread.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c, libio/iogets.c, libio/ioputs.c, libio/iosetbuffer.c, libio/iosetvbuf.c, libio/ioungetc.c, libio/iovsprintf.c, libio/libio.h, libio/putc.c, libio/putchar.c, libio/rewind.c, libio/stdio.h, stdio-common/printf_fp.c, stdio-common/vfprintf.c, stdio-common/vfscanf.c: Prepare for reentrent libio. * libio/clearerr_u.c, libio/feof_u.c, libio/ferror_u.c, libio/fputc_u.c, libio/getc_u.c, libio/getchar_u.c, libio/iofflush_u.c, libio/putc_u.c, libio/putchar_u.c: New files. Used in reentrent libio. * misc/getusershell.c: Prevent warnings.
1995-11-20Sat Nov 18 16:46:01 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>Roland McGrath1-0/+44
* libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c, libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c, libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c, libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c, libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c, libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h, libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c, libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c, libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c, libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c, libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c, libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h, libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c: New files. Slightly modified version from Linux libc. * libio/memstream.c, libio/vdprintf.c: New files for functions not (yet) part of GNU libio. * libio/iofopncook.c: Implementation of `fopencookie', mainly written by Per Bothner. * stdio-common/getline.c: Adapted to libio. * stdio-common/snprintf.c: Adapted to libio. * stdio-common/vfprintf.c: Adapted to libio. * stdio-common/vfscanf.c: Adapted to libio. * sysdeps/posix/tempname.c: Adapted to libio.