2024-06-21 12:22:29 +00:00
|
|
|
warning: the feature `effects` is incomplete and may not be safe to use and/or cause compiler crashes
|
|
|
|
|
--> $DIR/derive-const-use.rs:3:76
|
|
|
|
|
|
|
|
|
|
|
LL | #![feature(const_trait_impl, const_cmp, const_default_impls, derive_const, effects)]
|
|
|
|
|
| ^^^^^^^
|
|
|
|
|
|
|
|
|
|
|
= note: see issue #102090 <https://github.com/rust-lang/rust/issues/102090> for more information
|
|
|
|
|
= note: `#[warn(incomplete_features)]` on by default
|
|
|
|
|
|
2024-06-21 11:57:24 +00:00
|
|
|
error[E0635]: unknown feature `const_cmp`
|
|
|
|
|
--> $DIR/derive-const-use.rs:3:30
|
|
|
|
|
|
|
|
|
|
|
LL | #![feature(const_trait_impl, const_cmp, const_default_impls, derive_const, effects)]
|
|
|
|
|
| ^^^^^^^^^
|
|
|
|
|
|
2023-04-16 11:12:37 +00:00
|
|
|
error[E0635]: unknown feature `const_default_impls`
|
2023-12-10 10:42:34 +00:00
|
|
|
--> $DIR/derive-const-use.rs:3:41
|
2023-04-16 11:12:37 +00:00
|
|
|
|
|
2023-12-10 10:42:34 +00:00
|
|
|
LL | #![feature(const_trait_impl, const_cmp, const_default_impls, derive_const, effects)]
|
|
|
|
|
| ^^^^^^^^^^^^^^^^^^^
|
2023-04-16 11:12:37 +00:00
|
|
|
|
2023-12-10 10:42:34 +00:00
|
|
|
error: const `impl` for trait `Default` which is not marked with `#[const_trait]`
|
|
|
|
|
--> $DIR/derive-const-use.rs:7:12
|
|
|
|
|
|
|
|
|
|
|
LL | impl const Default for A {
|
|
|
|
|
| ^^^^^^^
|
|
|
|
|
|
|
|
|
|
|
= 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
|
|
|
|
|
|
2024-02-23 11:45:44 +00:00
|
|
|
error[E0207]: the const parameter `host` is not constrained by the impl trait, self type, or predicates
|
|
|
|
|
--> $DIR/derive-const-use.rs:7:6
|
|
|
|
|
|
|
|
|
|
|
LL | impl const Default for A {
|
|
|
|
|
| ^^^^^ unconstrained const parameter
|
|
|
|
|
|
|
|
|
|
|
= note: expressions using a const parameter must map each value to a distinct output value
|
|
|
|
|
= note: proving the result of expressions other than the parameter are unique is not supported
|
|
|
|
|
|
2024-06-21 11:57:24 +00:00
|
|
|
error: const `impl` for trait `PartialEq` which is not marked with `#[const_trait]`
|
|
|
|
|
--> $DIR/derive-const-use.rs:11:12
|
|
|
|
|
|
|
|
|
|
|
LL | impl const PartialEq for A {
|
|
|
|
|
| ^^^^^^^^^
|
|
|
|
|
|
|
|
|
|
|
= 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
|
|
|
|
|
|
|
|
|
|
error[E0207]: the const parameter `host` is not constrained by the impl trait, self type, or predicates
|
|
|
|
|
--> $DIR/derive-const-use.rs:11:6
|
|
|
|
|
|
|
|
|
|
|
LL | impl const PartialEq for A {
|
|
|
|
|
| ^^^^^ unconstrained const parameter
|
|
|
|
|
|
|
|
|
|
|
= note: expressions using a const parameter must map each value to a distinct output value
|
|
|
|
|
= note: proving the result of expressions other than the parameter are unique is not supported
|
|
|
|
|
|
2023-12-10 10:42:34 +00:00
|
|
|
error: const `impl` for trait `Default` which is not marked with `#[const_trait]`
|
|
|
|
|
--> $DIR/derive-const-use.rs:15:16
|
|
|
|
|
|
|
|
|
|
|
LL | #[derive_const(Default, PartialEq)]
|
|
|
|
|
| ^^^^^^^
|
|
|
|
|
|
|
|
|
|
|
= 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
|
|
|
|
|
= note: this error originates in the derive macro `Default` (in Nightly builds, run with -Z macro-backtrace for more info)
|
|
|
|
|
|
2023-10-31 13:45:26 +00:00
|
|
|
error[E0207]: the const parameter `host` is not constrained by the impl trait, self type, or predicates
|
|
|
|
|
|
|
|
|
|
|
= note: expressions using a const parameter must map each value to a distinct output value
|
|
|
|
|
= note: proving the result of expressions other than the parameter are unique is not supported
|
|
|
|
|
|
2024-06-21 11:57:24 +00:00
|
|
|
error: const `impl` for trait `PartialEq` which is not marked with `#[const_trait]`
|
|
|
|
|
--> $DIR/derive-const-use.rs:15:25
|
|
|
|
|
|
|
|
|
|
|
LL | #[derive_const(Default, PartialEq)]
|
|
|
|
|
| ^^^^^^^^^
|
|
|
|
|
|
|
|
|
|
|
= 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
|
|
|
|
|
= note: this error originates in the derive macro `PartialEq` (in Nightly builds, run with -Z macro-backtrace for more info)
|
|
|
|
|
|
|
|
|
|
error[E0207]: the const parameter `host` is not constrained by the impl trait, self type, or predicates
|
|
|
|
|
|
|
|
|
|
|
= note: expressions using a const parameter must map each value to a distinct output value
|
|
|
|
|
= note: proving the result of expressions other than the parameter are unique is not supported
|
|
|
|
|
= note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
|
|
|
|
|
|
2024-06-17 08:34:26 +00:00
|
|
|
error[E0284]: type annotations needed
|
|
|
|
|
--> $DIR/derive-const-use.rs:18:35
|
|
|
|
|
|
|
|
|
|
|
LL | const _: () = assert!(S((), A) == S::default());
|
|
|
|
|
| ^^^^^^^^^^^^ cannot infer the value of the constant `_`
|
|
|
|
|
|
|
|
|
|
|
note: required for `S` to implement `Default`
|
|
|
|
|
--> $DIR/derive-const-use.rs:15:16
|
|
|
|
|
|
|
|
|
|
|
LL | #[derive_const(Default, PartialEq)]
|
|
|
|
|
| ^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
|
|
|
|
|
= note: this error originates in the derive macro `Default` (in Nightly builds, run with -Z macro-backtrace for more info)
|
|
|
|
|
|
2024-06-21 11:57:24 +00:00
|
|
|
error[E0284]: type annotations needed
|
|
|
|
|
--> $DIR/derive-const-use.rs:18:23
|
2024-02-15 17:12:05 +00:00
|
|
|
|
|
2024-06-21 11:57:24 +00:00
|
|
|
LL | const _: () = assert!(S((), A) == S::default());
|
|
|
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer the value of the constant `_`
|
|
|
|
|
|
|
|
|
|
|
note: required for `S` to implement `PartialEq`
|
|
|
|
|
--> $DIR/derive-const-use.rs:15:25
|
2024-02-15 17:12:05 +00:00
|
|
|
|
|
2024-06-21 11:57:24 +00:00
|
|
|
LL | #[derive_const(Default, PartialEq)]
|
|
|
|
|
| ^^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
|
2024-02-15 17:12:05 +00:00
|
|
|
= note: this error originates in the derive macro `PartialEq` (in Nightly builds, run with -Z macro-backtrace for more info)
|
|
|
|
|
|
2024-06-17 08:34:26 +00:00
|
|
|
error[E0284]: type annotations needed
|
|
|
|
|
--> $DIR/derive-const-use.rs:16:18
|
|
|
|
|
|
|
|
|
|
|
LL | #[derive_const(Default, PartialEq)]
|
|
|
|
|
| ------- in this derive macro expansion
|
|
|
|
|
LL | pub struct S((), A);
|
|
|
|
|
| ^ cannot infer the value of the constant `_`
|
|
|
|
|
|
|
|
|
|
|
note: required for `A` to implement `Default`
|
|
|
|
|
--> $DIR/derive-const-use.rs:7:12
|
|
|
|
|
|
|
|
|
|
|
LL | impl const Default for A {
|
|
|
|
|
| ----- ^^^^^^^ ^
|
|
|
|
|
| |
|
|
|
|
|
| unsatisfied trait bound introduced here
|
|
|
|
|
= note: this error originates in the derive macro `Default` (in Nightly builds, run with -Z macro-backtrace for more info)
|
|
|
|
|
|
2024-06-21 11:57:24 +00:00
|
|
|
error[E0284]: type annotations needed
|
|
|
|
|
--> $DIR/derive-const-use.rs:16:18
|
|
|
|
|
|
|
|
|
|
|
LL | #[derive_const(Default, PartialEq)]
|
|
|
|
|
| --------- in this derive macro expansion
|
|
|
|
|
LL | pub struct S((), A);
|
|
|
|
|
| ^ cannot infer the value of the constant `_`
|
|
|
|
|
|
|
|
|
|
|
note: required for `A` to implement `PartialEq`
|
|
|
|
|
--> $DIR/derive-const-use.rs:11:12
|
|
|
|
|
|
|
|
|
|
|
LL | impl const PartialEq for A {
|
|
|
|
|
| ----- ^^^^^^^^^ ^
|
|
|
|
|
| |
|
|
|
|
|
| unsatisfied trait bound introduced here
|
|
|
|
|
= note: this error originates in the derive macro `PartialEq` (in Nightly builds, run with -Z macro-backtrace for more info)
|
|
|
|
|
|
2024-06-21 12:22:29 +00:00
|
|
|
error: aborting due to 14 previous errors; 1 warning emitted
|
2023-04-16 11:12:37 +00:00
|
|
|
|
2024-06-21 11:57:24 +00:00
|
|
|
Some errors have detailed explanations: E0207, E0284, E0635.
|
2023-10-31 13:45:26 +00:00
|
|
|
For more information about an error, try `rustc --explain E0207`.
|