arith.c (gfc_range_check): correct complex underflow.
authorSteven G. Kargl <kargls@comcast.net>
Sun, 20 Jun 2004 18:34:25 +0000 (18:34 +0000)
committerTobias Schlüter <tobi@gcc.gnu.org>
Sun, 20 Jun 2004 18:34:25 +0000 (20:34 +0200)
2004-06-20  Steven G. Kargl  <kargls@comcast.net>

* arith.c (gfc_range_check): correct complex underflow.

From-SVN: r83417

gcc/fortran/ChangeLog
gcc/fortran/arith.c

index ef5d72bac394b3cfb50c47707ff0cbe433bc0db9..2348f28e0303031852c31b581cbbc11ce6a9989f 100644 (file)
@@ -1,3 +1,7 @@
+2004-06-20  Steven G. Kargl  <kargls@comcast.net>
+
+       * arith.c (gfc_range_check): correct complex underflow.
+
 2004-06-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
 
        PR fortran/15962
index 6b7b29a18ad581b41a7afb1cf4430071093895c6..b6aec5b951ddb4aa9c54078def2e2bfb263000c2 100644 (file)
@@ -1198,12 +1198,12 @@ gfc_range_check (gfc_expr * e)
     case BT_COMPLEX:
       rc = gfc_check_real_range (e->value.complex.r, e->ts.kind);
       if (rc == ARITH_UNDERFLOW)
-        mpf_set_ui (e->value.real, 0);
+        mpf_set_ui (e->value.complex.r, 0);
       if (rc == ARITH_OK || rc == ARITH_UNDERFLOW)
         {
           rc = gfc_check_real_range (e->value.complex.i, e->ts.kind);
           if (rc == ARITH_UNDERFLOW)
-            mpf_set_ui (e->value.real, 0);
+            mpf_set_ui (e->value.complex.i, 0);
         }
 
       break;