// Because of #109628, we can have unbounded region vars in implied bounds. // Make sure we don't ICE in this case! // // check-pass pub trait MapAccess { type Error; fn next_key_seed(&mut self) -> Option; } struct Access<'a> { _marker: std::marker::PhantomData<&'a ()>, } // implied_bounds(Option) = ['?1: 'a, ] // where '?1 is a fresh region var. impl<'a, 'b: 'a> MapAccess for Access<'a> { type Error = (); fn next_key_seed(&mut self) -> Option { unimplemented!() } } fn main() {}