bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Fix memleak in getdelim.m4


From: Bruno Haible
Subject: Re: Fix memleak in getdelim.m4
Date: Sat, 23 May 2020 22:47:12 +0200
User-agent: KMail/5.1.3 (Linux/4.4.0-177-generic; KDE/5.18.0; x86_64; ; )

Tim Rühsen wrote:
> - clang-10 with unset CFLAGS (*.clang-10)
> 
> And the same set with -fsanitize... (*.sanitize).

The other differences between the configure results without and with sanitizers
can be explained by the fact that these -fsanitize options have the effect that
the resulting executables are linked with
  - libpthread,
  - librt
  - libm
  - libdl
by default.

Consequences of linking with libpthread:

-ac_cv_func_pthread_sigmask=${ac_cv_func_pthread_sigmask=no}
+ac_cv_func_pthread_sigmask=${ac_cv_func_pthread_sigmask=yes}
-ac_cv_func_thrd_create=${ac_cv_func_thrd_create=no}
+ac_cv_func_thrd_create=${ac_cv_func_thrd_create=yes}
-ac_cv_lib_stdthreads_thrd_create=${ac_cv_lib_stdthreads_thrd_create=no}
+ac_cv_lib_pthread_pthread_kill=${ac_cv_lib_pthread_pthread_kill=yes}
-gl_cv_func_pthread_sigmask_in_LIBMULTITHREAD=${gl_cv_func_pthread_sigmask_in_LIBMULTITHREAD=yes}
+gl_cv_func_pthread_sigmask_in_libc_works=${gl_cv_func_pthread_sigmask_in_libc_works=yes}

Consequences of linking with librt:

-ac_cv_search_timer_settime=${ac_cv_search_timer_settime=-lrt}
+ac_cv_search_timer_settime=${ac_cv_search_timer_settime='none required'}

Consequences of linking with libm:

