Auto merge of #15125 - lowr:patch/rustc_coinductive, r=Veykril

internal: support `#[rustc_coinductive]`

rust-lang/rust#100386 changed the trait solver so that `Sized` is treated as coinductive trait, just like auto traits. This is now controlled by the perma-unstable `#[rustc_coinductive]` attribute (rust-lang/rust#108033), which this PR adds support for.

In practice, I don't think this matters much if at all. Currently we don't give chalk enough information so chalk cannot precisely (dis)prove `Sized` bounds.
This commit is contained in:
bors 2023-06-28 10:13:31 +00:00
commit 021604431c
4 changed files with 45 additions and 8 deletions

View file

@ -63,6 +63,7 @@ pub mod marker {
#[lang = "sized"]
#[fundamental]
#[rustc_specialization_trait]
#[rustc_coinductive]
pub trait Sized {}
// endregion:sized