diff options
| author | Manish Goregaokar <manishsmail@gmail.com> | 2018-02-23 10:24:47 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-02-23 10:24:47 -0800 |
| commit | a1acb155915329be75e5e1b86e2744e01fc61e3e (patch) | |
| tree | 38208320878f8842fab725c17af6f9e08eef15d2 /src/libsyntax/parse/parser.rs | |
| parent | 4941cb4796de9b9fa4b1796318b3de268bf39adc (diff) | |
| parent | a003cb7cd7d619a5553c5c99e4ee7ce185a1608c (diff) | |
| download | rust-a1acb155915329be75e5e1b86e2744e01fc61e3e.tar.gz rust-a1acb155915329be75e5e1b86e2744e01fc61e3e.zip | |
Rollup merge of #48083 - jseyfried:improve_tuple_struct_field_access_hygiene, r=petrochenkov
Improve tuple struct field access hygiene Fixes #47312 by fixing a span bug. r? @nrc
Diffstat (limited to 'src/libsyntax/parse/parser.rs')
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index 74daa5179d3..1a33de84429 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -2630,8 +2630,7 @@ impl<'a> Parser<'a> { // A tuple index may not have a suffix self.expect_no_suffix(sp, "tuple index", suf); - let dot_span = self.prev_span; - hi = self.span; + let idx_span = self.span; self.bump(); let invalid_msg = "invalid tuple or struct index"; @@ -2646,9 +2645,8 @@ impl<'a> Parser<'a> { n.to_string()); err.emit(); } - let id = respan(dot_span.to(hi), n); - let field = self.mk_tup_field(e, id); - e = self.mk_expr(lo.to(hi), field, ThinVec::new()); + let field = self.mk_tup_field(e, respan(idx_span, n)); + e = self.mk_expr(lo.to(idx_span), field, ThinVec::new()); } None => { let prev_span = self.prev_span; |
