| error[E0800]: cannot find type or const parameter `T` in this scope | |
| --> $DIR/bad-params.rs:1:34 | |
| | | |
| LL | fn missing() -> impl Sized + use<T> {} | |
| | ^ not found in this scope | |
| | | |
| help: you might be missing a type parameter | |
| | | |
| LL | fn missing<T>() -> impl Sized + use<T> {} | |
| | +++ | |
| error[E0411]: cannot find type or const parameter `Self` in this scope | |
| --> $DIR/bad-params.rs:4:39 | |
| | | |
| LL | fn missing_self() -> impl Sized + use<Self> {} | |
| | ------------ ^^^^ `Self` is only available in impls, traits, and type definitions | |
| | | | |
| | `Self` not allowed in a function | |
| error[E0799]: expected type or const parameter, found function `hello` | |
| --> $DIR/bad-params.rs:13:32 | |
| | | |
| LL | fn hello() -> impl Sized + use<hello> {} | |
| | ^^^^^ not a type or const parameter | |
| error[E0799]: expected type or const parameter, found local variable `x` | |
| --> $DIR/bad-params.rs:16:35 | |
| | | |
| LL | fn arg(x: ()) -> impl Sized + use<x> {} | |
| | ^ not a type or const parameter | |
| error[E0799]: `Self` can't be captured in `use<...>` precise captures list, since it is an alias | |
| --> $DIR/bad-params.rs:9:48 | |
| | | |
| LL | impl MyType { | |
| | ----------- `Self` is not a generic argument, but an alias to the type of the implementation | |
| LL | fn self_is_not_param() -> impl Sized + use<Self> {} | |
| | ^^^^ | |
| error: aborting due to 5 previous errors | |
| Some errors have detailed explanations: E0411, E0799, E0800. | |
| For more information about an error, try `rustc --explain E0411`. |