diff options
author | Harald Anlauf <anlauf@gmx.de> | 2023-01-24 21:39:43 +0100 |
---|---|---|
committer | Harald Anlauf <anlauf@gmx.de> | 2023-02-05 19:52:10 +0100 |
commit | b66a0f2fecb4dc1ac5960ff5d630ab8f672b4106 (patch) | |
tree | 96bec11763a452aadca620a227777935c5323a30 /gcc/fortran | |
parent | b523b58690c84b04cc9695d2d652611beb6f28ca (diff) | |
download | gcc-b66a0f2fecb4dc1ac5960ff5d630ab8f672b4106.zip gcc-b66a0f2fecb4dc1ac5960ff5d630ab8f672b4106.tar.gz gcc-b66a0f2fecb4dc1ac5960ff5d630ab8f672b4106.tar.bz2 |
Fortran: ICE in transformational_result [PR108529]
gcc/fortran/ChangeLog:
PR fortran/108529
* simplify.c (simplify_transformation): Do not try to simplify
transformational intrinsic when the ARRAY argument has a NULL shape.
gcc/testsuite/ChangeLog:
PR fortran/108529
* gfortran.dg/pr108529.f90: New test.
(cherry picked from commit 6c96382eed96a9285611f2e3e2e59557094172b8)
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/simplify.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c index c1db865..fe4fee8 100644 --- a/gcc/fortran/simplify.c +++ b/gcc/fortran/simplify.c @@ -676,6 +676,7 @@ simplify_transformation (gfc_expr *array, gfc_expr *dim, gfc_expr *mask, size_zero = gfc_is_size_zero_array (array); if (!(is_constant_array_expr (array) || size_zero) + || array->shape == NULL || !gfc_is_constant_expr (dim)) return NULL; |