From d136595df77f75bc6e5132e26f09cad031f38c71 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Thu, 24 Oct 2019 10:49:02 +0200 Subject: Fix another UBSAN in Fortran coarray. 2019-10-24 Martin Liska PR fortran/92174 * array.c (gfc_resolve_array_spec): Break the loop for out of bounds index. * resolve.c (is_non_constant_shape_array): Likewise. From-SVN: r277367 --- gcc/fortran/resolve.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gcc/fortran/resolve.c') diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index 93f2d0a..5deeb4f 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -12266,6 +12266,9 @@ is_non_constant_shape_array (gfc_symbol *sym) simplification now. */ for (i = 0; i < sym->as->rank + sym->as->corank; i++) { + if (i == GFC_MAX_DIMENSIONS) + break; + e = sym->as->lower[i]; if (e && (!resolve_index_expr(e) || !gfc_is_constant_expr (e))) -- cgit v1.1