From 79202f2e976577d975f270d60db53881bf7ff6ac Mon Sep 17 00:00:00 2001 From: bdavis Date: Mon, 14 Jun 2004 17:27:20 +0000 Subject: [PATCH] 2004-06-14 Bud Davis PR gfortran/15292 * intrinsics/c99_functions.c: Use fpclassify if it exists. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83116 138bc75d-0d04-0410-961f-82ee72b054a4 --- libgfortran/ChangeLog | 5 +++++ libgfortran/intrinsics/c99_functions.c | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 05024399d54..f0e7d8d7483 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,8 @@ +2004-06-14 Bud Davis + + PR gfortran/15292 + * intrinsics/c99_functions.c: Use fpclassify if it exists. + 2004-06-13 Paul Brook * Makefile.am (gfor_helper_src): Add runtime/normalize.f90. diff --git a/libgfortran/intrinsics/c99_functions.c b/libgfortran/intrinsics/c99_functions.c index 932838780b8..69b6c3e2e96 100644 --- a/libgfortran/intrinsics/c99_functions.c +++ b/libgfortran/intrinsics/c99_functions.c @@ -24,6 +24,8 @@ Boston, MA 02111-1307, USA. */ #include "libgfortran.h" +/* Note that if HAVE_FPCLASSIFY is not defined, then NaN is not handled */ + /* Algorithm by Steven G. Kargl. */ #ifndef HAVE_ROUND @@ -34,11 +36,12 @@ double round(double x) { double t; +#ifdef HAVE_FPCLASSIFY int i; - i = fpclassify(x); if (i == FP_INFINITE || i == FP_NAN) return (x); +#endif if (x >= 0.0) { @@ -65,11 +68,13 @@ float roundf(float x) { float t; +#ifdef HAVE_FPCLASSIFY int i; i = fpclassify(x); if (i == FP_INFINITE || i == FP_NAN) return (x); +#endif if (x >= 0.0) { -- 2.11.0