error: `~const` can only be applied to `#[const_trait]` traits --> $DIR/const_trait_impl.rs:34:16 | LL | impl const A for T { | ^^^^^^^ error: `~const` can only be applied to `#[const_trait]` traits --> $DIR/const_trait_impl.rs:40:16 | LL | impl const A for T { | ^^^^^^^ error: `~const` can only be applied to `#[const_trait]` traits --> $DIR/const_trait_impl.rs:46:16 | LL | impl const A for T { | ^^^^^^^ error[E0015]: cannot call non-const fn `<() as A>::a` in constants --> $DIR/const_trait_impl.rs:52:23 | LL | const _: () = assert!(<()>::a() == 42); | ^^^^^^^^^ | = note: calls in constants are limited to constant functions, tuple structs and tuple variants = help: add `#![feature(effects)]` to the crate attributes to enable error[E0015]: cannot call non-const fn `::a` in constants --> $DIR/const_trait_impl.rs:53:23 | LL | const _: () = assert!(::a() == 3); | ^^^^^^^^^ | = note: calls in constants are limited to constant functions, tuple structs and tuple variants = help: add `#![feature(effects)]` to the crate attributes to enable error[E0015]: cannot call non-const fn `::a` in constants --> $DIR/const_trait_impl.rs:54:23 | LL | const _: () = assert!(::a() == 2); | ^^^^^^^^^^ | = note: calls in constants are limited to constant functions, tuple structs and tuple variants = help: add `#![feature(effects)]` to the crate attributes to enable error: aborting due to 6 previous errors For more information about this error, try `rustc --explain E0015`.