Show env normalization differences under two solvers #148939
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
First step for param_env normalization future compat warning. zulip thread
I didn't put the check directly in
param_envquery becausenormalize_param_env_or_errorhas some adjustments on the predicates: elaboration and outlive predicates manipulation. I'd have to replicate these inparam_envto compare normalized predicates properly.The downside of putting the check inside
normalize_param_env_or_erroris that it's used in more thanparam_envquery. It's also used incompare_impl_itemand several other places. I'm not sure if this is desired.I didn't bless tests since the hard error will be changed to lint later.Blessed tests to demonstrate the changes.
And there's one test about const generics I don't know how to fix.
Canonicalizer for the next solver will replace
ParamConstwithPlaceholderConst, but it still uses the sametry_evaluate_constinternally andprocess_obligationdoesn't likePlaceholderConst.r? @lcnr