The one exception to all of the above is repeat counts of array expressions. As a *backwards compatibility hack* we allow the repeat count const argument to use generic parameters.
```rust
fn foo<T: Sized>() {
let a = [1_u8; size_of::<*mut T>()];
}
```
example is surprising when reading this, also, maybe use a sub-header here
Originally posted by @lcnr in #2677 (comment)