From 7dec8a4e99ee10696a3b1e61bfa5918683c49437 Mon Sep 17 00:00:00 2001 From: Esteban Küber Date: Fri, 25 May 2018 21:57:02 -0700 Subject: Fix test --- src/libsyntax/parse/lexer/mod.rs | 6 ++++-- src/libsyntax/parse/lexer/unicode_chars.rs | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) (limited to 'src/libsyntax/parse') diff --git a/src/libsyntax/parse/lexer/mod.rs b/src/libsyntax/parse/lexer/mod.rs index 50a398d8c63..c39eb1594b2 100644 --- a/src/libsyntax/parse/lexer/mod.rs +++ b/src/libsyntax/parse/lexer/mod.rs @@ -1081,10 +1081,12 @@ impl<'a> StringReader<'a> { ); if let Some(ch) = self.ch { // check for e.g. Unicode minus '−' (Issue #49746) - unicode_chars::check_for_substitution(self, ch, &mut err); + if unicode_chars::check_for_substitution(self, ch, &mut err) { + self.bump(); + self.scan_digits(10, 10); + } } err.emit(); - FatalError.raise(); } } } diff --git a/src/libsyntax/parse/lexer/unicode_chars.rs b/src/libsyntax/parse/lexer/unicode_chars.rs index 3c0bb82212f..c5c2e025233 100644 --- a/src/libsyntax/parse/lexer/unicode_chars.rs +++ b/src/libsyntax/parse/lexer/unicode_chars.rs @@ -335,7 +335,7 @@ const ASCII_ARRAY: &'static [(char, &'static str)] = &[ pub fn check_for_substitution<'a>(reader: &StringReader<'a>, ch: char, - err: &mut DiagnosticBuilder<'a>) { + err: &mut DiagnosticBuilder<'a>) -> bool { UNICODE_ARRAY .iter() .find(|&&(c, _, _)| c == ch) @@ -347,11 +347,13 @@ pub fn check_for_substitution<'a>(reader: &StringReader<'a>, format!("Unicode character '{}' ({}) looks like '{}' ({}), but it is not", ch, u_name, ascii_char, ascii_name); err.span_suggestion(span, &msg, ascii_char.to_string()); + true }, None => { let msg = format!("substitution character not found for '{}'", ch); reader.sess.span_diagnostic.span_bug_no_panic(span, &msg); + false } } - }); + }).unwrap_or(false) } -- cgit 1.4.1-3-g733a5