diff options
| author | Michael Goulet <michael@errs.io> | 2023-06-15 01:55:30 +0000 |
|---|---|---|
| committer | Michael Goulet <michael@errs.io> | 2023-06-15 01:55:37 +0000 |
| commit | 9ef580fa6f2b5019b35e6a9cf979f6f13d21de00 (patch) | |
| tree | f4f3f3b6816d848859f8c6f9540f74da6c3aae8d /compiler/rustc_parse/src/parser/expr.rs | |
| parent | 6330daade9766bbf896495898c2347dc3be6da17 (diff) | |
| download | rust-9ef580fa6f2b5019b35e6a9cf979f6f13d21de00.tar.gz rust-9ef580fa6f2b5019b35e6a9cf979f6f13d21de00.zip | |
Handle interpolated literal errors
Diffstat (limited to 'compiler/rustc_parse/src/parser/expr.rs')
| -rw-r--r-- | compiler/rustc_parse/src/parser/expr.rs | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/compiler/rustc_parse/src/parser/expr.rs b/compiler/rustc_parse/src/parser/expr.rs index cea2a71c988..f00bc54589a 100644 --- a/compiler/rustc_parse/src/parser/expr.rs +++ b/compiler/rustc_parse/src/parser/expr.rs @@ -2023,17 +2023,14 @@ impl<'a> Parser<'a> { let recovered = self.recover_after_dot(); let token = recovered.as_ref().unwrap_or(&self.token); match token::Lit::from_token(token) { - Some(token_lit) => { - match MetaItemLit::from_token_lit(token_lit, token.span) { + Some(lit) => { + match MetaItemLit::from_token_lit(lit, token.span) { Ok(lit) => { self.bump(); Some(lit) } Err(err) => { - let span = token.span; - let token::Literal(lit) = token.kind else { - unreachable!(); - }; + let span = token.uninterpolated_span(); self.bump(); report_lit_error(&self.sess, err, lit, span); // Pack possible quotes and prefixes from the original literal into |
