83649 Commits

Author SHA1 Message Date
bors
58063894d2 Auto merge of #53913 - petrochenkov:biattr4, r=alexcrichton
resolve: Future proof resolutions for potentially built-in attributes

This is not full "pass all attributes through name resolution", but a more conservative solution.
If built-in attribute is ambiguous with any other macro in scope, then an error is reported.

What complications arise with the full solution - https://github.com/rust-lang/rust/pull/53913#issuecomment-418204136.

cc https://github.com/rust-lang/rust/pull/50911#issuecomment-411605393
cc https://github.com/rust-lang/rust/issues/52269
Closes https://github.com/rust-lang/rust/issues/53531
2018-09-11 23:28:39 +00:00
Markus Klein
26c05b13e1 Add ty::Ty to PatternKind::Range;u128 for Const in Constructor::ConstantRange 2018-09-12 00:26:07 +02:00
Felix S. Klock II
8a580baa27 Recover proper regression test for issue #16278. 2018-09-11 23:33:22 +02:00
bors
2f1547c0aa Auto merge of #53873 - nikomatsakis:nll-universe-subtyping-and-pattern-ascription, r=pnkfelix
support ascription for patterns in NLL

This implements the strategy outlined in [this comment](https://github.com/rust-lang/rust/issues/47184#issuecomment-416669986):

- We first extend the NLL subtyping code so it can handle inference variables and subtyping.
- Then we extend HAIR patterns with type ascription.
- Then we treat the type `T` in `let pat: T = ...` as an ascription.

Before landing, a few things:

- [x] Fix the WF rule bug (filed a FIXME https://github.com/rust-lang/rust/issues/54105)
- [x] Fix an ICE I encountered locally around bound regions, or else file a follow-up
- [x] More tests probably =)

r? @pnkfelix
2018-09-11 20:59:11 +00:00
Eduard-Mihai Burtescu
a94c16614c
Add missing #![feature(min_const_fn)] to the newtype_index test. 2018-09-11 22:52:00 +03:00
Josh Stone
af0f822edf Update LLVM to fix GlobalISel dbg.declare
Fixes #49807.
2018-09-11 11:59:50 -07:00
James Duley
dfd04e1eb4 Update stage0 to latest beta
Fixes bootstrap on AArch64
2018-09-11 17:14:08 +01:00
bors
f17c2306e2 Auto merge of #54111 - nikomatsakis:issue-53686-keywords-and-macros, r=alexcrichton
warn about keywords in macro invocations

Fixes #53686

r? @alexcrichton
2018-09-11 15:40:44 +00:00
toidiu
731f4efae5 stabalize infer outlives requirements (RFC 2093).
Co-authored-by: nikomatsakis
2018-09-11 11:40:04 -04:00
kenta7777
8134ee25b8 renamed emit_nil to emit_unit 2018-09-11 23:32:41 +09:00
kenta7777
a0e7b6bf6b renamed is_nil to is_unit 2018-09-11 23:17:35 +09:00
kenta7777
7f8160409f Revert "renamed emit_nil to emit_unit"
This reverts commit d02a5ffaed9c395ae62ee12d0f4e04946c62edb1.
2018-09-11 22:20:22 +09:00
kenta7777
fa683ac656 Revert "renamed read_nil to read_unit"
This reverts commit 37d0600c23ba1890346078bd7f310e15915417b2.
2018-09-11 22:20:09 +09:00
kenta7777
10b2083a6d Revert "renamed is_nil to is_unit"
This reverts commit 6f685ffad42a2d12dd1fad5ccb0471e7fa260826.
2018-09-11 22:18:49 +09:00
kenta7777
d7ebc20e77 Revert "renamed mk_nil_ptr to mk_unit_ptr"
This reverts commit 2be5c722dedf50a95479bad0b4558e5e76a73a00.
2018-09-11 22:17:43 +09:00
kenta7777
8c53150b18 Revert "renamed t_nil to t_unit"
This reverts commit 69deed9dc17cfd1c3e02d9e662ebc164885321a6.
2018-09-11 22:16:04 +09:00
Niko Matsakis
0cd8e0d03e we now successfully warn about async in macro invocations 2018-09-11 08:56:59 -04:00
Oliver Schneider
79f2cc08e6 Silence dead code warning for the assertion statics 2018-09-11 14:24:19 +02:00
Oliver Schneider
f3417c524c Properly access std::mem::size_of 2018-09-11 14:14:52 +02:00
Oliver Schneider
5f42a0f005 Change debug printing to print in the old concise style 2018-09-11 13:49:10 +02:00
Oliver Schneider
68298a5087 Use assertion-like static assertions 2018-09-11 13:30:26 +02:00
Oliver Schneider
8053f6319a Rebase fallout 2018-09-11 12:06:37 +02:00
Oliver Schneider
1ec86708ca Split CrateNum into an enum instead of having magic constants 2018-09-11 11:30:47 +02:00
Oliver Schneider
d1b5231aa7 Fix const eval of ZST index operations to make the static assertion work 2018-09-11 11:27:12 +02:00
Oliver Schneider
24dca6aeca Simplify Scope/ScopeData to have less chance of introducing UB or size increases 2018-09-11 11:27:12 +02:00
Oliver Schneider
88ebb95f46 only allow restricting scalar layouts 2018-09-11 11:25:51 +02:00
Oliver Schneider
833dc7e682 Address attribute naming and use Bound enum 2018-09-11 11:25:51 +02:00
Oliver Schneider
a2c924b5ae Satisfy tidy 2018-09-11 11:25:29 +02:00
Oliver Schneider
3828e9e16f Use the same way to specifiy the SCOPE_DATA_* constants as used for the MAX 2018-09-11 11:25:29 +02:00
Oliver Schneider
06a041cbd3 Forbid the upper indices of IndexVec indices to allow for niche optimizations 2018-09-11 11:25:28 +02:00
Oliver Schneider
d272e2f6e2 Get rid of the non_zero lang item in favour of arbitrary range specifications 2018-09-11 11:19:48 +02:00
bors
7ee72070bd Auto merge of #51363 - japaric:stable-used, r=cramertj
stabilize #[used]

closes #40289

RFC for stabilization: rust-lang/rfcs#2386

r? @Centril

Where should this be documented? Currently the documentation is in the unstable book
2018-09-11 08:54:11 +00:00
Philipp Hansch
09973d227d
Add some unit tests for find_best_match_for_name
There were only some UI tests that covered this function.
Since there's more diagnostic work going on, I think it makes
sense to have this unit tested.
2018-09-11 08:31:47 +02:00
bors
1f02f23263 Auto merge of #54113 - alexcrichton:update-cargo, r=Mark-Simulacrum
Update Cargo submodule

Bring in a few last-minute updates before the 1.30.0 release
2018-09-11 06:28:29 +00:00
bors
d6720cc810 Auto merge of #54092 - estebank:gotta-go-fast, r=nikomatsakis
Don't compute padding of braces unless they are unmatched

Follow up to #53949. Attempt to fix # #54083.

r? @nikomatsakis
2018-09-11 01:08:49 +00:00
Alex Crichton
00e6d54609 Update Cargo submodule
Bring in a few last-minute updates before the 1.30.0 release
2018-09-10 16:40:57 -07:00
Vadim Petrochenkov
de153d61f5 resolve: Reserve a few very special names in macro namespace 2018-09-11 01:13:55 +03:00
Vadim Petrochenkov
65c8c97bc7 resolve: Skip bang macros when resolving potentially built-in attributes 2018-09-11 00:30:44 +03:00
Vadim Petrochenkov
d0aaf895ee resolve: Future proof resolutions for potentially built-in attributes 2018-09-11 00:30:44 +03:00
Vadim Petrochenkov
730c5de281 resolve: Support resolving identifier macros without their own ID
Invocation/expansion ID (aka `Mark`) is not really necessary for resolving a macro path.
What is really necessary is its parent module, parent expansion and parent legacy scope.
This is required for validation resolutions of built-in attributes, which don't get their own `Mark`s
2018-09-11 00:30:44 +03:00
Niko Matsakis
f95f23f0c3 fix incremental test
We are now carrying the user-given type through MIR, so it makes sense
that this would change the hash.
2018-09-10 17:24:43 -04:00
Niko Matsakis
5adbdf82f3 add test case 2018-09-10 17:21:01 -04:00
Niko Matsakis
b1a9f9eae8 visit the paths in pre-expansion macros 2018-09-10 17:12:55 -04:00
Niko Matsakis
38774aaf7f make add_pre_expansion_builtin add a pre-expansion lint
Copy-and-paste error.
2018-09-10 17:10:11 -04:00
Niko Matsakis
df37678b76 add FIXME related to ref x bindings 2018-09-10 14:12:20 -04:00
bors
551244f05b Auto merge of #54093 - petrochenkov:noinner, r=alexcrichton
Feature gate non-builtin attributes in inner attribute position

Closes item 3 from https://github.com/rust-lang/rust/pull/50911#issuecomment-411605393
2018-09-10 17:18:27 +00:00
Alex Crichton
5595aeb6b7 Add rustc SHA to released DWARF debuginfo
This commit updates the debuginfo that is encoded in all of our released
artifacts by default. Currently it has paths like `/checkout/src/...` but these
are a little inconsistent and have changed over time. This commit instead
attempts to actually define the file paths in our debuginfo to be consistent
between releases.

All debuginfo paths are now intended to be `/rustc/$sha` where `$sha` is the git
sha of the released compiler. Sub-paths are all paths into the git repo at that
`$sha`.
2018-09-10 10:10:38 -07:00
Val
abe0f027ae
fix typos in growth algo description
modified to read "the first table overflows into the second, and the second into the first." plus smaller typos
2018-09-10 09:02:16 -07:00
flip1995
c549e656aa
Reexport CheckLintNameResult 2018-09-10 17:13:31 +02:00
Niko Matsakis
2b6f9664ed add link to https://github.com/rust-lang/rust/issues/54105 2018-09-10 11:03:11 -04:00