diff options
-rw-r--r-- | crates/libsyntax2/src/grammar/expressions/mod.rs | 4 | ||||
-rw-r--r-- | crates/libsyntax2/src/grammar/type_params.rs | 6 |
2 files changed, 8 insertions, 2 deletions
diff --git a/crates/libsyntax2/src/grammar/expressions/mod.rs b/crates/libsyntax2/src/grammar/expressions/mod.rs index dcbb1e2a8..30a78d0c4 100644 --- a/crates/libsyntax2/src/grammar/expressions/mod.rs +++ b/crates/libsyntax2/src/grammar/expressions/mod.rs | |||
@@ -264,7 +264,9 @@ fn method_call_expr(p: &mut Parser, lhs: CompletedMarker) -> CompletedMarker { | |||
264 | p.bump(); | 264 | p.bump(); |
265 | name_ref(p); | 265 | name_ref(p); |
266 | type_args::type_arg_list(p, true); | 266 | type_args::type_arg_list(p, true); |
267 | arg_list(p); | 267 | if p.at(L_PAREN) { |
268 | arg_list(p); | ||
269 | } | ||
268 | m.complete(p, METHOD_CALL_EXPR) | 270 | m.complete(p, METHOD_CALL_EXPR) |
269 | } | 271 | } |
270 | 272 | ||
diff --git a/crates/libsyntax2/src/grammar/type_params.rs b/crates/libsyntax2/src/grammar/type_params.rs index 32b69dc5b..a97eeb142 100644 --- a/crates/libsyntax2/src/grammar/type_params.rs +++ b/crates/libsyntax2/src/grammar/type_params.rs | |||
@@ -118,7 +118,11 @@ fn where_predicate(p: &mut Parser) { | |||
118 | let m = p.start(); | 118 | let m = p.start(); |
119 | if p.at(LIFETIME) { | 119 | if p.at(LIFETIME) { |
120 | p.eat(LIFETIME); | 120 | p.eat(LIFETIME); |
121 | lifetime_bounds(p) | 121 | if p.at(COLON) { |
122 | lifetime_bounds(p) | ||
123 | } else { | ||
124 | p.error("expected colon") | ||
125 | } | ||
122 | } else { | 126 | } else { |
123 | types::path_type(p); | 127 | types::path_type(p); |
124 | if p.at(COLON) { | 128 | if p.at(COLON) { |