diff options
author | Aleksey Kladov <[email protected]> | 2018-01-27 23:20:40 +0000 |
---|---|---|
committer | Aleksey Kladov <[email protected]> | 2018-01-27 23:20:40 +0000 |
commit | 357cd3358167daa38f3ff34d225e1501faff6015 (patch) | |
tree | ed57bb3eb5b39a64267d6a7dbf59c58b2a7b175e | |
parent | 3630aeb1ea646b0151da4cdf12a6b025a0d031c5 (diff) |
Add tests for parser recovery in fields
-rw-r--r-- | tests/data/parser/err/0006_named_field_recovery.rs | 7 | ||||
-rw-r--r-- | tests/data/parser/err/0006_named_field_recovery.txt | 54 |
2 files changed, 61 insertions, 0 deletions
diff --git a/tests/data/parser/err/0006_named_field_recovery.rs b/tests/data/parser/err/0006_named_field_recovery.rs new file mode 100644 index 000000000..8069c111b --- /dev/null +++ b/tests/data/parser/err/0006_named_field_recovery.rs | |||
@@ -0,0 +1,7 @@ | |||
1 | struct S { | ||
2 | f: u32, | ||
3 | pub 92 | ||
4 | + - * | ||
5 | pub x: u32, | ||
6 | z: f64, | ||
7 | } | ||
diff --git a/tests/data/parser/err/0006_named_field_recovery.txt b/tests/data/parser/err/0006_named_field_recovery.txt new file mode 100644 index 000000000..d3815102b --- /dev/null +++ b/tests/data/parser/err/0006_named_field_recovery.txt | |||
@@ -0,0 +1,54 @@ | |||
1 | FILE@[0; 74) | ||
2 | STRUCT_ITEM@[0; 74) | ||
3 | STRUCT_KW@[0; 6) | ||
4 | WHITESPACE@[6; 7) | ||
5 | IDENT@[7; 8) | ||
6 | WHITESPACE@[8; 9) | ||
7 | L_CURLY@[9; 10) | ||
8 | NAMED_FIELD@[10; 21) | ||
9 | WHITESPACE@[10; 15) | ||
10 | IDENT@[15; 16) | ||
11 | COLON@[16; 17) | ||
12 | WHITESPACE@[17; 18) | ||
13 | IDENT@[18; 21) | ||
14 | COMMA@[21; 22) | ||
15 | VISIBILITY@[22; 31) | ||
16 | WHITESPACE@[22; 27) | ||
17 | PUB_KW@[27; 30) | ||
18 | WHITESPACE@[30; 31) | ||
19 | err: `expected IDENT` | ||
20 | ERROR@[31; 38) | ||
21 | err: `expected field declaration` | ||
22 | INT_NUMBER@[31; 33) | ||
23 | WHITESPACE@[33; 38) | ||
24 | ERROR@[38; 40) | ||
25 | err: `expected field declaration` | ||
26 | PLUS@[38; 39) | ||
27 | WHITESPACE@[39; 40) | ||
28 | ERROR@[40; 42) | ||
29 | err: `expected field declaration` | ||
30 | MINUS@[40; 41) | ||
31 | WHITESPACE@[41; 42) | ||
32 | ERROR@[42; 48) | ||
33 | err: `expected field declaration` | ||
34 | STAR@[42; 43) | ||
35 | WHITESPACE@[43; 48) | ||
36 | NAMED_FIELD@[48; 58) | ||
37 | VISIBILITY@[48; 52) | ||
38 | PUB_KW@[48; 51) | ||
39 | WHITESPACE@[51; 52) | ||
40 | IDENT@[52; 53) | ||
41 | COLON@[53; 54) | ||
42 | WHITESPACE@[54; 55) | ||
43 | IDENT@[55; 58) | ||
44 | COMMA@[58; 59) | ||
45 | NAMED_FIELD@[59; 70) | ||
46 | WHITESPACE@[59; 64) | ||
47 | IDENT@[64; 65) | ||
48 | COLON@[65; 66) | ||
49 | WHITESPACE@[66; 67) | ||
50 | IDENT@[67; 70) | ||
51 | COMMA@[70; 71) | ||
52 | WHITESPACE@[71; 72) | ||
53 | R_CURLY@[72; 73) | ||
54 | WHITESPACE@[73; 74) | ||