aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/simplify.c
diff options
context:
space:
mode:
authorThomas Koenig <tkoenig@gcc.gnu.org>2018-03-30 09:56:46 +0000
committerThomas Koenig <tkoenig@gcc.gnu.org>2018-03-30 09:56:46 +0000
commit1832cbf8905a5d24075fc7b2aad495ec0e05cbdf (patch)
tree9d6078e8de36849ab7fc144cb5f8f8ff09b58bed /gcc/fortran/simplify.c
parent06be18e782b9497ffda6523786a38f13f1412e36 (diff)
downloadgcc-1832cbf8905a5d24075fc7b2aad495ec0e05cbdf.zip
gcc-1832cbf8905a5d24075fc7b2aad495ec0e05cbdf.tar.gz
gcc-1832cbf8905a5d24075fc7b2aad495ec0e05cbdf.tar.bz2
re PR fortran/85111 (ICE in min_max_choose, at fortran/simplify.c:4884 (and others))
2017-03-30 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/85111 * array.c (gfc_resolve_character_array_constructor): Early exit for zero-size arrays. * simplify.c (simplify_transformation_to_array): Exit early if the result size is zero. (simplify_minmaxloc_to_array): Likewise. 2017-03-30 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/85111 * gfortran.dg/zero_sized_10.f90: New test. From-SVN: r258973
Diffstat (limited to 'gcc/fortran/simplify.c')
-rw-r--r--gcc/fortran/simplify.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c
index 44290ac..1829597 100644
--- a/gcc/fortran/simplify.c
+++ b/gcc/fortran/simplify.c
@@ -627,7 +627,7 @@ simplify_transformation_to_array (gfc_expr *result, gfc_expr *array, gfc_expr *d
n += 1;
}
- done = false;
+ done = resultsize <= 0;
base = arrayvec;
dest = resultvec;
while (!done)
@@ -5304,7 +5304,7 @@ simplify_minmaxloc_to_array (gfc_expr *result, gfc_expr *array,
n += 1;
}
- done = false;
+ done = resultsize <= 0;
base = arrayvec;
dest = resultvec;
while (!done)