-gl_cv_func_acosl_in_libm=${gl_cv_func_acosl_in_libm=yes}
-gl_cv_func_acosl_no_libm=${gl_cv_func_acosl_no_libm=no}
-gl_cv_func_asinl_in_libm=${gl_cv_func_asinl_in_libm=yes}
-gl_cv_func_asinl_no_libm=${gl_cv_func_asinl_no_libm=no}
-gl_cv_func_atanl_in_libm=${gl_cv_func_atanl_in_libm=yes}
-gl_cv_func_atanl_no_libm=${gl_cv_func_atanl_no_libm=no}
+gl_cv_func_acosl_no_libm=${gl_cv_func_acosl_no_libm=yes}
+gl_cv_func_asinl_no_libm=${gl_cv_func_asinl_no_libm=yes}
+gl_cv_func_atanl_no_libm=${gl_cv_func_atanl_no_libm=yes}
-gl_cv_func_ceil_libm=${gl_cv_func_ceil_libm=-lm}
+gl_cv_func_ceil_libm=${gl_cv_func_ceil_libm=}
-gl_cv_func_ceilf_libm=${gl_cv_func_ceilf_libm=-lm}
+gl_cv_func_ceilf_libm=${gl_cv_func_ceilf_libm=}
-gl_cv_func_ceill_libm=${gl_cv_func_ceill_libm=-lm}
+gl_cv_func_ceill_libm=${gl_cv_func_ceill_libm=}
-gl_cv_func_cosl_in_libm=${gl_cv_func_cosl_in_libm=yes}
-gl_cv_func_cosl_no_libm=${gl_cv_func_cosl_no_libm=no}
+gl_cv_func_cosl_no_libm=${gl_cv_func_cosl_no_libm=yes}
-gl_cv_func_exp2_in_libm=${gl_cv_func_exp2_in_libm=yes}
-gl_cv_func_exp2_no_libm=${gl_cv_func_exp2_no_libm=no}
+gl_cv_func_exp2_no_libm=${gl_cv_func_exp2_no_libm=yes}
-gl_cv_func_expl_in_libm=${gl_cv_func_expl_in_libm=yes}
-gl_cv_func_expl_no_libm=${gl_cv_func_expl_no_libm=no}
+gl_cv_func_expl_no_libm=${gl_cv_func_expl_no_libm=yes}
-gl_cv_func_expm1_in_libm=${gl_cv_func_expm1_in_libm=yes}
-gl_cv_func_expm1_no_libm=${gl_cv_func_expm1_no_libm=no}
+gl_cv_func_expm1_no_libm=${gl_cv_func_expm1_no_libm=yes}
-gl_cv_func_expm1l_in_libm=${gl_cv_func_expm1l_in_libm=yes}
-gl_cv_func_expm1l_no_libm=${gl_cv_func_expm1l_no_libm=no}
+gl_cv_func_expm1l_no_libm=${gl_cv_func_expm1l_no_libm=yes}
-gl_cv_func_fabs_in_libm=${gl_cv_func_fabs_in_libm=yes}
-gl_cv_func_fabs_no_libm=${gl_cv_func_fabs_no_libm=no}
-gl_cv_func_fabsf_in_libm=${gl_cv_func_fabsf_in_libm=yes}
-gl_cv_func_fabsf_no_libm=${gl_cv_func_fabsf_no_libm=no}
-gl_cv_func_fabsl_in_libm=${gl_cv_func_fabsl_in_libm=yes}
-gl_cv_func_fabsl_no_libm=${gl_cv_func_fabsl_no_libm=no}
+gl_cv_func_fabs_no_libm=${gl_cv_func_fabs_no_libm=yes}
+gl_cv_func_fabsf_no_libm=${gl_cv_func_fabsf_no_libm=yes}
+gl_cv_func_fabsl_no_libm=${gl_cv_func_fabsl_no_libm=yes}
-gl_cv_func_fegetround_in_libm=${gl_cv_func_fegetround_in_libm=yes}
-gl_cv_func_fegetround_no_libm=${gl_cv_func_fegetround_no_libm=no}
+gl_cv_func_fegetround_no_libm=${gl_cv_func_fegetround_no_libm=yes}
-gl_cv_func_floor_libm=${gl_cv_func_floor_libm=-lm}
+gl_cv_func_floor_libm=${gl_cv_func_floor_libm=}
-gl_cv_func_floorf_libm=${gl_cv_func_floorf_libm=-lm}
-gl_cv_func_floorl_libm=${gl_cv_func_floorl_libm=-lm}
-gl_cv_func_fma_in_libm=${gl_cv_func_fma_in_libm=yes}
-gl_cv_func_fma_no_libm=${gl_cv_func_fma_no_libm=no}
+gl_cv_func_floorf_libm=${gl_cv_func_floorf_libm=}
+gl_cv_func_floorl_libm=${gl_cv_func_floorl_libm=}
+gl_cv_func_fma_no_libm=${gl_cv_func_fma_no_libm=yes}
-gl_cv_func_fmaf_in_libm=${gl_cv_func_fmaf_in_libm=yes}
-gl_cv_func_fmaf_no_libm=${gl_cv_func_fmaf_no_libm=no}
+gl_cv_func_fmaf_no_libm=${gl_cv_func_fmaf_no_libm=yes}
-gl_cv_func_fmal_in_libm=${gl_cv_func_fmal_in_libm=yes}
-gl_cv_func_fmal_no_libm=${gl_cv_func_fmal_no_libm=no}
+gl_cv_func_fmal_no_libm=${gl_cv_func_fmal_no_libm=yes}
-gl_cv_func_ilogb_in_libm=${gl_cv_func_ilogb_in_libm=yes}
-gl_cv_func_ilogb_no_libm=${gl_cv_func_ilogb_no_libm=no}
+gl_cv_func_ilogb_no_libm=${gl_cv_func_ilogb_no_libm=yes}
-gl_cv_func_ilogbf_in_libm=${gl_cv_func_ilogbf_in_libm=yes}
-gl_cv_func_ilogbf_no_libm=${gl_cv_func_ilogbf_no_libm=no}
+gl_cv_func_ilogbf_no_libm=${gl_cv_func_ilogbf_no_libm=yes}
-gl_cv_func_logbf_in_libm=${gl_cv_func_logbf_in_libm=yes}
-gl_cv_func_logbf_no_libm=${gl_cv_func_logbf_no_libm=no}
+gl_cv_func_logbf_no_libm=${gl_cv_func_logbf_no_libm=yes}
-gl_cv_func_logbl_in_libm=${gl_cv_func_logbl_in_libm=yes}
-gl_cv_func_logbl_no_libm=${gl_cv_func_logbl_no_libm=no}
+gl_cv_func_logbl_no_libm=${gl_cv_func_logbl_no_libm=yes}
-gl_cv_func_logl_in_libm=${gl_cv_func_logl_in_libm=yes}
-gl_cv_func_logl_no_libm=${gl_cv_func_logl_no_libm=no}
+gl_cv_func_logl_no_libm=${gl_cv_func_logl_no_libm=yes}
-gl_cv_func_pow_in_libm=${gl_cv_func_pow_in_libm=yes}
-gl_cv_func_pow_no_libm=${gl_cv_func_pow_no_libm=no}
+gl_cv_func_pow_no_libm=${gl_cv_func_pow_no_libm=yes}
-gl_cv_func_printf_enomem=${gl_cv_func_printf_enomem=yes}
+gl_cv_func_printf_enomem=${gl_cv_func_printf_enomem=no}
-gl_cv_func_sinl_in_libm=${gl_cv_func_sinl_in_libm=yes}
-gl_cv_func_sinl_no_libm=${gl_cv_func_sinl_no_libm=no}
+gl_cv_func_sinl_no_libm=${gl_cv_func_sinl_no_libm=yes}
-gl_cv_func_sqrtl_in_libm=${gl_cv_func_sqrtl_in_libm=yes}
-gl_cv_func_sqrtl_no_libm=${gl_cv_func_sqrtl_no_libm=no}
+gl_cv_func_sqrtl_no_libm=${gl_cv_func_sqrtl_no_libm=yes}
-gl_cv_func_tanl_in_libm=${gl_cv_func_tanl_in_libm=yes}
-gl_cv_func_tanl_no_libm=${gl_cv_func_tanl_no_libm=no}
+gl_cv_func_tanl_no_libm=${gl_cv_func_tanl_no_libm=yes}

