diff options
| author | Ali MJ Al-Nasrawy <alimjalnasrawy@gmail.com> | 2023-03-05 12:05:04 +0300 |
|---|---|---|
| committer | Ali MJ Al-Nasrawy <alimjalnasrawy@gmail.com> | 2023-03-05 12:49:01 +0300 |
| commit | eea560494c121bf93f725eb174fc03d34b0e96f1 (patch) | |
| tree | 63a9c6653a843a998756f03f384302ce3488a6c9 /tests/ui/traits/inductive-overflow/lifetime.rs | |
| parent | 79dca7b7ba7ac1c9292fadff197204169ae43630 (diff) | |
| download | rust-eea560494c121bf93f725eb174fc03d34b0e96f1.tar.gz rust-eea560494c121bf93f725eb174fc03d34b0e96f1.zip | |
oops! new unsoundness
Bless tests and show an introduced unsoundness related to
exits<'a> { forall<'b> { 'a == 'b } }.
We now resolve the var ?a in U0 to the placeholder !b in U1.
Diffstat (limited to 'tests/ui/traits/inductive-overflow/lifetime.rs')
| -rw-r--r-- | tests/ui/traits/inductive-overflow/lifetime.rs | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/tests/ui/traits/inductive-overflow/lifetime.rs b/tests/ui/traits/inductive-overflow/lifetime.rs index bf536d21cf9..2f3c90dcece 100644 --- a/tests/ui/traits/inductive-overflow/lifetime.rs +++ b/tests/ui/traits/inductive-overflow/lifetime.rs @@ -15,9 +15,9 @@ impl<'a> Y for C<'a> { struct C<'a>(&'a ()); struct X<T: Y>(T::P); -impl<T: NotAuto> NotAuto for Box<T> {} //~ NOTE: required +impl<T: NotAuto> NotAuto for Box<T> {} +impl<T: Y> NotAuto for X<T> where T::P: NotAuto {} //~ NOTE: required //~^ NOTE unsatisfied trait bound introduced here -impl<T: Y> NotAuto for X<T> where T::P: NotAuto {} impl<'a> NotAuto for C<'a> {} fn is_send<S: NotAuto>() {} @@ -28,6 +28,4 @@ fn main() { // Should only be a few notes. is_send::<X<C<'static>>>(); //~^ ERROR overflow evaluating - //~| 3 redundant requirements hidden - //~| required for } |
