Commit Graph

104538 Commits

Author SHA1 Message Date
Camille GILLOT
f5c63e7b27 Introduce librustc/middle/mod.rs 2019-12-29 16:21:55 +01:00
Camille GILLOT
57681628f9 Move get_lib_features query in librustc_passes. 2019-12-29 16:18:05 +01:00
Camille GILLOT
ec3a9f64f1 Move lib_features.rs in librustc_passes. 2019-12-29 16:17:35 +01:00
Camille GILLOT
fd4d50d442 Move diagnostic_items queries to librustc_passes. 2019-12-29 10:45:20 +01:00
Camille GILLOT
2a14d16583 Move diagnostic_items.rs to librustc_passes. 2019-12-29 10:45:08 +01:00
Camille GILLOT
4922310a3b Move reachable_set query in librustc_passes. 2019-12-29 10:45:00 +01:00
Camille GILLOT
2e7dbb42c7 Move reachable.rs to librustc_passes. 2019-12-29 10:44:52 +01:00
bors
774a4bd4f4 Auto merge of #67614 - Mark-Simulacrum:global-callbacks, r=Zoxc
Set callbacks globally

This sets the callbacks from syntax and rustc_errors just once, utilizing static (rather than thread-local) storage.
2019-12-29 04:30:56 +00:00
bors
00fc203b65 Auto merge of #67334 - estebank:ignore-triple, r=nikomatsakis
Teach `compiletest` to ignore platform triples

The UI tests are written assuming `--remap-path-prefix` is *not used* (`remap-debuginfo` in `config.toml`). The consequence is that the error messages may include paths and snippets into the standard library. When `remap-debuginfo` is enabled, these messages change in format and structure because `rustc` will not show paths and snippets into the standard library.

This normally isn't a problem for the "main" platforms (linux/macos/windows), because the CI infrastructure is set up so that the tests run without `remap-debuginfo`, but the `dist` artifacts are built separately with `remap-debuginfo` enabled. However, some of the lower-tier platforms perform both tests and distribution in a single step with `remap-debuginfo` enabled. This also affects developers and distributors who use `remap-debuginfo`.

To sidestep this problem, we add a way to ignore tests in specific platform triples, and update the overly broad `ignore-x86` rule in affected tests.

Address #46948, #54546, #53081.
2019-12-28 23:02:09 +00:00
Esteban Küber
90bf0d2e33 Ignore i586-unknown-linux-gnu and i586-unknown-musl in tests 2019-12-28 12:26:48 -08:00
bors
3a3f4a7cba Auto merge of #67151 - petrochenkov:docomm, r=estebank
doc comments: Less attribute mimicking

Make sure doc comments are not converted into intermediate meta-items, or not mixed with `doc(inline)` or something like that.

Follow-up to https://github.com/rust-lang/rust/pull/65750.
2019-12-28 19:23:36 +00:00
bors
e39ae6f883 Auto merge of #67459 - ssomers:#67438, r=RalfJung
prune ill-conceived BTreeMap iter_mut assertion and test its mutability

Proposal to deal with #67438 (and I'm more sure now that this is the right thing to do).
Passes testing with miri.
2019-12-28 16:04:40 +00:00
bors
2ee25dae12 Auto merge of #67675 - RalfJung:miri, r=RalfJung
update miri
2019-12-28 12:37:30 +00:00
Ralf Jung
b0b040efc1 update miri 2019-12-28 11:20:25 +01:00
Vadim Petrochenkov
3d57b8bcc0 doc comments: Less attribute mimicking 2019-12-28 12:33:18 +03:00
bors
f564c4db0d Auto merge of #67605 - lzutao:msdn-links, r=Mark-Simulacrum
tidy: change msdn links to newer locations

see accouncement at https://docs.microsoft.com/welcome-to-docs
The script that I used: https://gist.github.com/lzutao/1449c9210ad91899841d62e0058d2caa
2019-12-28 09:19:26 +00:00
bors
8b4d22cb25 Auto merge of #67598 - jumbatm:issue67557_simd_shuffle, r=oli-obk
Fix ICE / miscompilation when inlining simd shuffle intrinsic in MIR.

Closes #67557.

r? @oli-obk
2019-12-28 06:02:45 +00:00
Esteban Küber
52b4681de4 Teach compiletest to ignore platform triples 2019-12-27 20:11:19 -08:00
bors
3a087ad3a9 Auto merge of #67670 - oli-obk:rollup-2dp08sd, r=oli-obk
Rollup of 15 pull requests

