//! The mir-opt added in unfortunately seems to lead //! to a miscompile (reported in , minimization //! reproduced in this test file). //@ revisions: release debug // Note: it's not strictly cargo's release profile, but any non-zero opt-level was sufficient to // reproduce the miscompile. //@[release] compile-flags: -C opt-level=1 //@[debug] compile-flags: -C opt-level=0 //@ run-pass fn pop_min(mut score2head: Vec>) -> Option { loop { if let Some(col) = score2head[0] { score2head[0] = None; return Some(col); } } } fn main() { let min = pop_min(vec![Some(1)]); println!("min: {:?}", min); // panic happened on 1.83.0 beta in release mode but not debug mode. let _ = min.unwrap(); }