diff options
| author | Oli Scherer <git-spam-no-reply9815368754983@oli-obk.de> | 2022-09-23 07:15:55 +0000 |
|---|---|---|
| committer | Oli Scherer <git-spam-no-reply9815368754983@oli-obk.de> | 2022-09-23 07:15:55 +0000 |
| commit | e9d219e97c9b87e928d131ac071fef96e906c464 (patch) | |
| tree | 0b5684fa5c6488653a0316bd5747439ca186890f | |
| parent | 90ec6f847fe54e751a045044dabb7e0d252981e3 (diff) | |
| download | rust-e9d219e97c9b87e928d131ac071fef96e906c464.tar.gz rust-e9d219e97c9b87e928d131ac071fef96e906c464.zip | |
Make the test actually show the problematic case
| -rw-r--r-- | src/test/ui/type-alias-impl-trait/implied_lifetime_wf_check.rs | 29 | ||||
| -rw-r--r-- | src/test/ui/type-alias-impl-trait/implied_lifetime_wf_check.stderr | 9 |
2 files changed, 19 insertions, 19 deletions
diff --git a/src/test/ui/type-alias-impl-trait/implied_lifetime_wf_check.rs b/src/test/ui/type-alias-impl-trait/implied_lifetime_wf_check.rs index a2063cf5e3e..b6a7264a529 100644 --- a/src/test/ui/type-alias-impl-trait/implied_lifetime_wf_check.rs +++ b/src/test/ui/type-alias-impl-trait/implied_lifetime_wf_check.rs @@ -1,18 +1,27 @@ -trait Mirror<'a> { - type Item; -} +#![feature(type_alias_impl_trait)] + +// known-bug: #99840 +// this should not compile +// check-pass + +type Alias = impl Sized; -impl<'a, T> Mirror<'a> for T { - type Item = T; +fn constrain() -> Alias { + 1i32 } -trait AnotherTrait { - type Blah; +trait HideIt { + type Assoc; } -impl<'a> AnotherTrait for <u32 as Mirror<'a>>::Item { - //~^ ERROR: the lifetime parameter `'a` is not constrained - type Blah = &'a u32; +impl HideIt for () { + type Assoc = Alias; } +pub trait Yay {} + +impl Yay for <() as HideIt>::Assoc {} +// impl Yay for i32 {} // this already errors +// impl Yay for u32 {} // this also already errors + fn main() {} diff --git a/src/test/ui/type-alias-impl-trait/implied_lifetime_wf_check.stderr b/src/test/ui/type-alias-impl-trait/implied_lifetime_wf_check.stderr deleted file mode 100644 index cadf2ce4a9d..00000000000 --- a/src/test/ui/type-alias-impl-trait/implied_lifetime_wf_check.stderr +++ /dev/null @@ -1,9 +0,0 @@ -error[E0207]: the lifetime parameter `'a` is not constrained by the impl trait, self type, or predicates - --> $DIR/implied_lifetime_wf_check.rs:13:6 - | -LL | impl<'a> AnotherTrait for <u32 as Mirror<'a>>::Item { - | ^^ unconstrained lifetime parameter - -error: aborting due to previous error - -For more information about this error, try `rustc --explain E0207`. |
