119768 Commits

Author SHA1 Message Date
Dylan DPC
5747d1e000
Rollup merge of #71767 - tshepang:stack-stuff, r=jonas-schievink
doc: make Stack and StackElement a little pretty

Also, fix rustdoc warnings.
2020-05-02 18:27:31 +02:00
Dylan DPC
e96036fca2
Rollup merge of #69274 - LeSeulArtichaut:target-feature-11, r=hanna-kruppe
Implement RFC 2396: `#[target_feature]` 1.1

Tracking issue: #69098

r? @nikomatsakis
cc @gnzlbg @joshtriplett
2020-05-02 18:27:27 +02:00
bors
d20113d0f5 Auto merge of #71794 - RalfJung:miri, r=RalfJung
update Miri

This contains the concurrency support by @vakaras :)

Fixes https://github.com/rust-lang/rust/issues/71729
r? @ghost
Cc @rust-lang/miri
2020-05-02 16:24:51 +00:00
Bastian Kauschke
a691521867
typo 2020-05-02 18:16:36 +02:00
Eduard-Mihai Burtescu
50c63e48f1 ty: use delay_span_bug in ty::AdtDef::eval_explicit_discr. 2020-05-02 18:58:39 +03:00
Markus Reiter
39a97900be Replace cfg macro with attribute. 2020-05-02 17:06:16 +02:00
Simonas Kazlauskas
a569f2970a Update psm and stacker to 0.1.7 2020-05-02 16:47:56 +02:00
Simonas Kazlauskas
a5c5365031 Move ensure_sufficient_stack to data_structures
We anticipate this to have uses in all sorts of crates and keeping it in
`rustc_data_structures` enables access to it from more locations without
necessarily pulling in the large `librustc` crate.
2020-05-02 16:47:52 +02:00
Simonas Kazlauskas
968f442c7c Set the default stack size to 8MB
This was the value used before we originally started raising the stack
size to infinity.
2020-05-02 16:38:01 +02:00
Oliver Scherer
96c5012b57 Add psm to the crate whitelist 2020-05-02 16:38:01 +02:00
Oliver Scherer
26edcee093 Prevent stack overflow for deeply recursive code 2020-05-02 16:37:57 +02:00
bors
53d3bc02ed Auto merge of #70655 - oli-obk:subrepo_funness, r=Mark-Simulacrum
Make clippy a git subtree instead of a git submodule

r? @eddyb

cc #70651

documentation at https://github.com/rust-lang/rust/pull/70654
2020-05-02 13:19:30 +00:00
Ralf Jung
89666ab6b4 fix miri-unleash delayed sanity checking 2020-05-02 14:39:19 +02:00
Ralf Jung
17ca7a0e48 explain why we use def_span 2020-05-02 13:35:17 +02:00
Ralf Jung
08ba0145c7 make sure the miri-unleash-flag is not used to circumvent feature gates 2020-05-02 13:32:58 +02:00
bors
7184d137f6 Auto merge of #71795 - RalfJung:rollup-yqxfi5a, r=RalfJung
Rollup of 6 pull requests

Successful merges:

 - #71712 (Miri: port error backtraces to std::backtrace)
 - #71736 (bootstrap: also apply unused-attributes hack without deny_warnings)
 - #71738 (remove AllocId generalization of Pointer)
 - #71739 (remove obsolete comment)
 - #71781 (Uncomment test code for failure to use `Box::pin`)
 - #71782 (Use a non-existent test path instead of clobbering /dev/null)

Failed merges:

r? @ghost
2020-05-02 10:13:57 +00:00
Matthew Jasper
34eb2c1d4f Report cannot move errors in promoted MIR 2020-05-02 11:11:17 +01:00
Ralf Jung
2ee49eb738
Rollup merge of #71782 - cuviper:leave-dev-null-alone, r=Mark-Simulacrum
Use a non-existent test path instead of clobbering /dev/null

Fixes #71502.
r? @Mark-Simulacrum
2020-05-02 12:08:15 +02:00
Ralf Jung
a9c818ebb2
Rollup merge of #71781 - estebank:box-pin-test, r=tmandry
Uncomment test code for failure to use `Box::pin`

