rust/compiler/rustc_middle
Matthias Krüger 00c51bda3f
Rollup merge of #125510 - lcnr:change-proof-trees-to-be-shallow, r=compiler-errors
remove proof tree formatting, make em shallow

Debugging via tracing `RUSTC_LOG=rustc_trait_selection::solve=debug` is now imo slightly more readable then the actual proof tree formatter. Removing everything that's not needed for the `analyse` visitor allows us to remove a bunch of code.

I personally believe that we should continue to use tracing over proof trees for debugging:
- it eagerly prints, allowing us to debug ICEs
- the proof tree builder ends up going out of sync with the actual runtime behavior, which is confusing
- using shallow proof trees is a lot more performant as we frequently do not recurse into all nested goals when using an analyse visitor
- this allows us to clean up the implementation and remove some code

r? ```@compiler-errors```
2024-05-25 12:54:36 +02:00
..
src Rollup merge of #125510 - lcnr:change-proof-trees-to-be-shallow, r=compiler-errors 2024-05-25 12:54:36 +02:00
Cargo.toml Uplift GenericArgKind, CanonicalVarValues, QueryInput 2024-05-18 16:21:43 -04:00
README.md
messages.ftl Port DeprecatedMacro to diag structs 2024-05-21 20:16:39 +00:00

README.md

For more information about how rustc works, see the rustc dev guide.