fix: replace TODO placeholders in next-solver IrPrint with proper formatting#21779
Open
Albab-Hasan wants to merge 2 commits intorust-lang:masterfrom
Open
fix: replace TODO placeholders in next-solver IrPrint with proper formatting#21779Albab-Hasan wants to merge 2 commits intorust-lang:masterfrom
Albab-Hasan wants to merge 2 commits intorust-lang:masterfrom
Conversation
seven IrPrint::print_debug implementations in the next-solver were placeholder stubs that returned "TODO: <typename>" instead of meaningful output. these are called via the Display impl (and Debug for PatternKind) of these types, so any solver trace log containing them was unreadable. implemented proper formatting for each: - TraitPredicate -> "T: Trait" / "!T: Trait" - HostEffectPredicate -> "const T: Trait" / "[const] T: Trait" - NormalizesTo -> "AliasTerm(...) -> Term" - SubtypePredicate -> "A <: B" - CoercePredicate -> "A -> B" - FnSig -> "fn([inputs]) -> output" - PatternKind -> "start..=end" / "or([...])" / "!null" also removed the now-unused type_name_of_val import.
ChayimFriedman2
requested changes
Mar 7, 2026
| t: &ty::CoercePredicate<Self>, | ||
| fmt: &mut std::fmt::Formatter<'_>, | ||
| ) -> std::fmt::Result { | ||
| fmt.write_str(&format!("TODO: {:?}", type_name_of_val(t))) |
Contributor
There was a problem hiding this comment.
This prints the same as NormalizesTo, so I think it's better to qualify both, e.g. something like CoercePredicate({:?} -> {:?}).
Contributor
Author
|
@ChayimFriedman2 done |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
seven
IrPrint::print_debugimplementations in the next-solver were placeholder stubs that returned "TODO: " instead of meaningful output. these are called via the Display impl (and Debug for PatternKind) of these types so any solver trace log containing them was unreadable.implemented proper formatting for each:
also removed the unused
type_name_of_valimport.