diff options
author | Gabriel F. T. Gomes <gabriel@inconstante.eti.br> | 2018-08-08 09:58:36 -0300 |
---|---|---|
committer | Gabriel F. T. Gomes <gabriel@inconstante.eti.br> | 2019-03-01 15:24:51 -0300 |
commit | 90188e7d1adc5d8743d7933c9ed1bf95f91dda62 (patch) | |
tree | b95a92a1f310ed52f9340a905bf1da7835106a3d /sysdeps/unix/sysv/linux | |
parent | ldbl-opt: Reuse argp tests that print long double (diff) | |
download | glibc-90188e7d1adc5d8743d7933c9ed1bf95f91dda62.tar.gz glibc-90188e7d1adc5d8743d7933c9ed1bf95f91dda62.tar.bz2 glibc-90188e7d1adc5d8743d7933c9ed1bf95f91dda62.zip |
ldbl-opt: Add err, errx, verr, verrx, warn, warnx, vwarn, and vwarnx (bug 23984)
When support for long double format with 128-bits (-mlong-double-128)
was added for platforms where long double had the same format as double,
such as powerpc, compatibility versions for the functions listed in the
commit title were missed. Since the older format of long double can
still be used (with -mlong-double-64), using these functions with a
format string that requests the printing of long double variables will
produce wrong outputs.
This patch adds the missing compatibility functions and header magic to
redirect calls to them when -mlong-double-64 is in use.
Tested for powerpc, powerpc64 and powerpc64le.
Diffstat (limited to 'sysdeps/unix/sysv/linux')
8 files changed, 64 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist index 454a01dcc5..1b95af13bc 100644 --- a/sysdeps/unix/sysv/linux/alpha/libc.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist @@ -2206,6 +2206,14 @@ GLIBC_2.3.4 xdr_quad_t F GLIBC_2.3.4 xdr_u_quad_t F GLIBC_2.30 __nldbl_argp_error F GLIBC_2.30 __nldbl_argp_failure F +GLIBC_2.30 __nldbl_err F +GLIBC_2.30 __nldbl_errx F +GLIBC_2.30 __nldbl_verr F +GLIBC_2.30 __nldbl_verrx F +GLIBC_2.30 __nldbl_vwarn F +GLIBC_2.30 __nldbl_vwarnx F +GLIBC_2.30 __nldbl_warn F +GLIBC_2.30 __nldbl_warnx F GLIBC_2.30 gettid F GLIBC_2.4 _IO_fprintf F GLIBC_2.4 _IO_printf F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist index b689f20112..8973a44b56 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist @@ -2166,6 +2166,14 @@ GLIBC_2.3.4 xdr_quad_t F GLIBC_2.3.4 xdr_u_quad_t F GLIBC_2.30 __nldbl_argp_error F GLIBC_2.30 __nldbl_argp_failure F +GLIBC_2.30 __nldbl_err F +GLIBC_2.30 __nldbl_errx F +GLIBC_2.30 __nldbl_verr F +GLIBC_2.30 __nldbl_verrx F +GLIBC_2.30 __nldbl_vwarn F +GLIBC_2.30 __nldbl_vwarnx F +GLIBC_2.30 __nldbl_warn F +GLIBC_2.30 __nldbl_warnx F GLIBC_2.30 gettid F GLIBC_2.4 _IO_fprintf F GLIBC_2.4 _IO_printf F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist index 8b6d72abb6..c89ca3efaa 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist @@ -2199,6 +2199,14 @@ GLIBC_2.3.4 xdr_quad_t F GLIBC_2.3.4 xdr_u_quad_t F GLIBC_2.30 __nldbl_argp_error F GLIBC_2.30 __nldbl_argp_failure F +GLIBC_2.30 __nldbl_err F +GLIBC_2.30 __nldbl_errx F +GLIBC_2.30 __nldbl_verr F +GLIBC_2.30 __nldbl_verrx F +GLIBC_2.30 __nldbl_vwarn F +GLIBC_2.30 __nldbl_vwarnx F +GLIBC_2.30 __nldbl_warn F +GLIBC_2.30 __nldbl_warnx F GLIBC_2.30 gettid F GLIBC_2.4 _IO_fprintf F GLIBC_2.4 _IO_printf F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist index 2c14eae34c..1b0f108c19 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist @@ -2029,6 +2029,14 @@ GLIBC_2.3.4 xdr_quad_t F GLIBC_2.3.4 xdr_u_quad_t F GLIBC_2.30 __nldbl_argp_error F GLIBC_2.30 __nldbl_argp_failure F +GLIBC_2.30 __nldbl_err F +GLIBC_2.30 __nldbl_errx F +GLIBC_2.30 __nldbl_verr F +GLIBC_2.30 __nldbl_verrx F +GLIBC_2.30 __nldbl_vwarn F +GLIBC_2.30 __nldbl_vwarnx F +GLIBC_2.30 __nldbl_warn F +GLIBC_2.30 __nldbl_warnx F GLIBC_2.30 gettid F GLIBC_2.4 _IO_fprintf F GLIBC_2.4 _IO_printf F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist index 450d42736a..02504aeb58 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist @@ -2233,4 +2233,12 @@ GLIBC_2.29 posix_spawn_file_actions_addchdir_np F GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F GLIBC_2.30 __nldbl_argp_error F GLIBC_2.30 __nldbl_argp_failure F +GLIBC_2.30 __nldbl_err F +GLIBC_2.30 __nldbl_errx F +GLIBC_2.30 __nldbl_verr F +GLIBC_2.30 __nldbl_verrx F +GLIBC_2.30 __nldbl_vwarn F +GLIBC_2.30 __nldbl_vwarnx F +GLIBC_2.30 __nldbl_warn F +GLIBC_2.30 __nldbl_warnx F GLIBC_2.30 gettid F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist index 9e6184044c..c46f1119d4 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist @@ -2161,6 +2161,14 @@ GLIBC_2.3.4 xdr_quad_t F GLIBC_2.3.4 xdr_u_quad_t F GLIBC_2.30 __nldbl_argp_error F GLIBC_2.30 __nldbl_argp_failure F +GLIBC_2.30 __nldbl_err F +GLIBC_2.30 __nldbl_errx F +GLIBC_2.30 __nldbl_verr F +GLIBC_2.30 __nldbl_verrx F +GLIBC_2.30 __nldbl_vwarn F +GLIBC_2.30 __nldbl_vwarnx F +GLIBC_2.30 __nldbl_warn F +GLIBC_2.30 __nldbl_warnx F GLIBC_2.30 gettid F GLIBC_2.4 _IO_fprintf F GLIBC_2.4 _IO_printf F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist index 9a8a4b247e..47b0be5e50 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist @@ -2065,6 +2065,14 @@ GLIBC_2.3.4 xdr_quad_t F GLIBC_2.3.4 xdr_u_quad_t F GLIBC_2.30 __nldbl_argp_error F GLIBC_2.30 __nldbl_argp_failure F +GLIBC_2.30 __nldbl_err F +GLIBC_2.30 __nldbl_errx F +GLIBC_2.30 __nldbl_verr F +GLIBC_2.30 __nldbl_verrx F +GLIBC_2.30 __nldbl_vwarn F +GLIBC_2.30 __nldbl_vwarnx F +GLIBC_2.30 __nldbl_warn F +GLIBC_2.30 __nldbl_warnx F GLIBC_2.30 gettid F GLIBC_2.4 _IO_fprintf F GLIBC_2.4 _IO_printf F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist index e1d35a40aa..854708e37c 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist @@ -2155,6 +2155,14 @@ GLIBC_2.3.4 xdr_quad_t F GLIBC_2.3.4 xdr_u_quad_t F GLIBC_2.30 __nldbl_argp_error F GLIBC_2.30 __nldbl_argp_failure F +GLIBC_2.30 __nldbl_err F +GLIBC_2.30 __nldbl_errx F +GLIBC_2.30 __nldbl_verr F +GLIBC_2.30 __nldbl_verrx F +GLIBC_2.30 __nldbl_vwarn F +GLIBC_2.30 __nldbl_vwarnx F +GLIBC_2.30 __nldbl_warn F +GLIBC_2.30 __nldbl_warnx F GLIBC_2.30 gettid F GLIBC_2.4 _IO_fprintf F GLIBC_2.4 _IO_printf F |