Close #69083.
2020-05-02 12:08:13 +02:00
Ralf Jung
509896fb96
Rollup merge of #71739 - tshepang:master, r=Dylan-DPC
remove obsolete comment

Referenced was removed in 9f492fefef8d9a75f6dc27c834561fe977ca70c5
2020-05-02 12:08:12 +02:00
Ralf Jung
6616e2ca27
Rollup merge of #71738 - RalfJung:pointer-no-alloc-id, r=oli-obk
remove AllocId generalization of Pointer

This was only needed for the "snapshot" machinery, which is gone.

r? @oli-obk
2020-05-02 12:08:10 +02:00
Ralf Jung
72b8a31cae
Rollup merge of #71736 - RalfJung:silence-spurious-unused, r=Mark-Simulacrum
bootstrap: also apply unused-attributes hack without deny_warnings

This is a follow-up to https://github.com/rust-lang/rust/pull/70881 that also silences these warnings when deny_warnings is off. They otherwise spam my screen during development and make it hard to see actual warnings.

Cc  @eddyb r? @Mark-Simulacrum
2020-05-02 12:08:09 +02:00
Ralf Jung
cd824a5232
Rollup merge of #71712 - RalfJung:error-backtrace, r=oli-obk
Miri: port error backtraces to std::backtrace

No need to pull in an external dependency if libstd already includes this feature (using the same dependency internally, but... still).

r? @oli-obk
2020-05-02 12:08:03 +02:00
Ralf Jung
9c4ae74ce6 update Miri 2020-05-02 12:04:13 +02:00
Vadim Petrochenkov
ff86a45820 cleanup: config::CrateType -> CrateType 2020-05-02 11:57:23 +03:00
Tshepang Lekhonkhobe
3be52b5941 fix rustdoc warnings 2020-05-02 10:41:04 +02:00
Oliver Scherer
bce9fae97a Add 'src/tools/clippy/' from commit 'd2708873ef711ec8ab45df1e984ecf24a96cd369'
git-subtree-dir: src/tools/clippy
git-subtree-mainline: 06c44816c1532e5ff08ad072f581fc068eb60e2e
git-subtree-split: d2708873ef711ec8ab45df1e984ecf24a96cd369
2020-05-02 09:49:00 +02:00
Oliver Scherer
06c44816c1 Delete the clippy submodule 2020-05-02 09:48:46 +02:00
Oliver Scherer
1ef5a93af6 Also build clippy with ./x.py check 2020-05-02 09:46:42 +02:00
Oliver Scherer
a1824505d8 Gate on clippy on CI 2020-05-02 09:46:42 +02:00
Tshepang Lekhonkhobe
3406b53bac
Update src/libserialize/json.rs
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-05-02 08:51:54 +02:00
bors
08dfbfb618 Auto merge of #70170 - eddyb:wf-early-exit, r=nikomatsakis
wf: handle "livelock" checking before reaching `WfPredicates::compute`.

For `wf::obligations`'s "livelock" handling, this PR shouldn't cause any behavioral changes, as the check moved to it should be equivalent to the old one in `WfPredicates::compute`.

However, it fixes #70168 by making *other* users of `WfPredicates::compute` (that is, `wf::predicate_obligations` and `compute`'s own upvar handling) correct for `ty::Infer`, in that they now get a `WellFormed(ty::Infer(_))` obligation instead of silently ignoring the type.

r? @nikomatsakis
2020-05-02 06:51:08 +00:00
Félix Fischer
d0dea9f588 Added MIR constant propagation of Scalars into function call arguments
- Documented rationale of current solution
- Polished documentation
2020-05-02 00:40:03 -04:00
Donough Liu
9a212c1625 Replace convenient function remove_prefix() with replace_prefix() 2020-05-02 12:04:03 +08:00
Donough Liu
089d4bbfd7 Suggestion for immutable reference -> mutable pointer should be emitted
as `Applicability::Unspecified`
2020-05-02 12:04:03 +08:00
Donough Liu
80d04cc1ba Add comments for deref_steps() 2020-05-02 12:04:03 +08:00
Donough Liu
60d62bee36 Suggest deref when coercing ty::Ref to ty::RawPtr with arbitrary
mutability
2020-05-02 12:04:03 +08:00
bors
dae90c1959 Auto merge of #71716 - alexcrichton:bitcode-follow-up, r=nnethercote
Rename `bitcode-in-rlib` option to `embed-bitcode`

