https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87625
--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> --- gfc_is_reallocatable_lhs() is not working: /* An allocatable class variable with no reference. */ if (sym->ts.type == BT_CLASS && !sym->attr.associate_var && CLASS_DATA (sym)->attr.allocatable && expr->ref && expr->ref->type == REF_COMPONENT && strcmp (expr->ref->u.c.component->name, "_data") == 0 && expr->ref->next == NULL) return true; And we have: (gdb) p expr1->ts.u.derived->components->attr.allocatable $19 = 1 (gdb) p *expr1->ref $23 = {type = REF_ARRAY, u = {ar = {type = AR_FULL, dimen = 1, .... next = 0x0}