error: expected one of `!` or `::`, found `A` --> $DIR/issue-105330.rs:8:14 | LL | impl TraitWAssocConst for impl Demo { | - while parsing this item list starting here LL | LL | pubconst A: str = 32; | ^ expected one of `!` or `::` LL | } | - the item list ends here error[E0404]: expected trait, found struct `Demo` --> $DIR/issue-105330.rs:6:32 | LL | impl TraitWAssocConst for impl Demo { | ^^^^ not a trait error[E0658]: associated const equality is incomplete --> $DIR/issue-105330.rs:11:28 | LL | fn foo>() { | ^^^^ | = note: see issue #92827 for more information = help: add `#![feature(associated_const_equality)]` to the crate attributes to enable error[E0658]: associated const equality is incomplete --> $DIR/issue-105330.rs:17:29 | LL | fn main>() { | ^^^^ | = note: see issue #92827 for more information = help: add `#![feature(associated_const_equality)]` to the crate attributes to enable error[E0562]: `impl Trait` only allowed in function and inherent method return types, not in impl headers --> $DIR/issue-105330.rs:6:27 | LL | impl TraitWAssocConst for impl Demo { | ^^^^^^^^^ error[E0131]: `main` function is not allowed to have generic parameters --> $DIR/issue-105330.rs:17:8 | LL | fn main>() { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ `main` cannot have generic parameters error[E0277]: the trait bound `Demo: TraitWAssocConst` is not satisfied --> $DIR/issue-105330.rs:12:11 | LL | foo::()(); | ^^^^ the trait `TraitWAssocConst` is not implemented for `Demo` | note: required by a bound in `foo` --> $DIR/issue-105330.rs:11:11 | LL | fn foo>() { | ^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `foo` error[E0271]: type mismatch resolving `::A == 32` --> $DIR/issue-105330.rs:12:11 | LL | foo::()(); | ^^^^ expected `32`, found `::A` | = note: expected constant `32` found constant `::A` note: required by a bound in `foo` --> $DIR/issue-105330.rs:11:28 | LL | fn foo>() { | ^^^^ required by this bound in `foo` error[E0618]: expected function, found `()` --> $DIR/issue-105330.rs:12:5 | LL | fn foo>() { | ----------------------------------- `foo::` defined here returns `()` LL | foo::()(); | ^^^^^^^^^^^^^-- | | | call expression requires function error[E0277]: the trait bound `Demo: TraitWAssocConst` is not satisfied --> $DIR/issue-105330.rs:19:11 | LL | foo::(); | ^^^^ the trait `TraitWAssocConst` is not implemented for `Demo` | note: required by a bound in `foo` --> $DIR/issue-105330.rs:11:11 | LL | fn foo>() { | ^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `foo` error[E0271]: type mismatch resolving `::A == 32` --> $DIR/issue-105330.rs:19:11 | LL | foo::(); | ^^^^ expected `32`, found `::A` | = note: expected constant `32` found constant `::A` note: required by a bound in `foo` --> $DIR/issue-105330.rs:11:28 | LL | fn foo>() { | ^^^^ required by this bound in `foo` error: aborting due to 11 previous errors Some errors have detailed explanations: E0131, E0271, E0277, E0404, E0562, E0618, E0658. For more information about an error, try `rustc --explain E0131`.