https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103898
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
In GCC 11.2.0, we had:
D.3972 = dim != 0B;
mysize = D.3972 ? (integer(kind=4)) _gfortran_size1 (D.3971,
(integer(kind=8)) *dim) : (integer(kind=4)) _gfortran_size0 (D.3971);
While on the trunk we have:
D.4255 = dim != 0B;
if (D.4255)
{
MAX_EXPR <(parm.4.dim[0].ubound - parm.4.dim[0].lbound) + 1, 0> =
MAX_EXPR <(parm.4.dim[(integer(kind=8)) *dim + -1].ubound -
parm.4.dim[(integer(kind=8)) *dim + -1].lbound) + 1, 0>;
}
mysize = (integer(kind=4)) MAX_EXPR <(parm.4.dim[0].ubound -
parm.4.dim[0].lbound) + 1, 0>;