83550 Commits

Author SHA1 Message Date
kennytm
6b55f04725
Rollup merge of #52514 - DiamondLovesYou:amdgpu-fixes, r=eddyb
Fix a few AMDGPU related issues

* AMDGPU ignores `noinline` and sadly doesn't clear the attribute when it slaps `alwaysinline` on everything,
* an AMDGPU related load bit range metadata assertion,
* I didn't enable the `amdgpu` component in the `librustc_llvm` build script,
* Add AMDGPU call abi info.
2018-09-12 12:17:22 +08:00
bors
a2b991b530 Auto merge of #51159 - pacman82:master, r=oli-obk
First step towards `u128` instead of `Const` in `PatternKind::Range`

This PR accomplishes two things:
* It adds `ty::Ty` to `PatternKind::Range`. The extra type information will make it easier to remove it from the `hi` and `lo` members.
* It exchanges `Const` for `u128` in `Constructor::ConstantRange`.
2018-09-12 01:56:48 +00:00
Esteban Küber
5f8bf91e96 address review comment, reduce scope 2018-09-11 17:09:23 -07:00
Esteban Küber
633a47becb Simplify the recovered tuple ty 2018-09-11 17:09:22 -07:00
Esteban Küber
3d7099a968 Do not emit E0277 on incorrect tuple destructured binding 2018-09-11 17:09:22 -07:00
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