diff options
| author | Caio <c410.f3r@gmail.com> | 2021-09-15 14:03:27 -0300 |
|---|---|---|
| committer | Caio <c410.f3r@gmail.com> | 2021-09-15 14:03:27 -0300 |
| commit | 1b0186e9ecdaa6fd00f1beea7d877b5a4fbd762d (patch) | |
| tree | b7ee76eff04de2e2b50d74c71a7c87bc0c6f4f36 /src/test/ui/closures | |
| parent | 8c2b6ea37d7719a0370bd404030eef9702c1752c (diff) | |
Move some tests to more reasonable directories
Diffstat (limited to 'src/test/ui/closures')
| -rw-r--r-- | src/test/ui/closures/issue-78720.rs | 19 | ||||
| -rw-r--r-- | src/test/ui/closures/issue-78720.stderr | 55 |
2 files changed, 74 insertions, 0 deletions
diff --git a/src/test/ui/closures/issue-78720.rs b/src/test/ui/closures/issue-78720.rs new file mode 100644 index 00000000000..4cdb9f49113 --- /dev/null +++ b/src/test/ui/closures/issue-78720.rs @@ -0,0 +1,19 @@ +fn server() -> impl { +//~^ ERROR at least one trait must be specified + ().map2(|| "") +} + +trait FilterBase2 { + fn map2<F>(self, f: F) -> Map2<F> {} + //~^ ERROR mismatched types + //~^^ ERROR the size for values of type `Self` cannot be known at compilation time +} + +struct Map2<Segment2> { + _func: F, + //~^ ERROR cannot find type `F` in this scope +} + +impl<F> FilterBase2 for F {} + +fn main() {} diff --git a/src/test/ui/closures/issue-78720.stderr b/src/test/ui/closures/issue-78720.stderr new file mode 100644 index 00000000000..3dd13877298 --- /dev/null +++ b/src/test/ui/closures/issue-78720.stderr @@ -0,0 +1,55 @@ +error: at least one trait must be specified + --> $DIR/issue-78720.rs:1:16 + | +LL | fn server() -> impl { + | ^^^^ + +error[E0412]: cannot find type `F` in this scope + --> $DIR/issue-78720.rs:13:12 + | +LL | _func: F, + | ^ + | + ::: $SRC_DIR/core/src/ops/function.rs:LL:COL + | +LL | pub trait Fn<Args>: FnMut<Args> { + | ------------------------------- similarly named trait `Fn` defined here + | +help: a trait with a similar name exists + | +LL | _func: Fn, + | ~~ +help: you might be missing a type parameter + | +LL | struct Map2<Segment2, F> { + | +++ + +error[E0308]: mismatched types + --> $DIR/issue-78720.rs:7:39 + | +LL | fn map2<F>(self, f: F) -> Map2<F> {} + | ^^ expected struct `Map2`, found `()` + | + = note: expected struct `Map2<F>` + found unit type `()` + +error[E0277]: the size for values of type `Self` cannot be known at compilation time + --> $DIR/issue-78720.rs:7:16 + | +LL | fn map2<F>(self, f: F) -> Map2<F> {} + | ^^^^ doesn't have a size known at compile-time + | + = help: unsized fn params are gated as an unstable feature +help: consider further restricting `Self` + | +LL | fn map2<F>(self, f: F) -> Map2<F> where Self: Sized {} + | +++++++++++++++++ +help: function arguments must have a statically known size, borrowed types always have a known size + | +LL | fn map2<F>(&self, f: F) -> Map2<F> {} + | + + +error: aborting due to 4 previous errors + +Some errors have detailed explanations: E0277, E0308, E0412. +For more information about an error, try `rustc --explain E0277`. |