Consequences of a failed gl_PRINTF_ENOMEM test:

-gl_cv_func_dprintf_posix=${gl_cv_func_dprintf_posix=yes}
+gl_cv_func_dprintf_posix=${gl_cv_func_dprintf_posix=no}
-gl_cv_func_fprintf_posix=${gl_cv_func_fprintf_posix=yes}
+gl_cv_func_fprintf_posix=${gl_cv_func_fprintf_posix=no}
-gl_cv_func_obstack_printf_posix=${gl_cv_func_obstack_printf_posix=yes}
+gl_cv_func_obstack_printf_posix=${gl_cv_func_obstack_printf_posix=no}
-gl_cv_func_snprintf_posix=${gl_cv_func_snprintf_posix=yes}
+gl_cv_func_snprintf_posix=${gl_cv_func_snprintf_posix=no}
-gl_cv_func_sprintf_posix=${gl_cv_func_sprintf_posix=yes}
+gl_cv_func_sprintf_posix=${gl_cv_func_sprintf_posix=no}
-gl_cv_func_vasprintf_posix=${gl_cv_func_vasprintf_posix=yes}
-gl_cv_func_vdprintf_posix=${gl_cv_func_vdprintf_posix=yes}
-gl_cv_func_vfprintf_posix=${gl_cv_func_vfprintf_posix=yes}
-gl_cv_func_vsnprintf_posix=${gl_cv_func_vsnprintf_posix=yes}
+gl_cv_func_vasprintf_posix=${gl_cv_func_vasprintf_posix=no}
+gl_cv_func_vdprintf_posix=${gl_cv_func_vdprintf_posix=no}
+gl_cv_func_vfprintf_posix=${gl_cv_func_vfprintf_posix=no}
+gl_cv_func_vsnprintf_posix=${gl_cv_func_vsnprintf_posix=no}
-gl_cv_func_vsprintf_posix=${gl_cv_func_vsprintf_posix=yes}
+gl_cv_func_vsprintf_posix=${gl_cv_func_vsprintf_posix=no}

So, all in all, it's more harmless that it looked at first sight. But
it showed 9 bugs in gnulib, which are now all fixed.

Bruno




reply via email to

[Prev in Thread] Current Thread [Next in Thread]