mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-22 23:04:33 +00:00
34 lines
1.2 KiB
Plaintext
34 lines
1.2 KiB
Plaintext
error[E0307]: invalid `self` parameter type: `Bar`
|
|
--> $DIR/arbitrary-self-opaque.rs:8:18
|
|
|
|
|
LL | fn foo(self: Bar) {}
|
|
| ^^^
|
|
|
|
|
= note: type of `self` must be `Self` or a type that dereferences to it
|
|
= help: consider changing to `self`, `&self`, `&mut self`, `self: Box<Self>`, `self: Rc<Self>`, `self: Arc<Self>`, or `self: Pin<P>` (where P is one of the previous types except `Self`)
|
|
|
|
error: item does not constrain `Bar::{opaque#0}`, but has it in its signature
|
|
--> $DIR/arbitrary-self-opaque.rs:8:8
|
|
|
|
|
LL | fn foo(self: Bar) {}
|
|
| ^^^
|
|
|
|
|
= note: consider moving the opaque type's declaration and defining uses into a separate module
|
|
note: this opaque type is in the signature
|
|
--> $DIR/arbitrary-self-opaque.rs:4:12
|
|
|
|
|
LL | type Bar = impl Sized;
|
|
| ^^^^^^^^^^
|
|
|
|
error: unconstrained opaque type
|
|
--> $DIR/arbitrary-self-opaque.rs:4:12
|
|
|
|
|
LL | type Bar = impl Sized;
|
|
| ^^^^^^^^^^
|
|
|
|
|
= note: `Bar` must be used in combination with a concrete type within the same module
|
|
|
|
error: aborting due to 3 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0307`.
|