mirror of https://github.com/rust-lang/rust.git
58 lines
2.1 KiB
Plaintext
58 lines
2.1 KiB
Plaintext
error: const `impl` for trait `Foo` which is not marked with `#[const_trait]`
|
|
--> $DIR/spec-effectvar-ice.rs:10:15
|
|
|
|
|
LL | impl<T> const Foo for T {}
|
|
| ^^^ this trait is not `const`
|
|
|
|
|
= note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
|
|
= note: adding a non-const method body in the future would be a breaking change
|
|
help: mark `Foo` as `#[const_trait]` to allow it to have `const` implementations
|
|
|
|
|
LL | #[const_trait] trait Foo {}
|
|
| ++++++++++++++
|
|
|
|
error: const `impl` for trait `Foo` which is not marked with `#[const_trait]`
|
|
--> $DIR/spec-effectvar-ice.rs:13:15
|
|
|
|
|
LL | impl<T> const Foo for T where T: const Specialize {}
|
|
| ^^^ this trait is not `const`
|
|
|
|
|
= note: marking a trait with `#[const_trait]` ensures all default method bodies are `const`
|
|
= note: adding a non-const method body in the future would be a breaking change
|
|
help: mark `Foo` as `#[const_trait]` to allow it to have `const` implementations
|
|
|
|
|
LL | #[const_trait] trait Foo {}
|
|
| ++++++++++++++
|
|
|
|
error: `const` can only be applied to `#[const_trait]` traits
|
|
--> $DIR/spec-effectvar-ice.rs:13:34
|
|
|
|
|
LL | impl<T> const Foo for T where T: const Specialize {}
|
|
| ^^^^^ can't be applied to `Specialize`
|
|
|
|
|
help: mark `Specialize` as `#[const_trait]` to allow it to have `const` implementations
|
|
|
|
|
LL | #[const_trait] trait Specialize {}
|
|
| ++++++++++++++
|
|
|
|
error: specialization impl does not specialize any associated items
|
|
--> $DIR/spec-effectvar-ice.rs:13:1
|
|
|
|
|
LL | impl<T> const Foo for T where T: const Specialize {}
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
|
note: impl is a specialization of this impl
|
|
--> $DIR/spec-effectvar-ice.rs:10:1
|
|
|
|
|
LL | impl<T> const Foo for T {}
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
error: cannot specialize on trait `Specialize`
|
|
--> $DIR/spec-effectvar-ice.rs:13:34
|
|
|
|
|
LL | impl<T> const Foo for T where T: const Specialize {}
|
|
| ^^^^^^^^^^^^^^^^
|
|
|
|
error: aborting due to 5 previous errors
|
|
|