From cb31c4bcc5e8ef33ba4364453f02f3e1ddb557e9 Mon Sep 17 00:00:00 2001 From: Francois-Xavier Coudert Date: Wed, 12 Mar 2008 10:24:29 +0000 Subject: [PATCH] re PR libfortran/35524 (Unconditional use of expl() in libgfortran) PR libfortran/35524 * intrinsics/erfc_scaled_inc.c: Only define the long double variant of erfc_scaled if expl is available. From-SVN: r133138 --- libgfortran/ChangeLog | 6 ++++++ libgfortran/intrinsics/erfc_scaled_inc.c | 18 ++++++++++++++++-- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 2ada2632c36..422475bd16e 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,9 @@ +2008-03-12 Francois-Xavier Coudert + + PR libfortran/35524 + * intrinsics/erfc_scaled_inc.c: Only define the long double + variant of erfc_scaled if expl is available. + 2008-03-11 Francois-Xavier Coudert PR libfortran/32812 diff --git a/libgfortran/intrinsics/erfc_scaled_inc.c b/libgfortran/intrinsics/erfc_scaled_inc.c index fab815584ca..cabdb34847b 100644 --- a/libgfortran/intrinsics/erfc_scaled_inc.c +++ b/libgfortran/intrinsics/erfc_scaled_inc.c @@ -35,16 +35,28 @@ Boston, MA 02110-1301, USA. */ #define KIND_SUFFIX(x,y) CONCAT(x,y) #if (KIND == 4) + # define EXP(x) expf(x) # define TRUNC(x) truncf(x) + #elif (KIND == 8) + # define EXP(x) exp(x) # define TRUNC(x) trunc(x) + #else -# define EXP(x) expl(x) -# define TRUNC(x) truncl(x) + +# ifdef HAVE_EXPL +# define EXP(x) expl(x) +# endif +# ifdef HAVE_TRUNCL +# define TRUNC(x) truncl(x) +# endif + #endif +#if defined(EXP) && defined(TRUNC) + extern TYPE KIND_SUFFIX(erfc_scaled_r,KIND) (TYPE); export_proto(KIND_SUFFIX(erfc_scaled_r,KIND)); @@ -167,6 +179,8 @@ finish: return res; } +#endif + #undef EXP #undef TRUNC -- 2.30.2