about summary refs log tree commit diff
path: root/tests/ui/unsized/issue-91803.stderr
blob: 037ec2ceaa54658e5ec658e22dcaa18439666c58 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
error[E0746]: return type cannot be a trait object without pointer indirection
  --> $DIR/issue-91803.rs:3:43
   |
LL | fn or<'a>(first: &'static dyn Foo<'a>) -> dyn Foo<'a> {
   |                                           ^^^^^^^^^^^ doesn't have a size known at compile-time
   |
help: consider returning an `impl Trait` instead of a `dyn Trait`
   |
LL - fn or<'a>(first: &'static dyn Foo<'a>) -> dyn Foo<'a> {
LL + fn or<'a>(first: &'static dyn Foo<'a>) -> impl Foo<'a> {
   |
help: alternatively, box the return type, and wrap all of the returned values in `Box::new`
   |
LL | fn or<'a>(first: &'static dyn Foo<'a>) -> Box<dyn Foo<'a>> {
   |                                           ++++           +

error: aborting due to 1 previous error

For more information about this error, try `rustc --explain E0746`.