rust/compiler/rustc_trait_selection/src
bors 63f6845e57 Auto merge of #144458 - compiler-errors:no-witness-mini, r=lcnr
Remove the witness type from coroutine *args* (without actually removing the type)

This does as much of rust-lang/rust#144157 as we can without having to break rust-lang/rust#143545 and/or introduce some better way of handling higher ranked assumptions.

Namely, it:
* Stalls coroutines based off of the *coroutine* type rather than the witness type.
* Reworks the dtorck constraint hack to not rely on the witness type.
* Removes the witness type from the args of the coroutine, eagerly creating the type for nested obligations when needed (auto/clone impls).

I'll experiment with actually removing the witness type in a follow-up.

r? lcnr
2025-08-01 21:07:49 +00:00
..
error_reporting remove rustc_attr_data_structures 2025-07-31 14:19:27 +02:00
errors Fix elided lifetimes in rustdoc 2025-07-04 18:26:09 +00:00
solve Auto merge of #144458 - compiler-errors:no-witness-mini, r=lcnr 2025-08-01 21:07:49 +00:00
traits Auto merge of #144458 - compiler-errors:no-witness-mini, r=lcnr 2025-08-01 21:07:49 +00:00
errors.rs parse const trait Trait 2025-07-17 18:06:26 +08:00
infer.rs Eagerly unify coroutine witness in old solver 2025-07-17 17:42:28 +00:00
lib.rs Remove all unused feature gates from the compiler 2025-06-08 14:50:42 +00:00
opaque_types.rs Rename unpack to kind 2025-05-27 11:14:45 +00:00
regions.rs Consider outlives assumptions when proving auto traits for coroutine interiors 2025-07-15 16:02:26 +00:00
solve.rs Eagerly unify coroutine witness in old solver 2025-07-17 17:42:28 +00:00