//! Previously we would try to issue a suggestion for `let x = 1`, i.e. a compound assignment //! within a `let` binding, to remove the ``. The suggestion code unfortunately incorrectly //! assumed that the `` is an exactly-1-byte ASCII character, but this assumption is incorrect //! because we also recover Unicode-confusables like `➖=` as `-=`. In this example, the suggestion //! code used a `+ BytePos(1)` to calculate the span of the `` codepoint that looks like `-` but //! the mult-byte Unicode look-alike would cause the suggested removal span to be inside a //! multi-byte codepoint boundary, triggering a codepoint boundary assertion. //! //! issue: rust-lang/rust#128845 fn main() { // Adapted from #128845 but with irrelevant components removed and simplified. let x ➖= 1; //~^ ERROR unknown start of token: \u{2796} //~| ERROR: can't reassign to an uninitialized variable }