Commit a85ca13
committed
[Parse] Unify recovery for invalid tokens following a
Previously we would only diagnose and recover for
invalid tokens following a `#if` body for the decl
and postfix expression case. Sink this logic into
`parseIfConfigRaw`, ensuring that we do this for
all `#if` cases. This requires propagating the
context we're parsing in to customize the
diagnostic.#if body1 parent cd9d202 commit a85ca13
File tree
7 files changed
+84
-42
lines changed- include/swift
- AST
- Parse
- lib/Parse
- test/Parse/ConditionalCompilation
7 files changed
+84
-42
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
51 | 51 | | |
52 | 52 | | |
53 | 53 | | |
| 54 | + | |
| 55 | + | |
54 | 56 | | |
55 | 57 | | |
56 | 58 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
105 | 105 | | |
106 | 106 | | |
107 | 107 | | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
108 | 117 | | |
109 | 118 | | |
110 | 119 | | |
| |||
993 | 1002 | | |
994 | 1003 | | |
995 | 1004 | | |
996 | | - | |
| 1005 | + | |
997 | 1006 | | |
| 1007 | + | |
998 | 1008 | | |
999 | 1009 | | |
1000 | 1010 | | |
| |||
1003 | 1013 | | |
1004 | 1014 | | |
1005 | 1015 | | |
1006 | | - | |
| 1016 | + | |
| 1017 | + | |
1007 | 1018 | | |
1008 | 1019 | | |
1009 | 1020 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6191 | 6191 | | |
6192 | 6192 | | |
6193 | 6193 | | |
6194 | | - | |
6195 | | - | |
6196 | | - | |
6197 | | - | |
6198 | | - | |
6199 | | - | |
6200 | | - | |
6201 | | - | |
6202 | | - | |
6203 | | - | |
6204 | | - | |
6205 | | - | |
| 6194 | + | |
| 6195 | + | |
| 6196 | + | |
| 6197 | + | |
| 6198 | + | |
| 6199 | + | |
| 6200 | + | |
| 6201 | + | |
6206 | 6202 | | |
6207 | | - | |
6208 | | - | |
6209 | | - | |
6210 | | - | |
| 6203 | + | |
6211 | 6204 | | |
6212 | 6205 | | |
6213 | 6206 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1461 | 1461 | | |
1462 | 1462 | | |
1463 | 1463 | | |
1464 | | - | |
1465 | | - | |
| 1464 | + | |
| 1465 | + | |
| 1466 | + | |
1466 | 1467 | | |
1467 | 1468 | | |
1468 | 1469 | | |
| |||
1474 | 1475 | | |
1475 | 1476 | | |
1476 | 1477 | | |
1477 | | - | |
1478 | | - | |
1479 | | - | |
1480 | | - | |
1481 | | - | |
1482 | | - | |
1483 | | - | |
1484 | 1478 | | |
1485 | 1479 | | |
1486 | 1480 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
768 | 768 | | |
769 | 769 | | |
770 | 770 | | |
771 | | - | |
| 771 | + | |
772 | 772 | | |
773 | | - | |
774 | | - | |
775 | | - | |
| 773 | + | |
| 774 | + | |
| 775 | + | |
| 776 | + | |
776 | 777 | | |
777 | 778 | | |
778 | 779 | | |
| |||
896 | 897 | | |
897 | 898 | | |
898 | 899 | | |
| 900 | + | |
| 901 | + | |
| 902 | + | |
| 903 | + | |
| 904 | + | |
| 905 | + | |
| 906 | + | |
| 907 | + | |
| 908 | + | |
| 909 | + | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
899 | 918 | | |
900 | 919 | | |
901 | 920 | | |
| |||
926 | 945 | | |
927 | 946 | | |
928 | 947 | | |
| 948 | + | |
929 | 949 | | |
930 | 950 | | |
931 | 951 | | |
| 952 | + | |
932 | 953 | | |
933 | 954 | | |
934 | 955 | | |
| |||
939 | 960 | | |
940 | 961 | | |
941 | 962 | | |
942 | | - | |
| 963 | + | |
| 964 | + | |
943 | 965 | | |
944 | 966 | | |
945 | 967 | | |
| |||
952 | 974 | | |
953 | 975 | | |
954 | 976 | | |
| 977 | + | |
955 | 978 | | |
956 | 979 | | |
957 | 980 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
369 | 369 | | |
370 | 370 | | |
371 | 371 | | |
372 | | - | |
373 | | - | |
374 | | - | |
375 | | - | |
376 | | - | |
377 | | - | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
378 | 380 | | |
379 | 381 | | |
380 | 382 | | |
| |||
2572 | 2574 | | |
2573 | 2575 | | |
2574 | 2576 | | |
2575 | | - | |
2576 | | - | |
2577 | | - | |
2578 | | - | |
| 2577 | + | |
| 2578 | + | |
| 2579 | + | |
| 2580 | + | |
| 2581 | + | |
2579 | 2582 | | |
2580 | 2583 | | |
2581 | 2584 | | |
| |||
Lines changed: 16 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
0 commit comments