This commit finishes work first pioneered in #70458 and started in #71528.
The `-C bitcode-in-rlib` option, which has not yet reached stable, is
renamed to `-C embed-bitcode` since that more accurately reflects what
it does now anyway. Various tests and such are updated along the way as
well.

This'll also need to be backported to the beta channel to ensure we
don't accidentally stabilize `-Cbitcode-in-rlib` as well.
2020-05-02 03:39:04 +00:00
Hanif Bin Ariffin
19e5da902b SipHasher::new() is literally with SipHasher with both keys being 0 2020-05-01 23:26:52 -04:00
Jacob Kiesel
b5c1f45273
Remove recommendation for unmaintained crate 2020-05-01 20:51:20 -06:00
bors
19ae74d0d0 Auto merge of #71776 - Dylan-DPC:rollup-k1iuuow, r=Dylan-DPC
Rollup of 5 pull requests

Successful merges:

 - #71018 (handle ConstValue::ByRef in relate)
 - #71758 (Remove leftover chalk types)
 - #71760 (Document unsafety for `*const T` and `*mut T`)
 - #71761 (doc: reference does not exist, probably a typo)
 - #71762 (doc: this resulted in a link pointing to a non-existent target)

Failed merges:

 - #71726 (Suggest deref when coercing `ty::Ref` to `ty::RawPtr` with arbitrary mutability)

r? @ghost
2020-05-02 00:21:39 +00:00
Esteban Küber
b3a8f212f8 Uncomment test code for failure to use Box::pin
Close #69083.
2020-05-01 16:53:20 -07:00
Josh Stone
fbd3fbdb24 Use a non-existent test path instead of clobbering /dev/null 2020-05-01 16:50:10 -07:00
Dylan DPC
f2fddd35af
Rollup merge of #71762 - tshepang:typo, r=jonas-schievink
doc: this resulted in a link pointing to a non-existent target
2020-05-01 23:16:40 +02:00
Dylan DPC
50f212e4d5
Rollup merge of #71761 - tshepang:missing-target, r=jonas-schievink
doc: reference does not exist, probably a typo
2020-05-01 23:16:38 +02:00
Dylan DPC
05b1991e76
Rollup merge of #71760 - LeSeulArtichaut:document-unsafety, r=Mark-Simulacrum
Document unsafety for `*const T` and `*mut T`

Helps with #66219
r? @Mark-Simulacrum
2020-05-01 23:16:36 +02:00
Dylan DPC
8aad12b87d
Rollup merge of #71758 - jackh726:chalk-remove, r=jackh726
Remove leftover chalk types

Split out from #69406

Since the other PR is having memory problems with `parallel-compiler = true`, figured I should split this out. Surprisingly, this actually changes some errors, and I'm not quite sure why.

r? @nikomatsakis
2020-05-01 23:16:35 +02:00
Dylan DPC
14c3ee906b
Rollup merge of #71018 - lcnr:custom-const-param, r=eddyb
handle ConstValue::ByRef in relate

fixes #68615

r? @eddyb
2020-05-01 23:16:32 +02:00
bors
dba944a6b7 Auto merge of #69808 - cjgillot:vtbl, r=pnkfelix
Avoid duplicating code for each query

There are at the moment roughly 170 queries in librustc.
The way `ty::query` is structured, a lot of code is duplicated for each query.
I suspect this to be responsible for a part of librustc'c compile time.

The first part of this PR reduces the amount of code generic on the query,
replacing it by code generic on the key-value types. I can split it out if needed.

In a second part, the non-inlined methods in the `QueryAccessors` and `QueryDescription` traits
are made into a virtual dispatch table. This allows to reduce even more the number of generated
functions.

This allows to save 1.5s on check build, and 10% on the size of the librustc.rlib.
(Attributed roughly half and half).
My computer is not good enough to measure properly compiling time.
I have no idea of the effect on performance. A perf run may be required.

cc #65031
2020-05-01 21:08:23 +00:00
Tshepang Lekhonkhobe
5314f0126c doc: misc rustdoc things 2020-05-01 22:32:33 +02:00