| error[E0015]: cannot call non-const fn `<R as Deref>::deref` in constant functions |
| --> $DIR/arbitrary-self-from-method-substs-ice.rs:13:9 |
| | |
| LL | self.0 |
| | ^^^^^^ |
| | |
| = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants |
| |
| error[E0493]: destructor of `R` cannot be evaluated at compile-time |
| --> $DIR/arbitrary-self-from-method-substs-ice.rs:10:43 |
| | |
| LL | const fn get<R: Deref<Target = Self>>(self: R) -> u32 { |
| | ^^^^ the destructor for this type cannot be evaluated in constant functions |
| ... |
| LL | } |
| | - value is dropped here |
| |
| error[E0658]: `R` cannot be used as the type of `self` without the `arbitrary_self_types` feature |
| --> $DIR/arbitrary-self-from-method-substs-ice.rs:10:49 |
| | |
| LL | const fn get<R: Deref<Target = Self>>(self: R) -> u32 { |
| | ^ |
| | |
| = note: see issue #44874 <https://github.com/rust-lang/rust/issues/44874> for more information |
| = help: add `#![feature(arbitrary_self_types)]` to the crate attributes to enable |
| = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date |
| = 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: aborting due to 3 previous errors |
| |
| Some errors have detailed explanations: E0015, E0493, E0658. |
| For more information about an error, try `rustc --explain E0015`. |