rust/compiler/rustc_trait_selection/src
Chris Denton aad59a30de
Rollup merge of #139091 - mejrs:format, r=compiler-errors
Rewrite on_unimplemented format string parser.

This PR rewrites the format string parser for `rustc_on_unimplemented` and `diagnostic::on_unimplemented`. I plan on moving this code (and more) into the new attribute parsing system soon and wanted to PR it separately.

This PR introduces some minor differences though:
- `rustc_on_unimplemented` on trait *implementations* is no longer checked/used - this is actually never used (outside of some tests) so I plan on removing it in the future.
- for `rustc_on_unimplemented`, it introduces the `{This}` argument in favor of `{ThisTraitname}` (to be removed later). It'll be easier to parse.
- for `rustc_on_unimplemented`, `Self` can now consistently be used as a filter, rather than just `_Self`. It used to not match correctly on for example `Self = "[{integer}]"`
- Some error messages now have better spans.

Fixes https://github.com/rust-lang/rust/issues/130627
2025-04-19 15:09:33 +00:00
..
error_reporting Rollup merge of #139091 - mejrs:format, r=compiler-errors 2025-04-19 15:09:33 +00:00
errors Move eager translation to a method on Diag 2025-04-16 21:38:59 -04:00
solve Fix replacing supertrait aliases in ReplaceProjectionWith 2025-04-16 20:05:55 +00:00
traits Auto merge of #139845 - Zalathar:rollup-u5u5y1v, r=Zalathar 2025-04-15 08:02:23 +00:00
errors.rs Move eager translation to a method on Diag 2025-04-16 21:38:59 -04:00
infer.rs Fix next solver handling of shallow trait impl check 2025-03-19 14:40:14 +00:00
lib.rs move check_opaque_type_parameter_valid 2025-04-03 11:13:10 +02:00
opaque_types.rs NonGenericOpaqueTypeParam::ty to arg 2025-04-11 15:18:30 +02:00
regions.rs Only use implied bounds hack if bevy, and use deeply normalize in implied bounds hack 2025-03-04 18:18:48 +00:00
solve.rs impossible obligations check fast path 2024-10-10 06:09:50 -04:00