//@ check-pass //@ compile-flags: -Znext-solver // Ensure that a stack of coerce predicates doesn't end up overflowing when they get procesed // in *reverse* order, which may require O(N) iterations of the fulfillment loop. #![recursion_limit = "16"] fn main() { match 0 { 0 => None, 1 => None, 2 => None, 3 => None, 4 => None, 5 => None, 6 => None, 7 => None, 8 => None, 9 => None, 10 => None, 11 => None, 12 => None, 13 => None, 14 => None, 15 => None, 16 => None, 17 => None, _ => Some(1u32), }; }