Successful merges:

 - #65244 (add IntoFuture trait and support for await)
 - #67576 (reuse `capacity` variable in slice::repeat)
 - #67588 (Use NonNull in slice::Iter and slice::IterMut.)
 - #67594 (Update libc to 0.2.66)
 - #67602 (Use issue = "none" instead of "0" in intrinsics)
 - #67604 (Add Scalar::to_(u|i)16 methods)
 - #67617 (Remove `compiler_builtins_lib` documentation)
 - #67621 (Use the correct type for static qualifs)
 - #67629 (Remove redundant link texts)
 - #67632 (Convert collapsed to shortcut reference links)
 - #67633 (Update .mailmap)
 - #67635 (Document safety of Path casting)
 - #67654 (Add regression test for old NLL ICE)
 - #67659 (Stabilize the `matches!` macro)
 - #67664 (Fix some mailmap entries)

Failed merges:

r? @ghost
2019-12-28 00:18:59 +00:00
Oliver Scherer
65bbcf0e13
Rollup merge of #67664 - Manishearth:mailmapfixes, r=Mark-Simulacrum
Fix some mailmap entries

r? @pietroalbini
2019-12-28 00:36:18 +01:00
Oliver Scherer
335c887721
Rollup merge of #67659 - SimonSapin:matches, r=rkruppe
Stabilize the `matches!` macro

Fixes https://github.com/rust-lang/rust/issues/65721

FCP: https://github.com/rust-lang/rust/issues/65721#issuecomment-569118119
2019-12-28 00:36:17 +01:00
Oliver Scherer
9eb45e38dc
Rollup merge of #67654 - rossmacarthur:fix-51770-add-regression-test, r=Centril
Add regression test for old NLL ICE

This fails on nightly-2018-06-24.

Resolves #51770
2019-12-28 00:36:16 +01:00
Oliver Scherer
9525e8e6b2
Rollup merge of #67635 - Mark-Simulacrum:path-doc-unsafe, r=dtolnay
Document safety of Path casting

I would personally feel more comfortable making the relevant (internal anyway) types repr(transparent) and then documenting that we can make these casts because of that, but I believe this is a more minimal PR, so posting it first.

Resolves #45910.
2019-12-28 00:36:14 +01:00
Oliver Scherer
47d5acf54d
Rollup merge of #67633 - christianpoveda:patch-1, r=Mark-Simulacrum
Update .mailmap
2019-12-28 00:36:13 +01:00
Oliver Scherer
48efc1e6c2
Rollup merge of #67632 - kraai:remove-collapsed-reference-links, r=steveklabnik
Convert collapsed to shortcut reference links
2019-12-28 00:36:11 +01:00
Oliver Scherer
b371e0fa00
Rollup merge of #67629 - kraai:remove-redundant-link-texts, r=steveklabnik
Remove redundant link texts

Most of these links are followed by a parenthesized expression.  I think that the redundant link texts were added to prevent interpretation as an inline link.  This is unnecessary since the closing square bracket and opening parenthesis are separated by whitespace.
2019-12-28 00:36:09 +01:00
Oliver Scherer
b88ce0ed4b
Rollup merge of #67621 - matthewjasper:correct-static-type, r=oli-obk
Use the correct type for static qualifs

Closes #67609
2019-12-28 00:36:08 +01:00
Oliver Scherer
98de5042b0
Rollup merge of #67617 - kraai:remove-compiler_builtins_lib-docs, r=Dylan-DPC
Remove `compiler_builtins_lib` documentation

Fixes #67593
2019-12-28 00:36:07 +01:00
Oliver Scherer
e9af9dba6f
Rollup merge of #67604 - christianpoveda:scalar_to_(u|i)64, r=RalfJung
Add Scalar::to_(u|i)16 methods

r? @RalfJung
2019-12-28 00:36:05 +01:00
Oliver Scherer
4cf4fc6cb1
Rollup merge of #67602 - xfix:use-issue-none-instead-of-0-in-intrinsics, r=Centril
Use issue = "none" instead of "0" in intrinsics

`issue = "0"` was incorrectly used in 9ee16e14c5, the project is moving away from issue 0
2019-12-28 00:36:04 +01:00
Oliver Scherer
31fd966647
Rollup merge of #67594 - oxalica:update-libc, r=Dylan-DPC
Update libc to 0.2.66

cc @gnzlbg @alexcrichton
2019-12-28 00:36:02 +01:00
Oliver Scherer
4b91966501
Rollup merge of #67588 - Kixunil:nonnull-slice-iter, r=rkruppe
Use NonNull in slice::Iter and slice::IterMut.

