From b1c49a118fe66e5798afe337b193b70e9c994108 Mon Sep 17 00:00:00 2001
From: steven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Tue, 1 Feb 2005 09:06:22 +0000
Subject: [PATCH] 2005-02-01  Paul Thomas <paulthomas2@wanadoo.fr>

	PR libgfortran/19363
	PR libgfortran/19691
	* libgfortran.h (isfinite): Work around broken isfinite(x) in Cygwin.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94530 138bc75d-0d04-0410-961f-82ee72b054a4
---
 libgfortran/ChangeLog     | 6 ++++++
 libgfortran/libgfortran.h | 9 +++++++--
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index d0aabea76815..e932ed1bf55d 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,9 @@
+2005-02-01  Paul Thomas <paulthomas2@wanadoo.fr>
+
+	PR libgfortran/19363
+	PR libgfortran/19691
+	* libgfortran.h (isfinite): Work around broken isfinite(x) in Cygwin.
+
 2005-01-30  Bud Davis  <bdavis@gfortran.org>
 
 	PR fortran/19647
diff --git a/libgfortran/libgfortran.h b/libgfortran/libgfortran.h
index dfa2e409f4b6..7dd6993809f0 100644
--- a/libgfortran/libgfortran.h
+++ b/libgfortran/libgfortran.h
@@ -171,9 +171,14 @@ typedef off_t gfc_offset;
 
 /* The isfinite macro is only available with C99, but some non-C99
    systems still provide fpclassify, and there is a `finite' function
-   in BSD.  When isfinite is not available, try to use one of the
+   in BSD.
+
+   Also, isfinite is broken on Cygwin.
+
+   When isfinite is not available, try to use one of the
    alternatives, or bail out.  */
-#if !defined(isfinite)
+#if (!defined(isfinite) || defined(__CYGWIN__))
+#undef isfinite
 static inline int
 isfinite (double x)
 {
-- 
GitLab