aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/simplify.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/fortran/simplify.c')
-rw-r--r--gcc/fortran/simplify.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c
index d675f2c..6a6b3fb 100644
--- a/gcc/fortran/simplify.c
+++ b/gcc/fortran/simplify.c
@@ -2109,6 +2109,9 @@ gfc_simplify_cshift (gfc_expr *array, gfc_expr *shift, gfc_expr *dim)
else
which = 0;
+ if (array->shape == NULL)
+ return NULL;
+
gfc_array_size (array, &size);
arraysize = mpz_get_ui (size);
mpz_clear (size);
@@ -8174,6 +8177,9 @@ gfc_simplify_transpose (gfc_expr *matrix)
gcc_assert (matrix->rank == 2);
+ if (matrix->shape == NULL)
+ return NULL;
+
result = gfc_get_array_expr (matrix->ts.type, matrix->ts.kind,
&matrix->where);
result->rank = 2;