Vadim Petrochenkov
73d2da0894
Remove Spanned from mk_name_value_item_str and expr_to_spanned_string
2019-08-15 11:44:22 +03:00
Mazdak Farrokhzad
ad44d42750
Rollup merge of #63543 - c410-f3r:variant, r=c410-f3r
...
Merge Variant and Variant_
Extracted from #63468 .
2019-08-14 22:56:29 +02:00
Mazdak Farrokhzad
d4ecc6f5c0
Rollup merge of #63542 - c410-f3r:node_ids, r=petrochenkov
...
Add NodeId for Arm, Field and FieldPat
Extracted from #63468
2019-08-14 22:56:28 +02:00
Mazdak Farrokhzad
aaeff01446
Rollup merge of #63490 - Centril:cleanup-pat-parser, r=petrochenkov
...
libsyntax: cleanup and refactor `pat.rs`
A smaller refactoring & cleanup of `pat.rs` (best read commit by commit).
r? @petrochenkov
2019-08-14 22:56:21 +02:00
Mazdak Farrokhzad
7178cf5f97
Rollup merge of #62984 - nathanwhit:extra_semi_lint, r=varkor
...
Add lint for excess trailing semicolons
Closes #60876 .
A caveat (not necessarily a negative, but something to consider) with this implementation is that excess semicolons after return/continue/break now also cause an 'unreachable statement' warning.
For the following example:
```
fn main() {
extra_semis();
}
fn extra_semis() -> i32 {
let mut sum = 0;;;
for i in 0..10 {
if i == 5 {
continue;;
} else if i == 9 {
break;;
} else {
sum += i;;
}
}
return sum;;
}
```
The output is:
```
warning: unnecessary trailing semicolons
--> src/main.rs:5:21
|
5 | let mut sum = 0;;;
| ^^ help: remove these semicolons
|
= note: `#[warn(redundant_semicolon)]` on by default
warning: unnecessary trailing semicolon
--> src/main.rs:8:22
|
8 | continue;;
| ^ help: remove this semicolon
warning: unnecessary trailing semicolon
--> src/main.rs:10:19
|
10 | break;;
| ^ help: remove this semicolon
warning: unnecessary trailing semicolon
--> src/main.rs:12:22
|
12 | sum += i;;
| ^ help: remove this semicolon
warning: unnecessary trailing semicolon
--> src/main.rs:15:16
|
15 | return sum;;
| ^ help: remove this semicolon
warning: unreachable statement
--> src/main.rs:8:22
|
8 | continue;;
| ^
|
= note: `#[warn(unreachable_code)]` on by default
warning: unreachable statement
--> src/main.rs:10:19
|
10 | break;;
| ^
warning: unreachable statement
--> src/main.rs:15:16
|
15 | return sum;;
| ^
```
2019-08-14 22:56:18 +02:00
Caio
6a42b0b28d
Merge Variant and Variant_
2019-08-14 14:47:01 -03:00
Mazdak Farrokhzad
a8bb3756b6
Rollup merge of #63530 - ehuss:typo-statemement, r=centril
...
Fix typo in error message.
2019-08-14 04:18:57 +02:00
Mazdak Farrokhzad
c824839471
Rollup merge of #63475 - iluuu1994:issue-62632, r=Centril
...
Bring back suggestion for splitting `<-` into `< -`
Closes #62632
2019-08-14 04:18:42 +02:00
Caio
9348af8396
Add NodeId for Arm, Field and FieldPat
2019-08-13 22:42:10 -03:00
Eric Huss
643ddfaaa8
Apply Centril's suggestion
...
Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
2019-08-13 15:09:11 -07:00
Eric Huss
ea1a9a0e2b
Fix typo in error message.
2019-08-13 11:21:09 -07:00
nathanwhit
71415ef9bd
Parse excess semicolons as empty stmts for linting
2019-08-12 10:14:07 -04:00
Eduard-Mihai Burtescu
34dcca20e5
syntax: account for CVarArgs being in the argument list.
2019-08-12 15:28:10 +03:00
Mazdak Farrokhzad
c8fc4c106c
extract parse_pat_{tuple_}struct + recover_one_fewer_dotdot
2019-08-12 12:50:44 +02:00
Mazdak Farrokhzad
ddf734deb2
extract fatal_unexpected_non_pat
2019-08-12 12:50:44 +02:00
Mazdak Farrokhzad
37f37a5df1
parser/pat: minor misc cleanup
2019-08-12 12:50:44 +02:00
Mazdak Farrokhzad
49740b792d
extract parse_pat_range_starting_with_lit
2019-08-12 12:50:44 +02:00
Mazdak Farrokhzad
e6f980f9b8
extract parse_pat_range_starting_with_path
2019-08-12 12:50:44 +02:00
Mazdak Farrokhzad
e32bd69d0f
extract parse_pat_mac_invoc
2019-08-12 12:50:44 +02:00
Mazdak Farrokhzad
231da7e044
extract ban_pat_range_if_ambiguous
2019-08-12 12:50:44 +02:00
Mazdak Farrokhzad
3b651330e0
extract recover_pat_ident_mut_first
2019-08-12 12:50:44 +02:00
Ilija Tovilo
91af5c2daf
Bring back suggestion for splitting <- into < -
...
Closes #62632
2019-08-12 10:46:34 +02:00
Mazdak Farrokhzad
c69b3ede8a
extract parse_pat_tuple_or_parens
2019-08-12 09:28:49 +02:00
Mazdak Farrokhzad
90793c0f12
extract parse_pat_deref
2019-08-12 09:28:49 +02:00
Mazdak Farrokhzad
a4af9d1ac2
parse_pat_with_range_pat: remove unnecessary assignments.
2019-08-12 09:28:49 +02:00
Mazdak Farrokhzad
bcfcbfc923
parser: {check,expect}_lifetime into ty.rs
2019-08-11 20:46:34 +02:00
Mazdak Farrokhzad
385d07f359
parser: move into generics.rs
2019-08-11 20:44:09 +02:00
Mazdak Farrokhzad
d6d93b3d82
parser: move into stmt.rs
2019-08-11 20:32:29 +02:00
Mazdak Farrokhzad
28db7c5968
parser: move parse_fn_block_decl into expr.rs
2019-08-11 20:04:09 +02:00
Mazdak Farrokhzad
848ec4aa3c
parser: move parse_ident_or_underscore into item.rs
2019-08-11 20:00:38 +02:00
Mazdak Farrokhzad
3dbfbafe3e
parser: split into {ty, path}.rs
2019-08-11 19:59:27 +02:00
Mazdak Farrokhzad
e81347c368
parser: split into {item,module}.rs
2019-08-11 18:34:42 +02:00
Mazdak Farrokhzad
e742de2569
parser: split into pat.rs
2019-08-11 15:24:37 +02:00
Mazdak Farrokhzad
81e6b5094e
parser: split into expr.rs
2019-08-11 13:14:30 +02:00
Esteban Küber
b7f7756566
Recover parser from foo(_, _)
2019-08-09 07:18:05 -07:00
Aleksey Kladov
58ac81a60f
add unknown token
2019-08-05 13:15:11 +03:00
Aleksey Kladov
b5e35b128e
remove special code path for unknown tokens
2019-08-05 13:15:11 +03:00
bors
d3f8a0b5df
Auto merge of #63213 - varkor:itemkind-tyalias, r=Centril
...
Rename `ItemKind::Ty` to `ItemKind::TyAlias`
The current name is not entirely clear without context and `TyAlias` is consistent with `ItemKind::TraitAlias`.
2019-08-04 20:03:28 +00:00
varkor
63659ca9f6
Rename ItemImplKind::Type to ItemImplKind::TyAlias
2019-08-04 20:16:41 +01:00
varkor
8aa45c65d8
Rename ItemKind::Ty to ItemKind::TyAlias
2019-08-04 20:13:37 +01:00
bors
f01b9f803b
Auto merge of #62816 - estebank:type-ascription-macros, r=petrochenkov
...
Point at type ascription before macro invocation on expansion parse error
Fix https://github.com/rust-lang/rust/issues/47666 . Follow up to https://github.com/rust-lang/rust/pull/62791 .
r? @petrochenkov
2019-08-04 16:19:04 +00:00
Mazdak Farrokhzad
15b5aacab6
Rollup merge of #63146 - Mark-Simulacrum:clean-attr, r=petrochenkov
...
Cleanup syntax::attr
Mostly removing needless arguments to constructors
r? @petrochenkov
2019-08-03 13:11:59 +02:00
bors
d7270712cb
Auto merge of #63180 - varkor:trait-alias-impl-trait, r=Centril
...
Change opaque type syntax from `existential type` to type alias `impl Trait`
This implements a new feature gate `type_alias_impl_trait` (this is slightly different from the originally proposed feature name, but matches what has been used in discussion since), deprecating the old `existential_types` feature.
The syntax for opaque types has been changed. In addition, the "existential" terminology has been replaced with "opaque", as per previous discussion and the RFC.
This makes partial progress towards implementing https://github.com/rust-lang/rust/issues/63063 .
r? @Centril
2019-08-03 02:21:23 +00:00
bors
cf048cc115
Auto merge of #63207 - petrochenkov:outest2, r=Mark-Simulacrum
...
Unconfigure compiler unit test files during normal build
I haven't touched libstd though, it had a lot of tests and I'm not sure the people maintaining it want this.
Closes https://github.com/rust-lang/rust/issues/61097
r? @Mark-Simulacrum
2019-08-02 15:22:50 +00:00
Mazdak Farrokhzad
3396550420
Rollup merge of #63202 - exphp-forks:parser-ice-63135, r=estebank
...
Fix ICE in #63135
Closes #63135 .
r?@estebank
2019-08-02 12:14:21 +02:00
Mazdak Farrokhzad
dbfe12daed
Rollup merge of #63189 - waywardmonkeys:doc-improvements, r=Centril
...
Doc improvements
Miscellaneous documentation fixes.
2019-08-02 12:14:18 +02:00
varkor
c28ce3e4ca
Replace "existential" by "opaque"
2019-08-02 02:44:36 +01:00
varkor
87738fe834
Switch existential_type to type_alias_impl_trait
2019-08-02 02:44:35 +01:00
Vadim Petrochenkov
310b9fc760
libsyntax: Unconfigure tests during normal build
2019-08-02 01:59:01 +03:00
Michael Lamparski
b3321fb26e
Fix ICE in #63135
2019-08-01 17:34:00 -04:00