skip normalizing param env if it is already normalized

This commit is contained in:
Lukas Markeffsky 2024-09-19 15:56:24 +02:00
parent b0af276da3
commit 1999d065b7
1 changed files with 3 additions and 0 deletions

View File

@ -409,6 +409,9 @@ pub fn normalize_param_env_or_error<'tcx>(
debug!("normalize_param_env_or_error: elaborated-predicates={:?}", predicates);
let elaborated_env = ty::ParamEnv::new(tcx.mk_clauses(&predicates), unnormalized_env.reveal());
if !normalize::needs_normalization(&elaborated_env, unnormalized_env.reveal()) {
return elaborated_env;
}
// HACK: we are trying to normalize the param-env inside *itself*. The problem is that
// normalization expects its param-env to be already normalized, which means we have