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()
   |                        ^^^^
   |
   = help: try adding a `where` bound using this expression: `where [(); Self::DIM]:`
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`

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`.
