Rollup merge of #90303 - WaffleLapkin:regression_test_90164, r=JohnTitor

Add regression test for issue 90164

Closes #90164 (previously fixed by #90181)
This commit is contained in:
Matthias Krüger 2021-10-26 19:32:45 +02:00 committed by GitHub
commit 40d3819a3c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 31 additions and 0 deletions

View file

@ -0,0 +1,9 @@
fn copy<R: Unpin, W>(_: R, _: W) {}
fn f<T>(r: T) {
let w = ();
copy(r, w);
//~^ ERROR [E0277]
}
fn main() {}

View file

@ -0,0 +1,22 @@
error[E0277]: `T` cannot be unpinned
--> $DIR/issue-90164.rs:5:10
|
LL | copy(r, w);
| ---- ^ the trait `Unpin` is not implemented for `T`
| |
| required by a bound introduced by this call
|
= note: consider using `Box::pin`
note: required by a bound in `copy`
--> $DIR/issue-90164.rs:1:12
|
LL | fn copy<R: Unpin, W>(_: R, _: W) {}
| ^^^^^ required by this bound in `copy`
help: consider restricting type parameter `T`
|
LL | fn f<T: std::marker::Unpin>(r: T) {
| ++++++++++++++++++++
error: aborting due to previous error
For more information about this error, try `rustc --explain E0277`.