The attached patch fixes an out of bound write to memory allocated
with alloca() on the stack. This rarely ever happened because on
one hand -fbounds-check needs to be enabled, and on the other hand
alloca() used to allocate a few bytes extra most of the time so
most of the time the excess write did no harm.
gcc/fortran/ChangeLog:
* trans-array.c (gfc_conv_array_ref): Fix allocation of diagnostic
message (was too small).
From-SVN: r238849
+2016-07-29 Dominik Vogt <vogt@linux.vnet.ibm.com>
+
+ * trans-array.c (gfc_conv_array_ref): Fix allocation of diagnostic
+ message (was too small).
+
2016-07-28 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/71067
if (ref->type == REF_ARRAY && &ref->u.ar == ar)
break;
if (ref->type == REF_COMPONENT)
- len += 1 + strlen (ref->u.c.component->name);
+ len += 2 + strlen (ref->u.c.component->name);
}
var_name = XALLOCAVEC (char, len);