// This used to ICE during codegen after MIR inlining of g into f. // The root cause was a missing fold of length constant in Rvalue::Repeat. // Regression test for #76248. // // build-pass // compile-flags: -Zmir-opt-level=3 const N: usize = 1; pub struct Elem<M> { pub x: [usize; N], pub m: M, } pub fn f() -> Elem<()> { g(()) } #[inline] pub fn g<M>(m: M) -> Elem<M> { Elem { x: [0; N], m, } } pub fn main() { f(); }