aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/simplify.c
diff options
context:
space:
mode:
authorSteven G. Kargl <kargl@gcc.gnu.org>2016-09-04 18:43:40 +0000
committerSteven G. Kargl <kargl@gcc.gnu.org>2016-09-04 18:43:40 +0000
commite85921ee9fd4e526517ec121eff8e8ea04e78b8b (patch)
tree905ba230bea234f8d6d035397fc7433ae69d5798 /gcc/fortran/simplify.c
parent5961d13d279329211e2a2d2c294395d17e4c7fcb (diff)
downloadgcc-e85921ee9fd4e526517ec121eff8e8ea04e78b8b.zip
gcc-e85921ee9fd4e526517ec121eff8e8ea04e78b8b.tar.gz
gcc-e85921ee9fd4e526517ec121eff8e8ea04e78b8b.tar.bz2
re PR fortran/77460 (ICE when summing an overflowing array)
2016-09-04 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/77460 * simplify.c (simplify_transformation_to_scalar): On error, result may be NULL, simply return. 2016-09-04 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/77460 * gfortran.dg/pr77460.f90: New test. From-SVN: r239979
Diffstat (limited to 'gcc/fortran/simplify.c')
-rw-r--r--gcc/fortran/simplify.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c
index 6e6566d..c396653 100644
--- a/gcc/fortran/simplify.c
+++ b/gcc/fortran/simplify.c
@@ -489,6 +489,8 @@ simplify_transformation_to_scalar (gfc_expr *result, gfc_expr *array, gfc_expr *
}
result = op (result, gfc_copy_expr (a));
+ if (!result)
+ return result;
}
return result;