Fix transmute goal

This commit is contained in:
Michael Goulet
2024-09-27 14:24:31 -04:00
parent 38bbcc001e
commit 9453d2cfeb
9 changed files with 236 additions and 117 deletions

View File

@@ -627,11 +627,16 @@ where
}
ecx.probe_builtin_trait_candidate(BuiltinImplSource::Misc).enter(|ecx| {
let assume = ecx.structurally_normalize_const(
goal.param_env,
goal.predicate.trait_ref.args.const_at(2),
)?;
let certainty = ecx.is_transmutable(
goal.param_env,
goal.predicate.trait_ref.args.type_at(0),
goal.predicate.trait_ref.args.type_at(1),
goal.predicate.trait_ref.args.const_at(2),
assume,
)?;
ecx.evaluate_added_goals_and_make_canonical_response(certainty)
})