aboutsummaryrefslogtreecommitdiff
path: root/crates
diff options
context:
space:
mode:
Diffstat (limited to 'crates')
-rw-r--r--crates/ra_lsp_server/tests/heavy_tests/main.rs3
-rw-r--r--crates/ra_syntax/src/lib.rs2
-rw-r--r--crates/ra_syntax/src/syntax_error.rs23
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0000_struct_field_missing_comma.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0001_item_recovery_in_file.txt4
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0002_duplicate_shebang.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0003_C++_semicolon.txt4
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0004_use_path_bad_segment.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0005_attribute_recover.txt6
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0006_named_field_recovery.txt16
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0007_stray_curly_in_file.txt6
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0008_item_block_recovery.txt6
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0009_broken_struct_type_parameter.txt22
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0010_unsafe_lambda_block.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0011_extern_struct.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0013_invalid_type.txt36
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0014_where_no_bounds.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0015_curly_in_params.txt12
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0016_missing_semi.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0017_incomplete_binexpr.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0018_incomplete_fn.txt10
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0019_let_recover.txt20
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0020_fn_recover.txt6
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0021_incomplete_param.txt4
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0022_bad_exprs.txt78
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0023_mismatched_paren.txt4
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0024_many_type_parens.txt62
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0025_nope.txt22
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0026_imp_recovery.txt4
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0027_incomplere_where_for.txt4
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0028_macro_2.0.txt134
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0029_field_completion.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0030_string_suffixes.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0031_block_inner_attrs.txt8
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.txt22
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.txt6
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/err/0001_array_type_missing_semi.txt10
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/err/0002_misplaced_label_err.txt8
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/err/0003_pointer_type_no_mutability.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/err/0004_impl_type.txt8
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/err/0005_fn_pointer_type_missing_fn.txt10
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/err/0006_unsafe_block_in_mod.txt4
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/err/0007_async_without_semicolon.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/err/0008_pub_expr.txt2
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/err/0009_attr_on_expr_not_allowed.txt4
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/err/0010_bad_tuple_index_expr.txt6
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/err/0010_wrong_order_fns.txt4
47 files changed, 307 insertions, 297 deletions
diff --git a/crates/ra_lsp_server/tests/heavy_tests/main.rs b/crates/ra_lsp_server/tests/heavy_tests/main.rs
index f61048aaf..40d825893 100644
--- a/crates/ra_lsp_server/tests/heavy_tests/main.rs
+++ b/crates/ra_lsp_server/tests/heavy_tests/main.rs
@@ -18,7 +18,8 @@ use tempfile::TempDir;
18use crate::support::{project, Project}; 18use crate::support::{project, Project};
19 19
20const LOG: &'static str = ""; 20const LOG: &'static str = "";
21const PROFILE: &'static str = "*@3>100"; 21const PROFILE: &'static str = "";
22// const PROFILE: &'static str = "*@3>100";
22 23
23#[test] 24#[test]
24fn completes_items_from_standard_library() { 25fn completes_items_from_standard_library() {
diff --git a/crates/ra_syntax/src/lib.rs b/crates/ra_syntax/src/lib.rs
index 930a643b7..8c0ba6f2d 100644
--- a/crates/ra_syntax/src/lib.rs
+++ b/crates/ra_syntax/src/lib.rs
@@ -76,7 +76,7 @@ impl Parse {
76 pub fn debug_dump(&self) -> String { 76 pub fn debug_dump(&self) -> String {
77 let mut buf = self.tree.syntax().debug_dump(); 77 let mut buf = self.tree.syntax().debug_dump();
78 for err in self.errors.iter() { 78 for err in self.errors.iter() {
79 writeln!(buf, "err: `{}`", err).unwrap(); 79 writeln!(buf, "error {:?}: {}", err.location(), err.kind()).unwrap();
80 } 80 }
81 buf 81 buf
82 } 82 }
diff --git a/crates/ra_syntax/src/syntax_error.rs b/crates/ra_syntax/src/syntax_error.rs
index 27e12293b..d29c0cf6c 100644
--- a/crates/ra_syntax/src/syntax_error.rs
+++ b/crates/ra_syntax/src/syntax_error.rs
@@ -13,21 +13,30 @@ pub struct SyntaxError {
13 location: Location, 13 location: Location,
14} 14}
15 15
16#[derive(Debug, Clone, PartialEq, Eq, Hash)] 16#[derive(Clone, PartialEq, Eq, Hash)]
17pub enum Location { 17pub enum Location {
18 Offset(TextUnit), 18 Offset(TextUnit),
19 Range(TextRange), 19 Range(TextRange),
20} 20}
21 21
22impl Into<Location> for TextUnit { 22impl From<TextUnit> for Location {
23 fn into(self) -> Location { 23 fn from(offset: TextUnit) -> Location {
24 Location::Offset(self) 24 Location::Offset(offset)
25 }
26}
27
28impl From<TextRange> for Location {
29 fn from(range: TextRange) -> Location {
30 Location::Range(range)
25 } 31 }
26} 32}
27 33
28impl Into<Location> for TextRange { 34impl fmt::Debug for Location {
29 fn into(self) -> Location { 35 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
30 Location::Range(self) 36 match self {
37 Location::Offset(it) => fmt::Debug::fmt(it, f),
38 Location::Range(it) => fmt::Debug::fmt(it, f),
39 }
31 } 40 }
32} 41}
33 42
diff --git a/crates/ra_syntax/tests/data/parser/err/0000_struct_field_missing_comma.txt b/crates/ra_syntax/tests/data/parser/err/0000_struct_field_missing_comma.txt
index 0662052c5..0dbbfe853 100644
--- a/crates/ra_syntax/tests/data/parser/err/0000_struct_field_missing_comma.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0000_struct_field_missing_comma.txt
@@ -31,4 +31,4 @@ SOURCE_FILE@[0; 34)
31 IDENT@[29; 32) "u32" 31 IDENT@[29; 32) "u32"
32 WHITESPACE@[32; 33) "\n" 32 WHITESPACE@[32; 33) "\n"
33 R_CURLY@[33; 34) "}" 33 R_CURLY@[33; 34) "}"
34err: `expected COMMA` 34error 21: expected COMMA
diff --git a/crates/ra_syntax/tests/data/parser/err/0001_item_recovery_in_file.txt b/crates/ra_syntax/tests/data/parser/err/0001_item_recovery_in_file.txt
index 45044fe0a..7cfb54ef8 100644
--- a/crates/ra_syntax/tests/data/parser/err/0001_item_recovery_in_file.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0001_item_recovery_in_file.txt
@@ -14,5 +14,5 @@ SOURCE_FILE@[0; 21)
14 NAMED_FIELD_DEF_LIST@[19; 21) 14 NAMED_FIELD_DEF_LIST@[19; 21)
15 L_CURLY@[19; 20) "{" 15 L_CURLY@[19; 20) "{"
16 R_CURLY@[20; 21) "}" 16 R_CURLY@[20; 21) "}"
17err: `expected an item` 17error 0: expected an item
18err: `expected an item` 18error 3: expected an item
diff --git a/crates/ra_syntax/tests/data/parser/err/0002_duplicate_shebang.txt b/crates/ra_syntax/tests/data/parser/err/0002_duplicate_shebang.txt
index 1506acdfd..76d186a3c 100644
--- a/crates/ra_syntax/tests/data/parser/err/0002_duplicate_shebang.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0002_duplicate_shebang.txt
@@ -4,4 +4,4 @@ SOURCE_FILE@[0; 42)
4 ERROR@[21; 41) 4 ERROR@[21; 41)
5 SHEBANG@[21; 41) "#!/use/bin/env rusti" 5 SHEBANG@[21; 41) "#!/use/bin/env rusti"
6 WHITESPACE@[41; 42) "\n" 6 WHITESPACE@[41; 42) "\n"
7err: `expected an item` 7error 21: expected an item
diff --git a/crates/ra_syntax/tests/data/parser/err/0003_C++_semicolon.txt b/crates/ra_syntax/tests/data/parser/err/0003_C++_semicolon.txt
index 586baf1bb..857826037 100644
--- a/crates/ra_syntax/tests/data/parser/err/0003_C++_semicolon.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0003_C++_semicolon.txt
@@ -35,5 +35,5 @@ SOURCE_FILE@[0; 40)
35 R_CURLY@[38; 39) "}" 35 R_CURLY@[38; 39) "}"
36 ERROR@[39; 40) 36 ERROR@[39; 40)
37 SEMI@[39; 40) ";" 37 SEMI@[39; 40) ";"
38err: `expected item, found `;` 38error 39: expected item, found `;`
39consider removing this semicolon` 39consider removing this semicolon
diff --git a/crates/ra_syntax/tests/data/parser/err/0004_use_path_bad_segment.txt b/crates/ra_syntax/tests/data/parser/err/0004_use_path_bad_segment.txt
index a70223912..5210a884d 100644
--- a/crates/ra_syntax/tests/data/parser/err/0004_use_path_bad_segment.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0004_use_path_bad_segment.txt
@@ -13,4 +13,4 @@ SOURCE_FILE@[0; 12)
13 ERROR@[9; 11) 13 ERROR@[9; 11)
14 INT_NUMBER@[9; 11) "92" 14 INT_NUMBER@[9; 11) "92"
15 SEMI@[11; 12) ";" 15 SEMI@[11; 12) ";"
16err: `expected identifier` 16error 9: expected identifier
diff --git a/crates/ra_syntax/tests/data/parser/err/0005_attribute_recover.txt b/crates/ra_syntax/tests/data/parser/err/0005_attribute_recover.txt
index 9a6da88fe..6d5199a56 100644
--- a/crates/ra_syntax/tests/data/parser/err/0005_attribute_recover.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0005_attribute_recover.txt
@@ -50,6 +50,6 @@ SOURCE_FILE@[0; 54)
50 WHITESPACE@[51; 52) "\n" 50 WHITESPACE@[51; 52) "\n"
51 R_CURLY@[52; 53) "}" 51 R_CURLY@[52; 53) "}"
52 WHITESPACE@[53; 54) "\n" 52 WHITESPACE@[53; 54) "\n"
53err: `expected R_PAREN` 53error 53: expected R_PAREN
54err: `expected R_BRACK` 54error 53: expected R_BRACK
55err: `expected an item` 55error 53: expected an item
diff --git a/crates/ra_syntax/tests/data/parser/err/0006_named_field_recovery.txt b/crates/ra_syntax/tests/data/parser/err/0006_named_field_recovery.txt
index 5effbb60f..6143e68f1 100644
--- a/crates/ra_syntax/tests/data/parser/err/0006_named_field_recovery.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0006_named_field_recovery.txt
@@ -64,11 +64,11 @@ SOURCE_FILE@[0; 74)
64 WHITESPACE@[71; 72) "\n" 64 WHITESPACE@[71; 72) "\n"
65 R_CURLY@[72; 73) "}" 65 R_CURLY@[72; 73) "}"
66 WHITESPACE@[73; 74) "\n" 66 WHITESPACE@[73; 74) "\n"
67err: `expected field declaration` 67error 31: expected field declaration
68err: `expected COMMA` 68error 33: expected COMMA
69err: `expected field declaration` 69error 38: expected field declaration
70err: `expected COMMA` 70error 39: expected COMMA
71err: `expected field declaration` 71error 40: expected field declaration
72err: `expected COMMA` 72error 41: expected COMMA
73err: `expected field declaration` 73error 42: expected field declaration
74err: `expected COMMA` 74error 43: expected COMMA
diff --git a/crates/ra_syntax/tests/data/parser/err/0007_stray_curly_in_file.txt b/crates/ra_syntax/tests/data/parser/err/0007_stray_curly_in_file.txt
index ff59f5d71..b79e01238 100644
--- a/crates/ra_syntax/tests/data/parser/err/0007_stray_curly_in_file.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0007_stray_curly_in_file.txt
@@ -27,6 +27,6 @@ SOURCE_FILE@[0; 31)
27 ERROR@[29; 30) 27 ERROR@[29; 30)
28 R_CURLY@[29; 30) "}" 28 R_CURLY@[29; 30) "}"
29 WHITESPACE@[30; 31) "\n" 29 WHITESPACE@[30; 31) "\n"
30err: `unmatched `}`` 30error 0: unmatched `}`
31err: `unmatched `}`` 31error 14: unmatched `}`
32err: `unmatched `}`` 32error 29: unmatched `}`
diff --git a/crates/ra_syntax/tests/data/parser/err/0008_item_block_recovery.txt b/crates/ra_syntax/tests/data/parser/err/0008_item_block_recovery.txt
index 75f6b3b9c..9a8871579 100644
--- a/crates/ra_syntax/tests/data/parser/err/0008_item_block_recovery.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0008_item_block_recovery.txt
@@ -72,6 +72,6 @@ SOURCE_FILE@[0; 95)
72 WHITESPACE@[92; 93) "\n" 72 WHITESPACE@[92; 93) "\n"
73 R_CURLY@[93; 94) "}" 73 R_CURLY@[93; 94) "}"
74 WHITESPACE@[94; 95) "\n" 74 WHITESPACE@[94; 95) "\n"
75err: `expected EXCL` 75error 17: expected EXCL
76err: `expected SEMI` 76error 19: expected SEMI
77err: `expected an item` 77error 20: expected an item
diff --git a/crates/ra_syntax/tests/data/parser/err/0009_broken_struct_type_parameter.txt b/crates/ra_syntax/tests/data/parser/err/0009_broken_struct_type_parameter.txt
index 8aa8c3ef4..e147d6424 100644
--- a/crates/ra_syntax/tests/data/parser/err/0009_broken_struct_type_parameter.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0009_broken_struct_type_parameter.txt
@@ -45,14 +45,14 @@ SOURCE_FILE@[0; 43)
45 IDENT@[40; 41) "T" 45 IDENT@[40; 41) "T"
46 SEMI@[41; 42) ";" 46 SEMI@[41; 42) ";"
47 WHITESPACE@[42; 43) "\n" 47 WHITESPACE@[42; 43) "\n"
48err: `expected type parameter` 48error 9: expected type parameter
49err: `expected COMMA` 49error 11: expected COMMA
50err: `expected R_ANGLE` 50error 11: expected R_ANGLE
51err: `expected `;`, `{`, or `(`` 51error 11: expected `;`, `{`, or `(`
52err: `expected an item` 52error 12: expected an item
53err: `expected an item` 53error 14: expected an item
54err: `expected an item` 54error 15: expected an item
55err: `expected an item` 55error 17: expected an item
56err: `expected SEMI` 56error 24: expected SEMI
57err: `expected expression` 57error 24: expected expression
58err: `expected SEMI` 58error 25: expected SEMI
diff --git a/crates/ra_syntax/tests/data/parser/err/0010_unsafe_lambda_block.txt b/crates/ra_syntax/tests/data/parser/err/0010_unsafe_lambda_block.txt
index 22a1727f0..c46809f81 100644
--- a/crates/ra_syntax/tests/data/parser/err/0010_unsafe_lambda_block.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0010_unsafe_lambda_block.txt
@@ -39,4 +39,4 @@ SOURCE_FILE@[0; 42)
39 WHITESPACE@[39; 40) "\n" 39 WHITESPACE@[39; 40) "\n"
40 R_CURLY@[40; 41) "}" 40 R_CURLY@[40; 41) "}"
41 WHITESPACE@[41; 42) "\n" 41 WHITESPACE@[41; 42) "\n"
42err: `expected `{`` 42error 24: expected `{`
diff --git a/crates/ra_syntax/tests/data/parser/err/0011_extern_struct.txt b/crates/ra_syntax/tests/data/parser/err/0011_extern_struct.txt
index ee2a29d9f..033dac2aa 100644
--- a/crates/ra_syntax/tests/data/parser/err/0011_extern_struct.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0011_extern_struct.txt
@@ -10,4 +10,4 @@ SOURCE_FILE@[0; 19)
10 IDENT@[14; 17) "Foo" 10 IDENT@[14; 17) "Foo"
11 SEMI@[17; 18) ";" 11 SEMI@[17; 18) ";"
12 WHITESPACE@[18; 19) "\n" 12 WHITESPACE@[18; 19) "\n"
13err: `expected fn, trait or impl` 13error 6: expected fn, trait or impl
diff --git a/crates/ra_syntax/tests/data/parser/err/0013_invalid_type.txt b/crates/ra_syntax/tests/data/parser/err/0013_invalid_type.txt
index 1f5cc55c0..bef286b37 100644
--- a/crates/ra_syntax/tests/data/parser/err/0013_invalid_type.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0013_invalid_type.txt
@@ -69,21 +69,21 @@ SOURCE_FILE@[0; 86)
69 ERROR@[83; 84) 69 ERROR@[83; 84)
70 SEMI@[83; 84) ";" 70 SEMI@[83; 84) ";"
71 WHITESPACE@[84; 86) "\n\n" 71 WHITESPACE@[84; 86) "\n\n"
72err: `expected type` 72error 67: expected type
73err: `expected COMMA` 73error 68: expected COMMA
74err: `expected R_ANGLE` 74error 68: expected R_ANGLE
75err: `expected COMMA` 75error 68: expected COMMA
76err: `expected R_ANGLE` 76error 68: expected R_ANGLE
77err: `expected COMMA` 77error 68: expected COMMA
78err: `expected R_ANGLE` 78error 68: expected R_ANGLE
79err: `expected COMMA` 79error 68: expected COMMA
80err: `expected COMMA` 80error 72: expected COMMA
81err: `expected a type` 81error 72: expected a type
82err: `expected R_PAREN` 82error 72: expected R_PAREN
83err: `expected SEMI` 83error 72: expected SEMI
84err: `expected an item` 84error 72: expected an item
85err: `expected an item` 85error 73: expected an item
86err: `expected an item` 86error 79: expected an item
87err: `expected an item` 87error 80: expected an item
88err: `expected an item` 88error 82: expected an item
89err: `expected an item` 89error 83: expected an item
diff --git a/crates/ra_syntax/tests/data/parser/err/0014_where_no_bounds.txt b/crates/ra_syntax/tests/data/parser/err/0014_where_no_bounds.txt
index 276a58b69..2f0878572 100644
--- a/crates/ra_syntax/tests/data/parser/err/0014_where_no_bounds.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0014_where_no_bounds.txt
@@ -28,4 +28,4 @@ SOURCE_FILE@[0; 23)
28 L_CURLY@[20; 21) "{" 28 L_CURLY@[20; 21) "{"
29 R_CURLY@[21; 22) "}" 29 R_CURLY@[21; 22) "}"
30 WHITESPACE@[22; 23) "\n" 30 WHITESPACE@[22; 23) "\n"
31err: `expected colon` 31error 19: expected colon
diff --git a/crates/ra_syntax/tests/data/parser/err/0015_curly_in_params.txt b/crates/ra_syntax/tests/data/parser/err/0015_curly_in_params.txt
index 8f93b832d..23ca0c446 100644
--- a/crates/ra_syntax/tests/data/parser/err/0015_curly_in_params.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0015_curly_in_params.txt
@@ -16,9 +16,9 @@ SOURCE_FILE@[0; 14)
16 WHITESPACE@[11; 12) "\n" 16 WHITESPACE@[11; 12) "\n"
17 R_CURLY@[12; 13) "}" 17 R_CURLY@[12; 13) "}"
18 WHITESPACE@[13; 14) "\n" 18 WHITESPACE@[13; 14) "\n"
19err: `expected value parameter` 19error 7: expected value parameter
20err: `expected R_PAREN` 20error 7: expected R_PAREN
21err: `expected a block` 21error 7: expected a block
22err: `unmatched `}`` 22error 7: unmatched `}`
23err: `expected an item` 23error 8: expected an item
24err: `expected an item` 24error 10: expected an item
diff --git a/crates/ra_syntax/tests/data/parser/err/0016_missing_semi.txt b/crates/ra_syntax/tests/data/parser/err/0016_missing_semi.txt
index 105e45a35..97e64dea9 100644
--- a/crates/ra_syntax/tests/data/parser/err/0016_missing_semi.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0016_missing_semi.txt
@@ -40,4 +40,4 @@ SOURCE_FILE@[0; 56)
40 WHITESPACE@[53; 54) "\n" 40 WHITESPACE@[53; 54) "\n"
41 R_CURLY@[54; 55) "}" 41 R_CURLY@[54; 55) "}"
42 WHITESPACE@[55; 56) "\n" 42 WHITESPACE@[55; 56) "\n"
43err: `expected SEMI` 43error 38: expected SEMI
diff --git a/crates/ra_syntax/tests/data/parser/err/0017_incomplete_binexpr.txt b/crates/ra_syntax/tests/data/parser/err/0017_incomplete_binexpr.txt
index 751740620..c18e20900 100644
--- a/crates/ra_syntax/tests/data/parser/err/0017_incomplete_binexpr.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0017_incomplete_binexpr.txt
@@ -43,4 +43,4 @@ SOURCE_FILE@[0; 47)
43 WHITESPACE@[44; 45) "\n" 43 WHITESPACE@[44; 45) "\n"
44 R_CURLY@[45; 46) "}" 44 R_CURLY@[45; 46) "}"
45 WHITESPACE@[46; 47) "\n" 45 WHITESPACE@[46; 47) "\n"
46err: `expected expression` 46error 44: expected expression
diff --git a/crates/ra_syntax/tests/data/parser/err/0018_incomplete_fn.txt b/crates/ra_syntax/tests/data/parser/err/0018_incomplete_fn.txt
index 82908b8f2..51def2d8f 100644
--- a/crates/ra_syntax/tests/data/parser/err/0018_incomplete_fn.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0018_incomplete_fn.txt
@@ -124,8 +124,8 @@ SOURCE_FILE@[0; 183)
124 WHITESPACE@[180; 181) "\n" 124 WHITESPACE@[180; 181) "\n"
125 R_CURLY@[181; 182) "}" 125 R_CURLY@[181; 182) "}"
126 WHITESPACE@[182; 183) "\n" 126 WHITESPACE@[182; 183) "\n"
127err: `expected pattern` 127error 34: expected pattern
128err: `expected COLON` 128error 34: expected COLON
129err: `expected type` 129error 34: expected type
130err: `expected function arguments` 130error 180: expected function arguments
131err: `expected a block` 131error 180: expected a block
diff --git a/crates/ra_syntax/tests/data/parser/err/0019_let_recover.txt b/crates/ra_syntax/tests/data/parser/err/0019_let_recover.txt
index 4a1b84ee5..b6710241e 100644
--- a/crates/ra_syntax/tests/data/parser/err/0019_let_recover.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0019_let_recover.txt
@@ -91,13 +91,13 @@ SOURCE_FILE@[0; 139)
91 WHITESPACE@[136; 137) "\n" 91 WHITESPACE@[136; 137) "\n"
92 R_CURLY@[137; 138) "}" 92 R_CURLY@[137; 138) "}"
93 WHITESPACE@[138; 139) "\n" 93 WHITESPACE@[138; 139) "\n"
94err: `expected expression` 94error 24: expected expression
95err: `expected SEMI` 95error 24: expected SEMI
96err: `expected pattern` 96error 49: expected pattern
97err: `expected SEMI` 97error 49: expected SEMI
98err: `expected pattern` 98error 75: expected pattern
99err: `expected SEMI` 99error 75: expected SEMI
100err: `expected pattern` 100error 98: expected pattern
101err: `expected SEMI` 101error 98: expected SEMI
102err: `expected pattern` 102error 124: expected pattern
103err: `expected SEMI` 103error 124: expected SEMI
diff --git a/crates/ra_syntax/tests/data/parser/err/0020_fn_recover.txt b/crates/ra_syntax/tests/data/parser/err/0020_fn_recover.txt
index d7ac73afa..71c014028 100644
--- a/crates/ra_syntax/tests/data/parser/err/0020_fn_recover.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0020_fn_recover.txt
@@ -15,6 +15,6 @@ SOURCE_FILE@[0; 16)
15 L_CURLY@[13; 14) "{" 15 L_CURLY@[13; 14) "{"
16 R_CURLY@[14; 15) "}" 16 R_CURLY@[14; 15) "}"
17 WHITESPACE@[15; 16) "\n" 17 WHITESPACE@[15; 16) "\n"
18err: `expected a name` 18error 2: expected a name
19err: `expected function arguments` 19error 2: expected function arguments
20err: `expected a block` 20error 2: expected a block
diff --git a/crates/ra_syntax/tests/data/parser/err/0021_incomplete_param.txt b/crates/ra_syntax/tests/data/parser/err/0021_incomplete_param.txt
index 086224eee..c125a0bc9 100644
--- a/crates/ra_syntax/tests/data/parser/err/0021_incomplete_param.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0021_incomplete_param.txt
@@ -30,5 +30,5 @@ SOURCE_FILE@[0; 22)
30 WHITESPACE@[19; 20) "\n" 30 WHITESPACE@[19; 20) "\n"
31 R_CURLY@[20; 21) "}" 31 R_CURLY@[20; 21) "}"
32 WHITESPACE@[21; 22) "\n" 32 WHITESPACE@[21; 22) "\n"
33err: `expected COLON` 33error 16: expected COLON
34err: `expected type` 34error 16: expected type
diff --git a/crates/ra_syntax/tests/data/parser/err/0022_bad_exprs.txt b/crates/ra_syntax/tests/data/parser/err/0022_bad_exprs.txt
index d7a5fa1d2..32b53bba7 100644
--- a/crates/ra_syntax/tests/data/parser/err/0022_bad_exprs.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0022_bad_exprs.txt
@@ -148,42 +148,42 @@ SOURCE_FILE@[0; 112)
148 WHITESPACE@[109; 110) " " 148 WHITESPACE@[109; 110) " "
149 R_CURLY@[110; 111) "}" 149 R_CURLY@[110; 111) "}"
150 WHITESPACE@[111; 112) "\n" 150 WHITESPACE@[111; 112) "\n"
151err: `expected expression` 151error 15: expected expression
152err: `expected R_BRACK` 152error 15: expected R_BRACK
153err: `expected SEMI` 153error 15: expected SEMI
154err: `expected expression` 154error 16: expected expression
155err: `expected SEMI` 155error 17: expected SEMI
156err: `expected expression` 156error 17: expected expression
157err: `expected SEMI` 157error 18: expected SEMI
158err: `expected a name` 158error 25: expected a name
159err: `expected `;`, `{`, or `(`` 159error 26: expected `;`, `{`, or `(`
160err: `expected pattern` 160error 30: expected pattern
161err: `expected SEMI` 161error 31: expected SEMI
162err: `expected expression` 162error 52: expected expression
163err: `expected SEMI` 163error 52: expected SEMI
164err: `expected expression` 164error 53: expected expression
165err: `expected SEMI` 165error 54: expected SEMI
166err: `expected expression` 166error 54: expected expression
167err: `expected SEMI` 167error 55: expected SEMI
168err: `expected type` 168error 60: expected type
169err: `expected `{`` 169error 60: expected `{`
170err: `expected expression` 170error 60: expected expression
171err: `expected SEMI` 171error 61: expected SEMI
172err: `expected pattern` 172error 65: expected pattern
173err: `expected SEMI` 173error 65: expected SEMI
174err: `expected expression` 174error 65: expected expression
175err: `expected expression` 175error 91: expected expression
176err: `expected SEMI` 176error 91: expected SEMI
177err: `expected expression` 177error 92: expected expression
178err: `expected SEMI` 178error 93: expected SEMI
179err: `expected expression` 179error 93: expected expression
180err: `expected SEMI` 180error 94: expected SEMI
181err: `expected expression` 181error 95: expected expression
182err: `expected SEMI` 182error 96: expected SEMI
183err: `expected expression` 183error 96: expected expression
184err: `expected SEMI` 184error 97: expected SEMI
185err: `expected a name` 185error 103: expected a name
186err: `expected `{`` 186error 104: expected `{`
187err: `expected pattern` 187error 108: expected pattern
188err: `expected SEMI` 188error 108: expected SEMI
189err: `expected expression` 189error 108: expected expression
diff --git a/crates/ra_syntax/tests/data/parser/err/0023_mismatched_paren.txt b/crates/ra_syntax/tests/data/parser/err/0023_mismatched_paren.txt
index 143600e67..f2515faa7 100644
--- a/crates/ra_syntax/tests/data/parser/err/0023_mismatched_paren.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0023_mismatched_paren.txt
@@ -39,5 +39,5 @@ SOURCE_FILE@[0; 94)
39 ERROR@[92; 93) 39 ERROR@[92; 93)
40 R_CURLY@[92; 93) "}" 40 R_CURLY@[92; 93) "}"
41 WHITESPACE@[93; 94) "\n" 41 WHITESPACE@[93; 94) "\n"
42err: `unmatched `}`` 42error 49: unmatched `}`
43err: `unmatched `}`` 43error 92: unmatched `}`
diff --git a/crates/ra_syntax/tests/data/parser/err/0024_many_type_parens.txt b/crates/ra_syntax/tests/data/parser/err/0024_many_type_parens.txt
index 4f505fa76..faf0fe462 100644
--- a/crates/ra_syntax/tests/data/parser/err/0024_many_type_parens.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0024_many_type_parens.txt
@@ -291,34 +291,34 @@ SOURCE_FILE@[0; 240)
291 WHITESPACE@[237; 238) "\n" 291 WHITESPACE@[237; 238) "\n"
292 R_CURLY@[238; 239) "}" 292 R_CURLY@[238; 239) "}"
293 WHITESPACE@[239; 240) "\n" 293 WHITESPACE@[239; 240) "\n"
294err: `expected COMMA` 294error 88: expected COMMA
295err: `expected R_ANGLE` 295error 88: expected R_ANGLE
296err: `expected SEMI` 296error 121: expected SEMI
297err: `expected expression` 297error 121: expected expression
298err: `expected type` 298error 140: expected type
299err: `expected R_PAREN` 299error 141: expected R_PAREN
300err: `expected COMMA` 300error 141: expected COMMA
301err: `expected R_ANGLE` 301error 141: expected R_ANGLE
302err: `expected SEMI` 302error 141: expected SEMI
303err: `expected SEMI` 303error 146: expected SEMI
304err: `expected expression` 304error 146: expected expression
305err: `expected SEMI` 305error 147: expected SEMI
306err: `expected expression` 306error 148: expected expression
307err: `expected SEMI` 307error 149: expected SEMI
308err: `expected expression` 308error 151: expected expression
309err: `expected R_PAREN` 309error 151: expected R_PAREN
310err: `expected SEMI` 310error 151: expected SEMI
311err: `expected pattern` 311error 154: expected pattern
312err: `expected IN_KW` 312error 155: expected IN_KW
313err: `expected expression` 313error 155: expected expression
314err: `expected a block` 314error 157: expected a block
315err: `expected expression` 315error 157: expected expression
316err: `expected SEMI` 316error 158: expected SEMI
317err: `expected expression` 317error 165: expected expression
318err: `expected expression` 318error 168: expected expression
319err: `expected expression` 319error 179: expected expression
320err: `expected SEMI` 320error 180: expected SEMI
321err: `expected COMMA` 321error 215: expected COMMA
322err: `expected R_ANGLE` 322error 215: expected R_ANGLE
323err: `expected SEMI` 323error 235: expected SEMI
324err: `expected expression` 324error 235: expected expression
diff --git a/crates/ra_syntax/tests/data/parser/err/0025_nope.txt b/crates/ra_syntax/tests/data/parser/err/0025_nope.txt
index a1bd8647a..0a3952dc9 100644
--- a/crates/ra_syntax/tests/data/parser/err/0025_nope.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0025_nope.txt
@@ -190,14 +190,14 @@ SOURCE_FILE@[0; 575)
190 WHITESPACE@[572; 573) "\n" 190 WHITESPACE@[572; 573) "\n"
191 R_CURLY@[573; 574) "}" 191 R_CURLY@[573; 574) "}"
192 WHITESPACE@[574; 575) "\n" 192 WHITESPACE@[574; 575) "\n"
193err: `expected type` 193error 95: expected type
194err: `expected COMMA` 194error 95: expected COMMA
195err: `expected field` 195error 96: expected field
196err: `expected field declaration` 196error 98: expected field declaration
197err: `expected COMMA` 197error 371: expected COMMA
198err: `expected a type` 198error 372: expected a type
199err: `expected R_PAREN` 199error 372: expected R_PAREN
200err: `expected COMMA` 200error 372: expected COMMA
201err: `expected enum variant` 201error 372: expected enum variant
202err: `expected enum variant` 202error 374: expected enum variant
203err: `expected expression` 203error 508: expected expression
diff --git a/crates/ra_syntax/tests/data/parser/err/0026_imp_recovery.txt b/crates/ra_syntax/tests/data/parser/err/0026_imp_recovery.txt
index f473718dc..d3da2f54f 100644
--- a/crates/ra_syntax/tests/data/parser/err/0026_imp_recovery.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0026_imp_recovery.txt
@@ -45,5 +45,5 @@ SOURCE_FILE@[0; 38)
45 L_CURLY@[35; 36) "{" 45 L_CURLY@[35; 36) "{"
46 R_CURLY@[36; 37) "}" 46 R_CURLY@[36; 37) "}"
47 WHITESPACE@[37; 38) "\n" 47 WHITESPACE@[37; 38) "\n"
48err: `expected trait or type` 48error 14: expected trait or type
49err: `expected `{`` 49error 14: expected `{`
diff --git a/crates/ra_syntax/tests/data/parser/err/0027_incomplere_where_for.txt b/crates/ra_syntax/tests/data/parser/err/0027_incomplere_where_for.txt
index 5a2b52d05..061e6fb31 100644
--- a/crates/ra_syntax/tests/data/parser/err/0027_incomplere_where_for.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0027_incomplere_where_for.txt
@@ -24,5 +24,5 @@ SOURCE_FILE@[0; 30)
24 L_CURLY@[27; 28) "{" 24 L_CURLY@[27; 28) "{"
25 R_CURLY@[28; 29) "}" 25 R_CURLY@[28; 29) "}"
26 WHITESPACE@[29; 30) "\n" 26 WHITESPACE@[29; 30) "\n"
27err: `expected a path` 27error 26: expected a path
28err: `expected colon` 28error 26: expected colon
diff --git a/crates/ra_syntax/tests/data/parser/err/0028_macro_2.0.txt b/crates/ra_syntax/tests/data/parser/err/0028_macro_2.0.txt
index 8a59a5ac3..98bc562a3 100644
--- a/crates/ra_syntax/tests/data/parser/err/0028_macro_2.0.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0028_macro_2.0.txt
@@ -256,70 +256,70 @@ SOURCE_FILE@[0; 349)
256 WHITESPACE@[346; 347) "\n" 256 WHITESPACE@[346; 347) "\n"
257 R_CURLY@[347; 348) "}" 257 R_CURLY@[347; 348) "}"
258 WHITESPACE@[348; 349) "\n" 258 WHITESPACE@[348; 349) "\n"
259err: `expected EXCL` 259error 5: expected EXCL
260err: `expected SEMI` 260error 41: expected SEMI
261err: `expected an item` 261error 42: expected an item
262err: `expected SEMI` 262error 139: expected SEMI
263err: `expected expression` 263error 152: expected expression
264err: `expected COMMA` 264error 153: expected COMMA
265err: `expected expression` 265error 154: expected expression
266err: `expected R_PAREN` 266error 154: expected R_PAREN
267err: `expected COMMA` 267error 154: expected COMMA
268err: `expected expression` 268error 154: expected expression
269err: `expected R_BRACK` 269error 154: expected R_BRACK
270err: `expected COMMA` 270error 154: expected COMMA
271err: `expected SEMI` 271error 154: expected SEMI
272err: `expected expression` 272error 154: expected expression
273err: `expected SEMI` 273error 155: expected SEMI
274err: `expected SEMI` 274error 160: expected SEMI
275err: `expected expression` 275error 160: expected expression
276err: `expected SEMI` 276error 161: expected SEMI
277err: `expected SEMI` 277error 165: expected SEMI
278err: `expected expression` 278error 165: expected expression
279err: `expected SEMI` 279error 166: expected SEMI
280err: `expected expression` 280error 166: expected expression
281err: `expected SEMI` 281error 167: expected SEMI
282err: `expected expression` 282error 169: expected expression
283err: `expected SEMI` 283error 170: expected SEMI
284err: `expected expression` 284error 171: expected expression
285err: `expected R_PAREN` 285error 171: expected R_PAREN
286err: `expected SEMI` 286error 171: expected SEMI
287err: `expected expression` 287error 171: expected expression
288err: `expected SEMI` 288error 172: expected SEMI
289err: `expected expression` 289error 172: expected expression
290err: `expected SEMI` 290error 173: expected SEMI
291err: `expected expression` 291error 174: expected expression
292err: `expected SEMI` 292error 175: expected SEMI
293err: `expected expression` 293error 175: expected expression
294err: `expected SEMI` 294error 176: expected SEMI
295err: `expected expression` 295error 178: expected expression
296err: `expected COMMA` 296error 179: expected COMMA
297err: `expected expression` 297error 180: expected expression
298err: `expected R_PAREN` 298error 180: expected R_PAREN
299err: `expected COMMA` 299error 180: expected COMMA
300err: `expected expression` 300error 180: expected expression
301err: `expected R_BRACK` 301error 180: expected R_BRACK
302err: `expected SEMI` 302error 180: expected SEMI
303err: `expected expression` 303error 180: expected expression
304err: `expected SEMI` 304error 181: expected SEMI
305err: `expected SEMI` 305error 187: expected SEMI
306err: `expected expression` 306error 187: expected expression
307err: `expected SEMI` 307error 188: expected SEMI
308err: `expected SEMI` 308error 192: expected SEMI
309err: `expected expression` 309error 192: expected expression
310err: `expected SEMI` 310error 193: expected SEMI
311err: `expected expression` 311error 193: expected expression
312err: `expected SEMI` 312error 194: expected SEMI
313err: `expected expression` 313error 196: expected expression
314err: `expected SEMI` 314error 197: expected SEMI
315err: `expected expression` 315error 198: expected expression
316err: `expected R_PAREN` 316error 198: expected R_PAREN
317err: `expected SEMI` 317error 198: expected SEMI
318err: `expected expression` 318error 198: expected expression
319err: `expected SEMI` 319error 199: expected SEMI
320err: `expected expression` 320error 199: expected expression
321err: `expected SEMI` 321error 200: expected SEMI
322err: `expected expression` 322error 201: expected expression
323err: `expected SEMI` 323error 202: expected SEMI
324err: `expected expression` 324error 202: expected expression
325err: `expected SEMI` 325error 203: expected SEMI
diff --git a/crates/ra_syntax/tests/data/parser/err/0029_field_completion.txt b/crates/ra_syntax/tests/data/parser/err/0029_field_completion.txt
index fa92f0845..fb50a12fc 100644
--- a/crates/ra_syntax/tests/data/parser/err/0029_field_completion.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0029_field_completion.txt
@@ -32,4 +32,4 @@ SOURCE_FILE@[0; 24)
32 WHITESPACE@[21; 22) "\n" 32 WHITESPACE@[21; 22) "\n"
33 R_CURLY@[22; 23) "}" 33 R_CURLY@[22; 23) "}"
34 WHITESPACE@[23; 24) "\n" 34 WHITESPACE@[23; 24) "\n"
35err: `expected field name or number` 35error 21: expected field name or number
diff --git a/crates/ra_syntax/tests/data/parser/err/0030_string_suffixes.txt b/crates/ra_syntax/tests/data/parser/err/0030_string_suffixes.txt
index fb6d3c9c7..b0acfa5d2 100644
--- a/crates/ra_syntax/tests/data/parser/err/0030_string_suffixes.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0030_string_suffixes.txt
@@ -67,4 +67,4 @@ SOURCE_FILE@[0; 112)
67 WHITESPACE@[109; 110) "\n" 67 WHITESPACE@[109; 110) "\n"
68 R_CURLY@[110; 111) "}" 68 R_CURLY@[110; 111) "}"
69 WHITESPACE@[111; 112) "\n" 69 WHITESPACE@[111; 112) "\n"
70err: `expected SEMI` 70error 27: expected SEMI
diff --git a/crates/ra_syntax/tests/data/parser/err/0031_block_inner_attrs.txt b/crates/ra_syntax/tests/data/parser/err/0031_block_inner_attrs.txt
index b4ec999b1..c205cf147 100644
--- a/crates/ra_syntax/tests/data/parser/err/0031_block_inner_attrs.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0031_block_inner_attrs.txt
@@ -108,7 +108,7 @@ SOURCE_FILE@[0; 350)
108 WHITESPACE@[347; 348) "\n" 108 WHITESPACE@[347; 348) "\n"
109 R_CURLY@[348; 349) "}" 109 R_CURLY@[348; 349) "}"
110 WHITESPACE@[349; 350) "\n" 110 WHITESPACE@[349; 350) "\n"
111err: `A block in this position cannot accept inner attributes` 111error [39; 83): A block in this position cannot accept inner attributes
112err: `A block in this position cannot accept inner attributes` 112error [152; 171): A block in this position cannot accept inner attributes
113err: `A block in this position cannot accept inner attributes` 113error [180; 212): A block in this position cannot accept inner attributes
114err: `A block in this position cannot accept inner attributes` 114error [283; 302): A block in this position cannot accept inner attributes
diff --git a/crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.txt b/crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.txt
index a3c53f353..4e8c4143b 100644
--- a/crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.txt
@@ -188,14 +188,14 @@ SOURCE_FILE@[0; 293)
188 WHITESPACE@[290; 291) "\n" 188 WHITESPACE@[290; 291) "\n"
189 R_CURLY@[291; 292) "}" 189 R_CURLY@[291; 292) "}"
190 WHITESPACE@[292; 293) "\n" 190 WHITESPACE@[292; 293) "\n"
191err: `expected `[`` 191error 52: expected `[`
192err: `expected pattern` 192error 52: expected pattern
193err: `expected FAT_ARROW` 193error 53: expected FAT_ARROW
194err: `expected COMMA` 194error 78: expected COMMA
195err: `expected `[`` 195error 161: expected `[`
196err: `expected pattern` 196error 161: expected pattern
197err: `expected FAT_ARROW` 197error 162: expected FAT_ARROW
198err: `expected `[`` 198error 232: expected `[`
199err: `expected pattern` 199error 232: expected pattern
200err: `expected FAT_ARROW` 200error 233: expected FAT_ARROW
201err: `expected COMMA` 201error 250: expected COMMA
diff --git a/crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.txt b/crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.txt
index 7bcf5ec81..e4f1f6337 100644
--- a/crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.txt
@@ -59,6 +59,6 @@ SOURCE_FILE@[0; 89)
59 WHITESPACE@[86; 87) "\n" 59 WHITESPACE@[86; 87) "\n"
60 R_CURLY@[87; 88) "}" 60 R_CURLY@[87; 88) "}"
61 WHITESPACE@[88; 89) "\n" 61 WHITESPACE@[88; 89) "\n"
62err: `expected pattern` 62error 80: expected pattern
63err: `expected FAT_ARROW` 63error 80: expected FAT_ARROW
64err: `expected expression` 64error 80: expected expression
diff --git a/crates/ra_syntax/tests/data/parser/inline/err/0001_array_type_missing_semi.txt b/crates/ra_syntax/tests/data/parser/inline/err/0001_array_type_missing_semi.txt
index eb6d98fcd..3f0f1b480 100644
--- a/crates/ra_syntax/tests/data/parser/inline/err/0001_array_type_missing_semi.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/err/0001_array_type_missing_semi.txt
@@ -20,8 +20,8 @@ SOURCE_FILE@[0; 18)
20 ERROR@[16; 17) 20 ERROR@[16; 17)
21 SEMI@[16; 17) ";" 21 SEMI@[16; 17) ";"
22 WHITESPACE@[17; 18) "\n" 22 WHITESPACE@[17; 18) "\n"
23err: `expected `;` or `]`` 23error 12: expected `;` or `]`
24err: `expected SEMI` 24error 12: expected SEMI
25err: `expected an item` 25error 13: expected an item
26err: `expected an item` 26error 15: expected an item
27err: `expected an item` 27error 16: expected an item
diff --git a/crates/ra_syntax/tests/data/parser/inline/err/0002_misplaced_label_err.txt b/crates/ra_syntax/tests/data/parser/inline/err/0002_misplaced_label_err.txt
index b1d104bd4..7abc49d5e 100644
--- a/crates/ra_syntax/tests/data/parser/inline/err/0002_misplaced_label_err.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/err/0002_misplaced_label_err.txt
@@ -22,7 +22,7 @@ SOURCE_FILE@[0; 30)
22 WHITESPACE@[27; 28) "\n" 22 WHITESPACE@[27; 28) "\n"
23 R_CURLY@[28; 29) "}" 23 R_CURLY@[28; 29) "}"
24 WHITESPACE@[29; 30) "\n" 24 WHITESPACE@[29; 30) "\n"
25err: `expected a loop` 25error 22: expected a loop
26err: `expected SEMI` 26error 22: expected SEMI
27err: `expected type` 27error 27: expected type
28err: `expected `{`` 28error 27: expected `{`
diff --git a/crates/ra_syntax/tests/data/parser/inline/err/0003_pointer_type_no_mutability.txt b/crates/ra_syntax/tests/data/parser/inline/err/0003_pointer_type_no_mutability.txt
index b470d9ad1..b97e339bb 100644
--- a/crates/ra_syntax/tests/data/parser/inline/err/0003_pointer_type_no_mutability.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/err/0003_pointer_type_no_mutability.txt
@@ -14,4 +14,4 @@ SOURCE_FILE@[0; 14)
14 R_PAREN@[11; 12) ")" 14 R_PAREN@[11; 12) ")"
15 SEMI@[12; 13) ";" 15 SEMI@[12; 13) ";"
16 WHITESPACE@[13; 14) "\n" 16 WHITESPACE@[13; 14) "\n"
17err: `expected mut or const in raw pointer type (use `*mut T` or `*const T` as appropriate)` 17error 10: expected mut or const in raw pointer type (use `*mut T` or `*const T` as appropriate)
diff --git a/crates/ra_syntax/tests/data/parser/inline/err/0004_impl_type.txt b/crates/ra_syntax/tests/data/parser/inline/err/0004_impl_type.txt
index ef4e0d5dd..43321b1ed 100644
--- a/crates/ra_syntax/tests/data/parser/inline/err/0004_impl_type.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/err/0004_impl_type.txt
@@ -73,7 +73,7 @@ SOURCE_FILE@[0; 87)
73 L_CURLY@[84; 85) "{" 73 L_CURLY@[84; 85) "{"
74 R_CURLY@[85; 86) "}" 74 R_CURLY@[85; 86) "}"
75 WHITESPACE@[86; 87) "\n" 75 WHITESPACE@[86; 87) "\n"
76err: `expected trait or type` 76error 38: expected trait or type
77err: `expected `{`` 77error 38: expected `{`
78err: `expected trait or type` 78error 70: expected trait or type
79err: `expected `{`` 79error 70: expected `{`
diff --git a/crates/ra_syntax/tests/data/parser/inline/err/0005_fn_pointer_type_missing_fn.txt b/crates/ra_syntax/tests/data/parser/inline/err/0005_fn_pointer_type_missing_fn.txt
index 41e623b41..451f29d39 100644
--- a/crates/ra_syntax/tests/data/parser/inline/err/0005_fn_pointer_type_missing_fn.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/err/0005_fn_pointer_type_missing_fn.txt
@@ -16,8 +16,8 @@ SOURCE_FILE@[0; 20)
16 ERROR@[18; 19) 16 ERROR@[18; 19)
17 SEMI@[18; 19) ";" 17 SEMI@[18; 19) ";"
18 WHITESPACE@[19; 20) "\n" 18 WHITESPACE@[19; 20) "\n"
19err: `expected `fn`` 19error 15: expected `fn`
20err: `expected SEMI` 20error 15: expected SEMI
21err: `expected an item` 21error 16: expected an item
22err: `expected an item` 22error 17: expected an item
23err: `expected an item` 23error 18: expected an item
diff --git a/crates/ra_syntax/tests/data/parser/inline/err/0006_unsafe_block_in_mod.txt b/crates/ra_syntax/tests/data/parser/inline/err/0006_unsafe_block_in_mod.txt
index f1d0dd5c6..a1871ec08 100644
--- a/crates/ra_syntax/tests/data/parser/inline/err/0006_unsafe_block_in_mod.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/err/0006_unsafe_block_in_mod.txt
@@ -31,5 +31,5 @@ SOURCE_FILE@[0; 33)
31 L_CURLY@[30; 31) "{" 31 L_CURLY@[30; 31) "{"
32 R_CURLY@[31; 32) "}" 32 R_CURLY@[31; 32) "}"
33 WHITESPACE@[32; 33) "\n" 33 WHITESPACE@[32; 33) "\n"
34err: `expected an item` 34error 11: expected an item
35err: `expected an item` 35error 18: expected an item
diff --git a/crates/ra_syntax/tests/data/parser/inline/err/0007_async_without_semicolon.txt b/crates/ra_syntax/tests/data/parser/inline/err/0007_async_without_semicolon.txt
index 1a8fa029c..f70adc25d 100644
--- a/crates/ra_syntax/tests/data/parser/inline/err/0007_async_without_semicolon.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/err/0007_async_without_semicolon.txt
@@ -28,4 +28,4 @@ SOURCE_FILE@[0; 30)
28 WHITESPACE@[27; 28) " " 28 WHITESPACE@[27; 28) " "
29 R_CURLY@[28; 29) "}" 29 R_CURLY@[28; 29) "}"
30 WHITESPACE@[29; 30) "\n" 30 WHITESPACE@[29; 30) "\n"
31err: `expected SEMI` 31error 27: expected SEMI
diff --git a/crates/ra_syntax/tests/data/parser/inline/err/0008_pub_expr.txt b/crates/ra_syntax/tests/data/parser/inline/err/0008_pub_expr.txt
index cadbbc078..1dbfca698 100644
--- a/crates/ra_syntax/tests/data/parser/inline/err/0008_pub_expr.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/err/0008_pub_expr.txt
@@ -22,4 +22,4 @@ SOURCE_FILE@[0; 21)
22 WHITESPACE@[18; 19) " " 22 WHITESPACE@[18; 19) " "
23 R_CURLY@[19; 20) "}" 23 R_CURLY@[19; 20) "}"
24 WHITESPACE@[20; 21) "\n" 24 WHITESPACE@[20; 21) "\n"
25err: `expected an item` 25error 14: expected an item
diff --git a/crates/ra_syntax/tests/data/parser/inline/err/0009_attr_on_expr_not_allowed.txt b/crates/ra_syntax/tests/data/parser/inline/err/0009_attr_on_expr_not_allowed.txt
index 8e7d7d241..338776a72 100644
--- a/crates/ra_syntax/tests/data/parser/inline/err/0009_attr_on_expr_not_allowed.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/err/0009_attr_on_expr_not_allowed.txt
@@ -51,5 +51,5 @@ SOURCE_FILE@[0; 48)
51 WHITESPACE@[45; 46) "\n" 51 WHITESPACE@[45; 46) "\n"
52 R_CURLY@[46; 47) "}" 52 R_CURLY@[46; 47) "}"
53 WHITESPACE@[47; 48) "\n" 53 WHITESPACE@[47; 48) "\n"
54err: `attributes are not allowed on BIN_EXPR` 54error 24: attributes are not allowed on BIN_EXPR
55err: `attributes are not allowed on IF_EXPR` 55error 44: attributes are not allowed on IF_EXPR
diff --git a/crates/ra_syntax/tests/data/parser/inline/err/0010_bad_tuple_index_expr.txt b/crates/ra_syntax/tests/data/parser/inline/err/0010_bad_tuple_index_expr.txt
index 36717439e..a21b29c80 100644
--- a/crates/ra_syntax/tests/data/parser/inline/err/0010_bad_tuple_index_expr.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/err/0010_bad_tuple_index_expr.txt
@@ -46,6 +46,6 @@ SOURCE_FILE@[0; 47)
46 WHITESPACE@[44; 45) "\n" 46 WHITESPACE@[44; 45) "\n"
47 R_CURLY@[45; 46) "}" 47 R_CURLY@[45; 46) "}"
48 WHITESPACE@[46; 47) "\n" 48 WHITESPACE@[46; 47) "\n"
49err: `Tuple (struct) field access is only allowed through decimal integers with no underscores or suffix` 49error [17; 19): Tuple (struct) field access is only allowed through decimal integers with no underscores or suffix
50err: `Tuple (struct) field access is only allowed through decimal integers with no underscores or suffix` 50error [27; 31): Tuple (struct) field access is only allowed through decimal integers with no underscores or suffix
51err: `Tuple (struct) field access is only allowed through decimal integers with no underscores or suffix` 51error [39; 43): Tuple (struct) field access is only allowed through decimal integers with no underscores or suffix
diff --git a/crates/ra_syntax/tests/data/parser/inline/err/0010_wrong_order_fns.txt b/crates/ra_syntax/tests/data/parser/inline/err/0010_wrong_order_fns.txt
index 5f39e7238..9eb4c9b36 100644
--- a/crates/ra_syntax/tests/data/parser/inline/err/0010_wrong_order_fns.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/err/0010_wrong_order_fns.txt
@@ -35,5 +35,5 @@ SOURCE_FILE@[0; 50)
35 L_CURLY@[47; 48) "{" 35 L_CURLY@[47; 48) "{"
36 R_CURLY@[48; 49) "}" 36 R_CURLY@[48; 49) "}"
37 WHITESPACE@[49; 50) "\n" 37 WHITESPACE@[49; 50) "\n"
38err: `expected fn, trait or impl` 38error 5: expected fn, trait or impl
39err: `expected fn, trait or impl` 39error 31: expected fn, trait or impl