about summary refs log tree commit diff
diff options
context:
space:
mode:
authorYuki Okushi <huyuumi.dev@gmail.com>2020-05-07 02:13:51 +0900
committerYuki Okushi <huyuumi.dev@gmail.com>2020-05-07 02:22:08 +0900
commitbe2d5535ead0dbd9d188f8f3e5d9bd4918b6153a (patch)
treea39da64b5a5915c4a1818f06c49a631d82a00b7a
parent96d4e0bab23e1c0874af07cf0afcf3cec7e1cd0f (diff)
downloadrust-be2d5535ead0dbd9d188f8f3e5d9bd4918b6153a.tar.gz
rust-be2d5535ead0dbd9d188f8f3e5d9bd4918b6153a.zip
Add test for #34979
-rw-r--r--src/test/ui/lifetimes/issue-34979.rs9
-rw-r--r--src/test/ui/lifetimes/issue-34979.stderr14
2 files changed, 23 insertions, 0 deletions
diff --git a/src/test/ui/lifetimes/issue-34979.rs b/src/test/ui/lifetimes/issue-34979.rs
new file mode 100644
index 00000000000..252486dd921
--- /dev/null
+++ b/src/test/ui/lifetimes/issue-34979.rs
@@ -0,0 +1,9 @@
+trait Foo {}
+impl<'a, T> Foo for &'a T {}
+
+struct Ctx<'a>(&'a ())
+where
+    &'a (): Foo, //~ ERROR: type annotations needed
+    &'static (): Foo;
+
+fn main() {}
diff --git a/src/test/ui/lifetimes/issue-34979.stderr b/src/test/ui/lifetimes/issue-34979.stderr
new file mode 100644
index 00000000000..04ad0d12766
--- /dev/null
+++ b/src/test/ui/lifetimes/issue-34979.stderr
@@ -0,0 +1,14 @@
+error[E0283]: type annotations needed
+  --> $DIR/issue-34979.rs:6:13
+   |
+LL | trait Foo {}
+   | --------- required by this bound in `Foo`
+...
+LL |     &'a (): Foo,
+   |             ^^^ cannot infer type for reference `&'a ()`
+   |
+   = note: cannot satisfy `&'a (): Foo`
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0283`.