# HG changeset patch # User Bruno Haible # Date 1173152333 0 # Node ID e6c6a9a180a51897d5a159aa6957dc06e351d9ac # Parent 72f47158c69445e5456d8f8bfd01bd6660b4e009 Provide missing frexpl(), ldexpl() declarations. diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-03-05 Bruno Haible + + * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether + frexpl and ldexpl are declared. + * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations. + 2007-03-05 Bruno Haible * gnulib-tool (func_get_automake_snippet): Don't synthesize an diff --git a/lib/printf-frexp.c b/lib/printf-frexp.c --- a/lib/printf-frexp.c +++ b/lib/printf-frexp.c @@ -41,6 +41,14 @@ # define USE_FREXP_LDEXP # define FREXP frexpl # define LDEXP ldexpl + /* glibc (2.3..2.5 at least) and MacOS X 10.3 have frexpl and ldexpl in + libc, but don't declare them. */ +# if !HAVE_DECL_FREXPL +extern long double frexpl (long double, int *); +# endif +# if !HAVE_DECL_LDEXPL +extern long double ldexpl (long double, int); +# endif # endif # define L_(literal) literal##L # else diff --git a/m4/printf-frexpl.m4 b/m4/printf-frexpl.m4 --- a/m4/printf-frexpl.m4 +++ b/m4/printf-frexpl.m4 @@ -1,4 +1,4 @@ -# printf-frexpl.m4 serial 1 +# printf-frexpl.m4 serial 2 dnl Copyright (C) 2007 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -23,6 +23,9 @@ if test $gl_cv_func_frexpl_no_libm = yes; then AC_DEFINE([HAVE_FREXPL_IN_LIBC], 1, [Define if the frexpl function is available in libc.]) + dnl Also check whether it's declared. glibc (2.3..2.5 at least) and + dnl MacOS X 10.3 have frexpl() in libc but don't declare it in . + AC_CHECK_DECLS([frexpl]) fi AC_CACHE_CHECK([whether ldexpl can be used without linking with libm], @@ -38,6 +41,9 @@ if test $gl_cv_func_ldexpl_no_libm = yes; then AC_DEFINE([HAVE_LDEXPL_IN_LIBC], 1, [Define if the ldexpl function is available in libc.]) + dnl Also check whether it's declared. glibc (2.3..2.5 at least) and + dnl MacOS X 10.3 have ldexpl() in libc but don't declare it in . + AC_CHECK_DECLS([ldexpl]) fi fi ])