// 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(); | |
} |