diff mbox series

Don't provide scalb/significand _FloatN aliases [BZ #31760]

Message ID 20240520165636.311074-1-hjl.tools@gmail.com
State New
Headers show
Series Don't provide scalb/significand _FloatN aliases [BZ #31760] | expand

Commit Message

H.J. Lu May 20, 2024, 4:56 p.m. UTC
scalb is a deprecated interface which was obsolescent in POSIX.1-2001,
removed in POSIX.1-2008, never made to C standard.  significant was
originally from BSD and never made in any standard.  Fix BZ #31760 by
not providing _FloatN aliases for them.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
---
 math/s_significand_template.c | 12 ++++++++++++
 math/w_scalb_template.c       | 12 ++++++++++++
 2 files changed, 24 insertions(+)

Comments

Adhemerval Zanella Netto May 22, 2024, 12:38 p.m. UTC | #1
On 20/05/24 13:56, H.J. Lu wrote:
> scalb is a deprecated interface which was obsolescent in POSIX.1-2001,
> removed in POSIX.1-2008, never made to C standard.  significant was
> originally from BSD and never made in any standard.  Fix BZ #31760 by
> not providing _FloatN aliases for them.
> 
> Signed-off-by: H.J. Lu <hjl.tools@gmail.com>

LGTM, thanks.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>

> ---
>  math/s_significand_template.c | 12 ++++++++++++
>  math/w_scalb_template.c       | 12 ++++++++++++
>  2 files changed, 24 insertions(+)
> 
> diff --git a/math/s_significand_template.c b/math/s_significand_template.c
> index a351390411..0c8a1c3d75 100644
> --- a/math/s_significand_template.c
> +++ b/math/s_significand_template.c
> @@ -30,4 +30,16 @@ M_DECL_FUNC (__significand) (FLOAT x)
>  {
>    return M_SUF (__ieee754_scalb) (x,(FLOAT) - M_SUF (__ilogb) (x));
>  }
> +
> +/* Don't provide _FloatN aliases for significand which was originally
> +   from BSD and never made in any standard.  */
> +#undef libm_alias_float_other_r
> +#define libm_alias_float_other_r(from, to, r)
> +#undef libm_alias_double_other_r
> +#define libm_alias_double_other_r(from, to, r)
> +#undef libm_alias_ldouble_other_r
> +#define libm_alias_ldouble_other_r(from, to, r)
> +#undef libm_alias_float128_other_r
> +#define libm_alias_float128_other_r(from, to, r)
> +
>  declare_mgen_alias (__significand, significand)
> diff --git a/math/w_scalb_template.c b/math/w_scalb_template.c
> index 2fd5ca1878..f9f98508e9 100644
> --- a/math/w_scalb_template.c
> +++ b/math/w_scalb_template.c
> @@ -52,6 +52,18 @@ FLOAT M_DECL_FUNC (__scalb) (FLOAT x, FLOAT fn)
>    return z;
>  }
>  
> +/* Don't provide _FloatN aliases for scalb which is a deprecated interface,
> +   was obsolescent in POSIX.1-2001, removed in POSIX.1-2008, never made to
> +   C standard.  */
> +#undef libm_alias_float_other_r
> +#define libm_alias_float_other_r(from, to, r)
> +#undef libm_alias_double_other_r
> +#define libm_alias_double_other_r(from, to, r)
> +#undef libm_alias_ldouble_other_r
> +#define libm_alias_ldouble_other_r(from, to, r)
> +#undef libm_alias_float128_other_r
> +#define libm_alias_float128_other_r(from, to, r)
> +
>  declare_mgen_alias (__scalb, scalb);
>  
>  #endif /* __USE_WRAPPER_TEMPLATE.  */
diff mbox series

Patch

diff --git a/math/s_significand_template.c b/math/s_significand_template.c
index a351390411..0c8a1c3d75 100644
--- a/math/s_significand_template.c
+++ b/math/s_significand_template.c
@@ -30,4 +30,16 @@  M_DECL_FUNC (__significand) (FLOAT x)
 {
   return M_SUF (__ieee754_scalb) (x,(FLOAT) - M_SUF (__ilogb) (x));
 }
+
+/* Don't provide _FloatN aliases for significand which was originally
+   from BSD and never made in any standard.  */
+#undef libm_alias_float_other_r
+#define libm_alias_float_other_r(from, to, r)
+#undef libm_alias_double_other_r
+#define libm_alias_double_other_r(from, to, r)
+#undef libm_alias_ldouble_other_r
+#define libm_alias_ldouble_other_r(from, to, r)
+#undef libm_alias_float128_other_r
+#define libm_alias_float128_other_r(from, to, r)
+
 declare_mgen_alias (__significand, significand)
diff --git a/math/w_scalb_template.c b/math/w_scalb_template.c
index 2fd5ca1878..f9f98508e9 100644
--- a/math/w_scalb_template.c
+++ b/math/w_scalb_template.c
@@ -52,6 +52,18 @@  FLOAT M_DECL_FUNC (__scalb) (FLOAT x, FLOAT fn)
   return z;
 }
 
+/* Don't provide _FloatN aliases for scalb which is a deprecated interface,
+   was obsolescent in POSIX.1-2001, removed in POSIX.1-2008, never made to
+   C standard.  */
+#undef libm_alias_float_other_r
+#define libm_alias_float_other_r(from, to, r)
+#undef libm_alias_double_other_r
+#define libm_alias_double_other_r(from, to, r)
+#undef libm_alias_ldouble_other_r
+#define libm_alias_ldouble_other_r(from, to, r)
+#undef libm_alias_float128_other_r
+#define libm_alias_float128_other_r(from, to, r)
+
 declare_mgen_alias (__scalb, scalb);
 
 #endif /* __USE_WRAPPER_TEMPLATE.  */