aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBud Davis <bdavis9659@comcast.net>2004-06-28 01:30:26 +0000
committerBud Davis <bdavis@gcc.gnu.org>2004-06-28 01:30:26 +0000
commit519b0e16cd642411cdcc18d3a317b0e475bb542b (patch)
tree0dab78a9c80385474b8b365a888d455495b35b1d
parente6d6c95a52fc55d925cf98c4baa659707a69eaba (diff)
downloadgcc-519b0e16cd642411cdcc18d3a317b0e475bb542b.zip
gcc-519b0e16cd642411cdcc18d3a317b0e475bb542b.tar.gz
gcc-519b0e16cd642411cdcc18d3a317b0e475bb542b.tar.bz2
re PR libfortran/12839 (incorrect IO of Inf)
2004-06-27 Bud Davis <bdavis9659@comcast.net> PR gfortran/12839 * io/write.c (write_float): check signbit for Infinity. From-SVN: r83757
-rw-r--r--libgfortran/ChangeLog5
-rw-r--r--libgfortran/io/write.c8
2 files changed, 9 insertions, 4 deletions
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index b1babff..65841f8 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,8 @@
+2004-06-27 Bud Davis <bdavis9659@comcast.net>
+
+ PR gfortran/12839
+ * io/write.c (write_float): check signbit for Infinity.
+
2004-06-26 Bud Davis <bdavis9659@comcast.net>
PR gfortran/16196
diff --git a/libgfortran/io/write.c b/libgfortran/io/write.c
index e4f597c..3602c1b 100644
--- a/libgfortran/io/write.c
+++ b/libgfortran/io/write.c
@@ -523,13 +523,13 @@ write_float (fnode *f, const char *source, int len)
}
memset(p, ' ', nb);
- res = isinf (n);
+ res = isinf (n);
if (res != 0)
{
- if (res > 0)
- fin = '+';
- else
+ if (signbit(n))
fin = '-';
+ else
+ fin = '+';
if (nb > 7)
memcpy(p + nb - 8, "Infinity", 8);