103986 Commits

Author SHA1 Message Date
Josh Stone
2304c25f31 Update the minimum external LLVM to 7
LLVM 7 is over a year old, which should be plenty for compatibility. The
last LLVM 6 holdout was llvm-emscripten, which went away in #65501.

I've also included a fix for LLVM 8 lacking `MemorySanitizerOptions`,
which was broken by #66522.
2019-12-02 11:36:21 -08:00
Vadim Petrochenkov
498737c8e9 Address review comments 2019-12-02 22:13:13 +03:00
Vadim Petrochenkov
cf71538094 syntax: Optimize conversion AttrItem -> MetaItem by avoiding outer_tokens. 2019-12-02 21:56:34 +03:00
Vadim Petrochenkov
537895535d syntax: Use ast::MacArgs for macro definitions 2019-12-02 21:56:34 +03:00
Vadim Petrochenkov
1a496f3379 syntax: Use ast::MacArgs for attributes 2019-12-02 21:56:34 +03:00
Vadim Petrochenkov
0fac56717a syntax: Remove redundant span from ast::Mac
Also remove a couple of redundant `visit_mac` asserts
2019-12-02 21:56:34 +03:00
Vadim Petrochenkov
a81804b4d5 syntax: Introduce a struct MacArgs for macro arguments 2019-12-02 21:56:34 +03:00
avikozokin
fa8b54901f added correct error code for WSASocketW failure fallback 2019-12-02 20:12:51 +02:00
Eduard-Mihai Burtescu
a266ea0bd0 rustc: allow non-empty ParamEnv's in global trait select/eval caches. 2019-12-02 18:33:26 +02:00
Eduard-Mihai Burtescu
1d1298ea5f rustc: include ParamEnv in global trait select/eval cache keys. 2019-12-02 18:21:11 +02:00
Nadrieril
1c1bec2f6d Remove top-level or-pattern hack 2019-12-02 16:03:03 +00:00
Nadrieril
ef087d96f0 Move recently changed tests to the correct file 2019-12-02 16:03:03 +00:00
Nadrieril
a476af22e8 Correct error on partially unreachable or-pat in if let 2019-12-02 16:03:03 +00:00
Nadrieril
5c7bd52a78 Lint for redundant branches in or-patterns 2019-12-02 16:03:00 +00:00
Nadrieril
00ccadf43f Add some tests 2019-12-02 16:00:24 +00:00
Nadrieril
e6aa96246f Simplify lifetimes by allocating patterns on the arena
We want the lifetimes of the patterns contained in the matrix and the
candidate `PatStack` to be the same so that they can be mixed together.
A lot of this would not be necessary if `SmallVec` was covariant in its
type argument (see https://github.com/servo/rust-smallvec/issues/146).
2019-12-02 16:00:24 +00:00
Nadrieril
21af89d773 UsefulWithWitness always carries some witnesses 2019-12-02 16:00:24 +00:00
Nadrieril
fe67196679 Don't build the same matrix twice
The exact same logic was used in check_arms and check_match to build the
matrix of relevant patterns. It would actually probably have been a bug
if it was not the case, since exhaustiveness checking should be the same
as checking reachability of an additional `_ => ...` match branch.
2019-12-02 16:00:12 +00:00
Krishna Sai Veera Reddy
a30ee8e763 Document usage of unsafe block 2019-12-02 08:45:35 -07:00
bors
fdc0011561 Auto merge of #64736 - Nashenas88:mir_predecessors_cache_cleanup, r=oli-obk
Remove interior mutability in mir predecessors cache
2019-12-02 14:51:02 +00:00
Christian Poveda
e01ad6a01a Remove E0017 from error codes index 2019-12-02 09:46:27 -05:00
Christian Poveda
416b439ffb Correct other tests related to const_mut_refs 2019-12-02 09:46:26 -05:00
Christian Poveda
dc0117a42c Add dual tests for const_mut_refs 2019-12-02 09:43:40 -05:00
Christian Poveda
19ddfb545b Update miri unleashed tests 2019-12-02 09:43:40 -05:00
Christian Poveda
5e61e4cadc Suggest feature for const_mut_refs errors 2019-12-02 09:43:39 -05:00
Paul Daniel Faria
3eaad564d2 Fix issues caused during rebasing 2019-12-02 09:40:03 -05:00
Christian Poveda
681690db4e Update miri_unleashed tests 2019-12-02 09:10:11 -05:00
Christian Poveda
683f5c9c23 Disallow cell borrowing 2019-12-02 09:10:09 -05:00
Christian Poveda
e31a1368fd Extend test for const_mut_refs feature 2019-12-02 09:03:41 -05:00
Christian Poveda
d92e9b7374 Allow mutable derefs with feature gate 2019-12-02 09:03:41 -05:00
Christian Poveda
de60f721c4 Move and rewrite tests to use &mut in constants 2019-12-02 09:03:41 -05:00
Christian Poveda
1f420b9891 Allow mutable borrows in constant bodies 2019-12-02 09:03:41 -05:00
Christian Poveda
d24ae2577f Rename feature gate 2019-12-02 09:03:41 -05:00
Christian Poveda
8b0f5acfcb Add tests for mutable borrows in const fns 2019-12-02 09:03:41 -05:00
Christian Poveda
bb2a423894 Allow &mut in const fns when feature gate is enabled 2019-12-02 09:03:40 -05:00
Christian Poveda
12ac49afc9 Add feature gate for &mut in const fns 2019-12-02 09:03:39 -05:00
Paul Daniel Faria
6123478f2a Fix issues caused during rebasing 2019-12-02 08:43:01 -05:00
Paul Daniel Faria
38bd3a2342 Use new HashStable proc macro 2019-12-02 08:43:01 -05:00
Paul Daniel Faria
acb90eb014 Fix tidy issues 2019-12-02 08:43:01 -05:00
Paul Daniel Faria
9978574c9e Fix rebasing errors, convert some BodyCache::body() calls to reborrows 2019-12-02 08:43:01 -05:00
Paul Daniel Faria
64654ce1f1 Fix type errors created during rebasing 2019-12-02 08:42:24 -05:00
Paul Daniel Faria
598797c6e7 Remove unchecked inline attribute, remove unused functions, make chache mod private again 2019-12-02 08:41:30 -05:00
Paul Daniel Faria
c6354e9839 Remove inline attributes that hadn't been profiled, unexport Cache since it no longer needs to be public 2019-12-02 08:41:30 -05:00
Paul Daniel Faria
245abc49be Fix type errors cause during rebasing 2019-12-02 08:41:30 -05:00
Paul Daniel Faria
05dc5e9f47 Compute predecessors in mir_build query and use existing cache for generating ReadOnlyBodyCache, remove unneeded fns 2019-12-02 08:41:30 -05:00
Paul Daniel Faria
ed90818ac8 Remove files created during conflict resolution 2019-12-02 08:40:56 -05:00
Paul Daniel Faria
51b06656da Fix typos caused during rebase 2019-12-02 08:40:56 -05:00
Paul Daniel Faria
b2fe254c98 Remove HasLocalDecls impl from BodyCache's, properly reborrow to Body, rename all body_cache back to body 2019-12-02 08:40:56 -05:00
Paul Daniel Faria
595d161d36 Remove BodyCache.body and rely on Deref as much as possible for ReadOnlyBodyCache 2019-12-02 08:38:16 -05:00
Paul Daniel Faria
c42bdb8c74 Undo minor changes that weren't needed, fix one lifetime typo 2019-12-02 08:38:16 -05:00