Fortran: frontend passes do_subscript leaks gmp memory [PR97345]

gcc/fortran/ChangeLog:

	PR fortran/97345
	* frontend-passes.cc (do_subscript): Clear used gmp variables.
This commit is contained in:
Harald Anlauf 2023-01-10 22:41:17 +01:00
parent e9a39ad793
commit fec9fc1a17

View file

@ -2892,7 +2892,12 @@ do_subscript (gfc_expr **e)
cmp = mpz_cmp (do_end, do_start);
if ((sgn > 0 && cmp < 0) || (sgn < 0 && cmp > 0))
break;
{
mpz_clear (do_start);
mpz_clear (do_end);
mpz_clear (do_step);
break;
}
}
/* May have to correct the end value if the step does not equal
@ -2965,6 +2970,12 @@ do_subscript (gfc_expr **e)
mpz_clear (val);
}
}
if (have_do_start)
mpz_clear (do_start);
if (have_do_end)
mpz_clear (do_end);
mpz_clear (do_step);
}
}
}