error[E0308]: method not compatible with trait --> $DIR/issue-83765.rs:30:5 | LL | fn size(&self) -> [usize; DIM] { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Self::DIM`, found `DIM` | = note: expected constant `Self::DIM` found constant `DIM` error: unconstrained generic constant --> $DIR/issue-83765.rs:32:24 | LL | self.reference.size() | ^^^^ | note: required by a bound in `TensorSize::size` --> $DIR/issue-83765.rs:9:31 | LL | fn size(&self) -> [usize; Self::DIM]; | ^^^^^^^^^ required by this bound in `TensorSize::size` help: try adding a `where` bound | LL | fn size(&self) -> [usize; DIM] where [(); Self::DIM]: { | ++++++++++++++++++++++ error[E0308]: mismatched types --> $DIR/issue-83765.rs:32:9 | LL | self.reference.size() | ^^^^^^^^^^^^^^^^^^^^^ expected `DIM`, found `Self::DIM` | = note: expected constant `DIM` found constant `Self::DIM` error: aborting due to 3 previous errors For more information about this error, try `rustc --explain E0308`.