diff options
| author | Edwin Cheng <[email protected]> | 2021-03-05 20:57:34 +0000 |
|---|---|---|
| committer | Edwin Cheng <[email protected]> | 2021-03-05 20:57:34 +0000 |
| commit | 20eda09712f0c4cd701575d125122472252820db (patch) | |
| tree | de3857d38019ce7fd8eb1d20d1823417712fec2a /crates/parser | |
| parent | 3d662e320b97fdc50d8cc1721983661900da22d3 (diff) | |
Fix fail to parse :: for meta in mbe
Diffstat (limited to 'crates/parser')
| -rw-r--r-- | crates/parser/src/grammar.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/crates/parser/src/grammar.rs b/crates/parser/src/grammar.rs index 6913e9ec2..6159d064c 100644 --- a/crates/parser/src/grammar.rs +++ b/crates/parser/src/grammar.rs | |||
| @@ -95,7 +95,7 @@ pub(crate) mod fragments { | |||
| 95 | // https://doc.rust-lang.org/reference/paths.html#simple-paths | 95 | // https://doc.rust-lang.org/reference/paths.html#simple-paths |
| 96 | // The start of an meta must be a simple path | 96 | // The start of an meta must be a simple path |
| 97 | match p.current() { | 97 | match p.current() { |
| 98 | IDENT | T![::] | T![super] | T![self] | T![crate] => p.bump_any(), | 98 | IDENT | T![super] | T![self] | T![crate] => p.bump_any(), |
| 99 | T![=] => { | 99 | T![=] => { |
| 100 | p.bump_any(); | 100 | p.bump_any(); |
| 101 | match p.current() { | 101 | match p.current() { |
| @@ -105,6 +105,7 @@ pub(crate) mod fragments { | |||
| 105 | } | 105 | } |
| 106 | break; | 106 | break; |
| 107 | } | 107 | } |
| 108 | _ if p.at(T![::]) => p.bump(T![::]), | ||
| 108 | _ => break, | 109 | _ => break, |
| 109 | } | 110 | } |
| 110 | } | 111 | } |
