From d824edfc2c063cff6e6536a1fcb56be6d89fa0cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Esteban=20K=C3=BCber?= Date: Mon, 12 Aug 2019 23:31:13 -0700 Subject: [PATCH] Do not ICE when synthesizing spans falling inside unicode chars --- src/libsyntax/source_map.rs | 6 ++++++ src/test/ui/suggestions/issue-61226.rs | 5 +++++ src/test/ui/suggestions/issue-61226.stderr | 17 +++++++++++++++++ 3 files changed, 28 insertions(+) create mode 100644 src/test/ui/suggestions/issue-61226.rs create mode 100644 src/test/ui/suggestions/issue-61226.stderr diff --git a/src/libsyntax/source_map.rs b/src/libsyntax/source_map.rs index 4e29c77c89e4..3c58cfbbb2be 100644 --- a/src/libsyntax/source_map.rs +++ b/src/libsyntax/source_map.rs @@ -554,8 +554,14 @@ fn span_to_source(&self, sp: Span, extract_source: F) -> Result $DIR/issue-61226.rs:3:10 + | +LL | vec![X]; //… + | ^ + | | + | did you mean `X { /* fields */ }`? + | help: a function with a similar name exists: `f` + +error[E0601]: `main` function not found in crate `issue_61226` + | + = note: consider adding a `main` function to `$DIR/issue-61226.rs` + +error: aborting due to 2 previous errors + +Some errors have detailed explanations: E0423, E0601. +For more information about an error, try `rustc --explain E0423`.