From f6188caaa0d226bef88418c9ff3f13a63ae95358 Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Wed, 25 Mar 2020 16:41:50 +0100 Subject: Fix parsing lambdas with return type We should eat only a single block, and not whatever larger expression may start with a block. closes #3721 --- .../parser/err/0010_unsafe_lambda_block.txt | 30 ++++++++++++---------- 1 file changed, 16 insertions(+), 14 deletions(-) (limited to 'crates/ra_syntax/test_data/parser/err/0010_unsafe_lambda_block.txt') diff --git a/crates/ra_syntax/test_data/parser/err/0010_unsafe_lambda_block.txt b/crates/ra_syntax/test_data/parser/err/0010_unsafe_lambda_block.txt index e0edf6a2d..0ffbd25aa 100644 --- a/crates/ra_syntax/test_data/parser/err/0010_unsafe_lambda_block.txt +++ b/crates/ra_syntax/test_data/parser/err/0010_unsafe_lambda_block.txt @@ -12,8 +12,8 @@ SOURCE_FILE@[0; 42) BLOCK@[10; 41) L_CURLY@[10; 11) "{" WHITESPACE@[11; 16) "\n " - EXPR_STMT@[16; 39) - LAMBDA_EXPR@[16; 38) + EXPR_STMT@[16; 24) + LAMBDA_EXPR@[16; 24) PARAM_LIST@[16; 18) PIPE@[16; 17) "|" PIPE@[17; 18) "|" @@ -24,20 +24,22 @@ SOURCE_FILE@[0; 42) TUPLE_TYPE@[22; 24) L_PAREN@[22; 23) "(" R_PAREN@[23; 24) ")" - WHITESPACE@[24; 25) " " - BLOCK_EXPR@[25; 38) - UNSAFE_KW@[25; 31) "unsafe" - WHITESPACE@[31; 32) " " - BLOCK@[32; 38) - L_CURLY@[32; 33) "{" - WHITESPACE@[33; 34) " " - TUPLE_EXPR@[34; 36) - L_PAREN@[34; 35) "(" - R_PAREN@[35; 36) ")" - WHITESPACE@[36; 37) " " - R_CURLY@[37; 38) "}" + WHITESPACE@[24; 25) " " + EXPR_STMT@[25; 39) + BLOCK_EXPR@[25; 38) + UNSAFE_KW@[25; 31) "unsafe" + WHITESPACE@[31; 32) " " + BLOCK@[32; 38) + L_CURLY@[32; 33) "{" + WHITESPACE@[33; 34) " " + TUPLE_EXPR@[34; 36) + L_PAREN@[34; 35) "(" + R_PAREN@[35; 36) ")" + WHITESPACE@[36; 37) " " + R_CURLY@[37; 38) "}" SEMI@[38; 39) ";" WHITESPACE@[39; 40) "\n" R_CURLY@[40; 41) "}" WHITESPACE@[41; 42) "\n" error [24; 24): expected `{` +error [24; 24): expected SEMI -- cgit v1.2.3