re PR fortran/33609 (ICE on arithmetic overflow)
authorJerry DeLisle <jvdelisle@gcc.gnu.org>
Sat, 6 Oct 2007 23:44:48 +0000 (23:44 +0000)
committerJerry DeLisle <jvdelisle@gcc.gnu.org>
Sat, 6 Oct 2007 23:44:48 +0000 (23:44 +0000)
2007-10-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/33609
* simplify.c (range_check): Return gfc_bad_expr if incoming expression
is NULL.

From-SVN: r129059

gcc/fortran/ChangeLog
gcc/fortran/simplify.c

index f489db13571dd7a3d170ee6dfea5869e12cf70aa..9cc097c8b8c98d88de3bf2331272dcd9015b3582 100644 (file)
@@ -1,3 +1,9 @@
+2007-10-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33609
+       * simplify.c (range_check): Return gfc_bad_expr if incoming expression 
+       is NULL.
+
 2007-10-06  Tobias Schlüter  <tobi@gcc.gnu.org>
 
        * simplify.c (gfc_simplify_size): Fix typo.
index 4701f9e47f838b5056ab7ad145a662b8a479054c..c9885ddd90f243f1326a383eccd3132c8d33fc52 100644 (file)
@@ -70,6 +70,9 @@ gfc_expr gfc_bad_expr;
 static gfc_expr *
 range_check (gfc_expr *result, const char *name)
 {
+  if (result == NULL)
+    return &gfc_bad_expr;
+
   switch (gfc_range_check (result))
     {
       case ARITH_OK: