//! ICE: https://github.com/rust-lang/rust/issues/114121 //! This test checks that MIR validation never constrains //! new hidden types that *differ* from the actual hidden types. //! This test used to ICE because oli-obk assumed mir validation //! was only ever run after opaque types were revealed in MIR. // compile-flags: -Zvalidate-mir // check-pass fn main() { let _ = Some(()).into_iter().flat_map(|_| Some(()).into_iter().flat_map(func)); } fn func(_: ()) -> impl Iterator { Some(()).into_iter().flat_map(|_| vec![]) }