Matthew Jasper
8c3c446648
Add more tests for slice patterns
2019-12-21 12:29:30 +00:00
Ross MacArthur
f7256d28d1
Require issue = "none" over issue = "0" in unstable attributes
2019-12-21 13:16:18 +02:00
bors
c64eecf4d0
Auto merge of #66994 - Centril:stmt-polish, r=estebank
...
refactor expr & stmt parsing + improve recovery
Summary of important changes (best read commit-by-commit, ignoring whitespace changes):
- `AttrVec` is introduces as an alias for `ThinVec<Attribute>`
- `parse_expr_bottom` and `parse_stmt` are thoroughly refactored.
- Extract diagnostics logic for `vec![...]` in a pattern context.
- Recovery is added for `do catch { ... }`
- Recovery is added for `'label: non_block_expr`
- Recovery is added for `var $local`, `auto $local`, and `mut $local`. Fixes #65257 .
- Recovery is added for `e1 and e2` and `e1 or e2`.
- ~~`macro_legacy_warnings` is turned into an error (has been a warning for 3 years!)~~
- Fixes #63396 by forward-porting #64105 which now works thanks to added recovery.
- `ui-fulldeps/ast_stmt_expr_attr.rs` is turned into UI and pretty tests.
- Recovery is fixed for `#[attr] if expr {}`
r? @estebank
2019-12-21 11:05:03 +00:00
Broono Lu
16b7fd2272
Fix src/libcore/str/mod.rs doc comments
2019-12-21 18:12:46 +08:00
Masaki Hara
6903836398
Remove iter_private.rs
...
The contents of this file have been moved in #56932 (520e8b0) and the
file should have been removed as well.
2019-12-21 15:16:03 +09:00
Wesley Wiser
f1325a78e6
Move the rest of the mir-opt inline tests into a folder
2019-12-20 20:39:47 -05:00
Wesley Wiser
bec4fc175a
[mir-opt] Fix Inline
pass to handle inlining into box
expressions
2019-12-20 20:39:47 -05:00
bors
9ff30a7810
Auto merge of #67464 - Centril:rollup-j3mkl1m, r=Centril
...
Rollup of 6 pull requests
Successful merges:
- #67130 (Const prop should finish propagation into user defined variables)
- #67163 (Split up ptr/mod.rs in libcore...)
- #67314 (Don't suppress move errors for union fields)
- #67392 (Fix unresolved type span inside async object)
- #67404 (Separate region inference logic from error handling better)
- #67428 (`is_binding_pat`: use explicit match & include or-pats in grammar)
Failed merges:
r? @ghost
2019-12-21 01:02:54 +00:00
Josh Stone
2206218d59
Remove rustc-dev from the default nightly components
...
It was already filtered from other branches, but we only kept it in
nightly's default to ease the transition. Now that the separation of
rust-std/rustc-dev has reached the 1.40 release, it seems like a good
time for that transition to end.
2019-12-20 15:45:03 -08:00
Matthew Jasper
d490c34086
Don't ICE in subslice pattern const-eval
2019-12-20 23:11:56 +00:00
Oliver Scherer
032d810e24
Add a big notice about const intrinsics
2019-12-21 00:07:36 +01:00
Oliver Scherer
9ee16e14c5
Require const stability attributes on intrinsics to be able to use them in constant contexts
2019-12-20 23:15:50 +01:00
Mazdak Farrokhzad
621661f8a6
tweak var/auto/mut recovery
2019-12-20 22:53:40 +01:00
Mazdak Farrokhzad
49826845a9
use .span_suggestion_short for &&
2019-12-20 22:53:40 +01:00
Mazdak Farrokhzad
19db2d2fed
ast_stmt_expr_attr -> pretty & ui tests
2019-12-20 22:53:40 +01:00
Mazdak Farrokhzad
9b53c5be06
fix bug in parse_tuple_parens_expr + related refactoring
2019-12-20 22:53:40 +01:00
Mazdak Farrokhzad
66470d3217
recover #[attr] if expr {}
2019-12-20 22:53:40 +01:00
Mazdak Farrokhzad
c9e1f13f6e
recover on 'mut', 'var', 'auto'
2019-12-20 22:53:40 +01:00
Mazdak Farrokhzad
a0d20935cc
introduce 'type AttrVec'
2019-12-20 22:53:40 +01:00
Mazdak Farrokhzad
3d5dbcb44a
simplify parse_bottom_expr more
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
948ff674f9
use mk_expr_err more
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
4311a4d7f9
extract parse_lit_expr and simplify
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
e9a4d94c44
extract parse_break_expr
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
a3c0ef1a8b
refactor parse_incorrect_await_syntax
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
2f9b191886
extract parse_{expr_opt, return_expr, yield_expr}
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
327641e35c
recover on 'do catch { .. }'
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
32ac9d0e45
pass attr as param in new methods
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
4e01b70964
add recovery to parse_labeled_expr
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
3ed5ba7fa8
extract parse_labeled_expr
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
5f0f86b6ca
extract parse_path_start_expr
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
cb985ba60f
extract parse_array_or_repeat_expr
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
9cb2b08a5d
extract parse_tuple_parens_expr
2019-12-20 22:41:29 +01:00
A C
0c32ee1781
Clean up parse_bottom_expr
2019-12-20 22:41:29 +01:00
A C
0b7908c550
Add a UI test for correct parsing
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
dd15904a4d
parse_bottom_expr: use else if
2019-12-20 22:41:29 +01:00
Mazdak Farrokhzad
52acaa6974
implement recovery in check_assoc_op
2019-12-20 22:41:28 +01:00
Mazdak Farrokhzad
903c9dfd18
extract should_continue_as_assoc_expr
2019-12-20 22:41:28 +01:00
Mazdak Farrokhzad
be463cbc2b
extract: error_block_no_opening_brace
2019-12-20 22:41:28 +01:00
Mazdak Farrokhzad
cdca5cfbfd
parser: extract error_outer_attrs
2019-12-20 22:41:28 +01:00
Mazdak Farrokhzad
467c86f4cb
parse_stmt_without_recovery: readability!
2019-12-20 22:41:28 +01:00
Mazdak Farrokhzad
74d9c4b312
parse_stmt_mac: add a comment
2019-12-20 22:41:28 +01:00
Mazdak Farrokhzad
2ddea30178
extract suggest_slice_pat
2019-12-20 22:41:28 +01:00
Mazdak Farrokhzad
c54c9ef863
parser: early return for item stmt
2019-12-20 22:41:28 +01:00
Mazdak Farrokhzad
690815b70e
inline parse_stmt_ into parse_stmt
2019-12-20 22:41:28 +01:00
Mazdak Farrokhzad
b75a93afac
extract parse_sttmt_mac
2019-12-20 22:41:28 +01:00
Mazdak Farrokhzad
666ff8fd00
reduce repetition in stmt parsing
2019-12-20 22:41:28 +01:00
Mazdak Farrokhzad
6d7c6d7384
into: simplify AddressOf logic after rebase
2019-12-20 22:39:20 +01:00
Mazdak Farrokhzad
a7641f1fcc
address review comments
2019-12-20 22:22:44 +01:00
Mazdak Farrokhzad
a7aec3f207
1. ast::Mutability::{Mutable -> Mut, Immutable -> Not}.
...
2. mir::Mutability -> ast::Mutability.
2019-12-20 22:22:44 +01:00
Mazdak Farrokhzad
f465f95b4b
Rollup merge of #67428 - Centril:ibp-explicit-match, r=matthewjasper
...
`is_binding_pat`: use explicit match & include or-pats in grammar
r? @matthewjasper @nikomatsakis
2019-12-20 22:05:36 +01:00