diff options
Diffstat (limited to 'crates/ra_parser/src')
-rw-r--r-- | crates/ra_parser/src/grammar/expressions/atom.rs | 6 | ||||
-rw-r--r-- | crates/ra_parser/src/grammar/paths.rs | 2 |
2 files changed, 3 insertions, 5 deletions
diff --git a/crates/ra_parser/src/grammar/expressions/atom.rs b/crates/ra_parser/src/grammar/expressions/atom.rs index b72d2e9e6..b77b683b5 100644 --- a/crates/ra_parser/src/grammar/expressions/atom.rs +++ b/crates/ra_parser/src/grammar/expressions/atom.rs | |||
@@ -230,10 +230,8 @@ fn lambda_expr(p: &mut Parser) -> CompletedMarker { | |||
230 | p.eat(T![async]); | 230 | p.eat(T![async]); |
231 | p.eat(T![move]); | 231 | p.eat(T![move]); |
232 | params::param_list_closure(p); | 232 | params::param_list_closure(p); |
233 | if opt_fn_ret_type(p) { | 233 | if opt_fn_ret_type(p) && !p.at(T!['{']) { |
234 | if !p.at(T!['{']) { | 234 | p.error("expected `{`"); |
235 | p.error("expected `{`"); | ||
236 | } | ||
237 | } | 235 | } |
238 | 236 | ||
239 | if p.at_ts(EXPR_FIRST) { | 237 | if p.at_ts(EXPR_FIRST) { |
diff --git a/crates/ra_parser/src/grammar/paths.rs b/crates/ra_parser/src/grammar/paths.rs index f5bf3d7ce..332acc1a0 100644 --- a/crates/ra_parser/src/grammar/paths.rs +++ b/crates/ra_parser/src/grammar/paths.rs | |||
@@ -94,7 +94,7 @@ fn path_segment(p: &mut Parser, mode: Mode, first: bool) { | |||
94 | 94 | ||
95 | fn opt_path_type_args(p: &mut Parser, mode: Mode) { | 95 | fn opt_path_type_args(p: &mut Parser, mode: Mode) { |
96 | match mode { | 96 | match mode { |
97 | Mode::Use => return, | 97 | Mode::Use => {} |
98 | Mode::Type => { | 98 | Mode::Type => { |
99 | // test path_fn_trait_args | 99 | // test path_fn_trait_args |
100 | // type F = Box<Fn(i32) -> ()>; | 100 | // type F = Box<Fn(i32) -> ()>; |