]> git.lizzy.rs Git - rust.git/blob - src/test/ui/unsized/issue-91801.stderr
Rollup merge of #103163 - SUPERCILEX:uninit-array-assume2, r=scottmcm
[rust.git] / src / test / ui / unsized / issue-91801.stderr
1 error[E0746]: return type cannot have an unboxed trait object
2   --> $DIR/issue-91801.rs:8:77
3    |
4 LL | fn or<'a>(first: &'static Validator<'a>, second: &'static Validator<'a>) -> Validator<'a> {
5    |                                                                             ^^^^^^^^^^^^^ doesn't have a size known at compile-time
6    |
7    = note: for information on `impl Trait`, see <https://doc.rust-lang.org/book/ch10-02-traits.html#returning-types-that-implement-traits>
8 help: use `impl Fn(&'a Something) -> Result<(), ()> + Send + Sync + 'a` as the return type, as all return paths are of type `Box<[closure@$DIR/issue-91801.rs:10:21: 10:70]>`, which implements `Fn(&'a Something) -> Result<(), ()> + Send + Sync + 'a`
9    |
10 LL | fn or<'a>(first: &'static Validator<'a>, second: &'static Validator<'a>) -> impl Fn(&'a Something) -> Result<(), ()> + Send + Sync + 'a {
11    |                                                                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12
13 error: aborting due to previous error
14
15 For more information about this error, try `rustc --explain E0746`.