When encountering code like `f::<f::<f::<f::<f::<f::<f::<f::<...` with unmatched closing angle brackets, add a linear check that avoids the exponential behavior of the parse recovery mechanism. Fix #117080.
use
mod foo;
foo
ensure
Result<(), ErrorGuaranteed>
rustc_smir
rustc_interface
rustc_driver