`ptr` of `slice::Iter` and `slice::IterMut` can never be null, but this
fact wasn't exploited for layout optimizations. By changing `ptr` from
`*<mutability> T` to `NonNull<T>`, the compiler can now optimize layout
of `Option<Iter<'a, T>>`.

Closes #67228
2019-12-28 00:36:01 +01:00
Oliver Scherer
a076464c4a
Rollup merge of #67576 - king6cong:slice_repeat, r=Dylan-DPC
reuse `capacity` variable in slice::repeat

None
2019-12-28 00:35:59 +01:00
Oliver Scherer
b1b005b8f0
Rollup merge of #65244 - seanmonstar:into-future, r=seanmonstar
add IntoFuture trait and support for await

The [async-await RFC](https://rust-lang.github.io/rfcs/2394-async_await.html#the-await-compiler-built-in) mentions being able to `await` anything implementing `IntoFuture`. Somewhere along the way, it was left out.
2019-12-28 00:35:58 +01:00
Sean McArthur
f35517ee86 core: add IntoFuture trait and support for await 2019-12-27 11:56:11 -08:00
bors
74c4e6a981 Auto merge of #67035 - Goirad:implement-ipadd-padding, r=dtolnay
Implement padding for IpAddr without heap alloc

Implements padding for `IpAddr`s without heap allocations.
This fixes issue #66810 .

cc @jethrogb @mzohreva
2019-12-27 18:40:50 +00:00
Manish Goregaokar
e518e38564 Fix whitequark's entry in the mailmap 2019-12-27 09:52:59 -08:00
Manish Goregaokar
1ec81abad6 Fix Nika's entry in the mailmap 2019-12-27 09:52:59 -08:00
Manish Goregaokar
aa5983d560 Fix my entry in the mailmap 2019-12-27 09:43:36 -08:00
Simon Sapin
1c572a2d6e Stabilize the matches! macro
Fixes https://github.com/rust-lang/rust/issues/65721

FCP: https://github.com/rust-lang/rust/issues/65721#issuecomment-569118119
2019-12-27 14:07:16 +01:00
Ross MacArthur
749295cfbf
Add regression test for old NLL ICE 2019-12-27 13:36:41 +02:00
bors
41501a6b03 Auto merge of #67437 - matthew-healy:skip-llvm-rebuild, r=Mark-Simulacrum
Add LLVM `skip-rebuild` option to `x.py`

This PR reimplements parts of @Walther's work from #65848, and closes #65612.

I decided not to implement the [arguments to override this setting](https://github.com/rust-lang/rust/issues/65612#issuecomment-544247546) in this PR. If there's strong feeling that this change shouldn't be merged without the overrides then I'm happy to close this until I've had a chance to add them in. Otherwise I'll aim to submit a second PR with those this weekend.

I'd have liked to have tested the change in `native.rs`, but there didn't seem to be any existing test infrastructure. I ran this a few times manually and it _worked on my machine_ though... 😬
2019-12-27 10:58:57 +00:00
bors
8f5f8f916f Auto merge of #67192 - oli-obk:const_zst_addr, r=RalfJung,varkor
Various const eval and pattern matching ICE fixes

r? @RalfJung
cc @spastorino

This PR does not change existing behaviour anymore and just fixes a bunch of ICEs reachable from user code (sometimes even on stable via obscure union transmutes).
2019-12-27 07:38:52 +00:00
bors
a04c789f69 Auto merge of #66936 - cjgillot:hirene-expr, r=Zoxc
Allocate HIR on an arena 2/4 -- Expr & Pat

This is the second PR in the series started by #66931

This time, commits don't really make sense on their own.
They are mostly split by type of compile error.

The additional diff is here: https://github.com/cjgillot/rust/compare/hirene-preamble...hirene-expr
2019-12-27 01:40:41 +00:00
Camille GILLOT
fb100e5ddc Move arena_vec inside lowering. 2019-12-26 23:40:50 +01:00
Camille GILLOT
75632c5ffe Remove some type information. 2019-12-26 23:40:13 +01:00
Camille GILLOT
1984ec5d20 Fewer calls to arena.alloc. 2019-12-26 23:39:14 +01:00
Camille GILLOT
8284035372 Fallout in other crates. 2019-12-26 23:38:46 +01:00
Camille GILLOT
58b908d09c Lowering for hir::Expr. 2019-12-26 23:36:12 +01:00
Camille GILLOT
52e9825ba8 Visit for hir::Expr. 2019-12-26 23:36:12 +01:00