https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125998
--- Comment #7 from Harald Anlauf <anlauf at gcc dot gnu.org> ---
(In reply to Harald Anlauf from comment #6)
> (In reply to Harald Anlauf from comment #5)
> > Created attachment 64866 [details]
> > Untested fix
> >
> > gfc_is_not_contiguous should return true on TRANSPOSE (array).
>
> Works for me here.
Another part of the issue is that gfc_expr_is_variable has:
arg = gfc_get_noncopying_intrinsic_argument (expr);
if (arg)
{
gcc_assert (expr->value.function.isym->id == GFC_ISYM_TRANSPOSE);
return gfc_expr_is_variable (arg);
}
This seems to be your code, Mikael.
We could try to suppress this exception.