rust/compiler/rustc_middle/src
Jacob Pratt 4cd157e6b9
Rollup merge of #133643 - lcnr:merge-candidates, r=compiler-errors
-Znext-solver: modify candidate preference rules

This implements the design proposed in the FCP in #132325 and matches the old solver behavior. I hope the inline comments are all sufficiently clear, I personally think this is a fairly clear improvement over the existing approach using `fn discard_impls_shadowed_by_env`. This fixes https://github.com/rust-lang/trait-system-refactor-initiative/issues/96.

This also fixes #133639 which encounters an ICE in negative coherence when evaluating the where-clause. Given the features required to trigger this ICE 🤷

r? ``@compiler-errors``
2024-12-18 21:38:08 -05:00
..
dep_graph Re-export more rustc_span::symbol things from rustc_span. 2024-12-18 13:38:53 +11:00
hir Re-export more rustc_span::symbol things from rustc_span. 2024-12-18 13:38:53 +11:00
hooks Move some code from Compiler::enter to GlobalCtxt::finish 2024-11-09 17:55:39 +00:00
infer Remove associated type based effects logic 2024-10-24 09:46:36 +00:00
middle Re-export more rustc_span::symbol things from rustc_span. 2024-12-18 13:38:53 +11:00
mir mir: require is_cleanup when creating BasicBlockData 2024-12-18 20:43:54 +08:00
query Re-export more rustc_span::symbol things from rustc_span. 2024-12-18 13:38:53 +11:00
thir Introduce default_field_values feature 2024-12-09 21:55:01 +00:00
traits Re-export more rustc_span::symbol things from rustc_span. 2024-12-18 13:38:53 +11:00
ty Rollup merge of #133643 - lcnr:merge-candidates, r=compiler-errors 2024-12-18 21:38:08 -05:00
util Re-export more rustc_span::symbol things from rustc_span. 2024-12-18 13:38:53 +11:00
arena.rs Re-export more rustc_span::symbol things from rustc_span. 2024-12-18 13:38:53 +11:00
error.rs Move some code from Compiler::enter to GlobalCtxt::finish 2024-11-09 17:55:39 +00:00
lib.rs move strict provenance lints to new feature gate, remove old feature gates 2024-10-21 15:22:17 +01:00
lint.rs Re-export more rustc_span::symbol things from rustc_span. 2024-12-18 13:38:53 +11:00
macros.rs Improve const traits diagnostics for new desugaring 2024-10-02 19:45:17 +08:00
metadata.rs Re-export more rustc_span::symbol things from rustc_span. 2024-12-18 13:38:53 +11:00
tests.rs Give an item related to issue 27438 a more meaningful name 2024-04-30 22:27:19 +02:00
thir.rs Introduce default_field_values feature 2024-12-09 21:55:01 +00:00
values.rs Rename ty_def_id so people will stop using it by accident 2024-12-13 16:36:38 +00:00