Commit graph

140568 commits

Author SHA1 Message Date
bors
9bc8c42bb2 Auto merge of #85097 - Mark-Simulacrum:stable-next, r=Mark-Simulacrum
[stable] 1.52.1 release

Note that this may not be the version we end up going with. However, in the interests of having the artifacts available should we choose to use them, this PR will prepare a set of artifacts which:

* Disables incremental compilation unless the user has explicitly opted in (via an environment variable, for ease of setting it globally)
* Adds the improved error message which tells the user how to workaround the breakage, intended for users who do explicitly re-enable incremental

Note that the release notes mark Monday as the release date; I think it is likely that if we choose to go down this path we should indeed release on Monday, and potentially follow up in a week or two (e.g., May 20th) with a 1.52.2 if we have confidence in some collection of fixes. I think this will be unlikely, though.

Please also note that this PR breaks normal policy by landing commits/work **only** on the stable branch. It is my intent to follow up with PRs toward beta and master, as well, but in the interests of making sure we have artifacts as early as possible I am posting this first. It will also let us provide an ask for testing, via the dev-static bucket, sooner rather than later.
2021-05-09 02:52:12 +00:00
Mark Rousskov
a0190b5fdd Add link to issue 2021-05-08 22:05:42 -04:00
Aaron Hill
572d14db8c Show nicer error when an 'unstable fingerprints' error occurs 2021-05-08 22:05:42 -04:00
Mark Rousskov
6d698cecf5 Bump to 1.52.1
This bumps the stable version number and adds corresponding release notes.
2021-05-08 22:05:42 -04:00
Mark Rousskov
4e62503598 Soft disable incremental
This disables incremental (i.e., -Cincremental) taking effect unless an
environment variable, RUSTC_FORCE_INCREMENTAL, is set to 1 in the environment of
the running rustc. Currently incremental causes errors for many users, and we do
not have an expectation of being able to quickly fix these errors in a
backportable way - so, for now, disable incremental entirely. The user can still
opt-in, but this way the majority of users merely get slower builds, not broken
builds.
2021-05-08 22:05:42 -04:00
bors
88f19c6dab Auto merge of #84864 - Mark-Simulacrum:stable-next, r=Mark-Simulacrum
[stable] 1.52.0 release

This includes the release notes (#84183) as well as cherry-picked commits from:

* [beta] revert PR #77885 #84710
* [beta] remove assert_matches #84759
* Revert PR 81473 to resolve (on beta) issues 81626 and 81658. #83171
* [beta] rustdoc revert deref recur #84868
*  Fix ICE of for-loop mut borrowck where no suggestions are available #83401

Additionally in "fresh work" we're also:

* reverting: directly expose copy and copy_nonoverlapping intrinsics #81238 to avoid https://github.com/rust-lang/rust/issues/84297 on 1.52
2021-05-03 20:56:34 +00:00
Mark Rousskov
47c7b9c578 remove copy intrinsic test - no longer const 2021-05-03 15:20:12 -04:00
Mark Rousskov
f99929f24a Remove some more consts 2021-05-03 14:52:12 -04:00
Deadbeef
ab7b1cca2d Fix ICE of for-loop mut borrowck where no suggestions are available 2021-05-03 14:35:18 -04:00
Mark Rousskov
28e5e93fc2 drop some const unstables, due to revert no longer possible 2021-05-03 14:35:18 -04:00
Mark Rousskov
80ec986f9f Revert "Fix clippy's path to the copy intrinsics."
This reverts commit 1a806352e4.
2021-05-03 14:24:21 -04:00
Mark Rousskov
a3ebc6eaf4 Revert "directly expose copy and copy_nonoverlapping intrinsics"
This reverts commit 18d12ad171.
2021-05-03 14:23:55 -04:00
Felix S. Klock II
9c14391f93 placate tidy. 2021-05-03 13:51:18 -04:00
Felix S. Klock II
106ac7eefc regression test for issue 82465. 2021-05-03 13:51:18 -04:00
Felix S. Klock II
e917d2f1ea beta-targetted revert of PR #80653, to address issue #82465.
adapted from 513756bb55a0dbc6e74d0043afd1727bd3c73aae
2021-05-03 13:51:18 -04:00
Felix S. Klock II
381f1318ad Revert PR 81473 to resolve (on beta) issues 81626 and 81658.
Revert "Add missing brace"

This reverts commit 85ad773049.

Revert "Simplify base_expr"

This reverts commit 899aae465e.

Revert "Warn write-only fields"

This reverts commit d3c69a4c0d.
2021-05-03 11:43:15 -04:00
Mara Bos
cadf901b1d Remove assert_matches feature attributes. 2021-05-03 09:30:11 -04:00
Mark Rousskov
aa3e8d3e78 Remove assert_matches users 2021-05-03 09:30:11 -04:00
Mark Rousskov
1406d06104 Revert "Add debug_assert_matches macro."
This reverts commit 0a8e401188.
2021-05-03 09:30:11 -04:00
Mark Rousskov
fa332b0245 Revert "Add assert_matches!(expr, pat)."
This reverts commit eb18746bc6.
2021-05-03 09:30:11 -04:00
Felix S. Klock II
463b3a2a74 Remove tests introduced or cahnged by PR #77885, which is reverted in this PR. 2021-05-03 09:29:50 -04:00
Felix S. Klock II
1905c98e92 Effective beta backport of 8d1083e319
(I recreated it by hand because the result of the cherry-pick wasn't worth
trying to salvage.)
2021-05-03 09:29:50 -04:00
Mark Rousskov
59ed9c3add Cherry-pick release notes 2021-05-03 09:29:08 -04:00
Mark Rousskov
3ee054c324 bump channel to stable 2021-05-03 09:26:13 -04:00
bors
9a1dfd2dc5 Auto merge of #84722 - pnkfelix:address-c-unwind-via-backport-of-84158, r=Mark-Simulacrum
backport: move new c abi abort behavior behind feature gate

This is a backport of PR #84158 to the beta branch.

The original T-compiler plan was to revert PR #76570 in its entirety, as was attempted in PR #84672. But the revert did not go smoothly (details below).

Therefore, we are backporting PR #84158 instead, which was our established backup plan if a revert did not go smoothly.

I have manually confirmed that this backport fixes the luajit issue described on issue #83541

<details>

<summary>Click for details as to why revert of PR #76570 did not go smoothly.</summary>

It turns out that Miri had been subsequently updated to reflect changes to `rustc_target` that landed in PR #76570. This meant that the attempt to land PR #84672 broke Miri builds.

Normally we allow tools to break when landing PR's (and just expect follow-up PR's to fix the tools), but we don't allow it for tools in the run-up to a release.

(We shouldn't be using that uniform policy for all tools. Miri should be allow to break during the week before a release; but currently we cannot express that, due to issue #74709.)

Therefore, its a lot of pain to try to revert PR #76570. And we're going with the backup plan.

</details>

Original commit message follows:

----

 *Background*

In #76570, new ABI strings including `C-unwind` were introduced. Their behavior is specified in RFC 2945 <sup>[1]</sup>.

However, it was reported in the #ffi-unwind stream of the Rust community Zulip that this had altered the way that `extern "C"` functions behaved even when the `c_unwind` feature gate was not active. <sup>[2]</sup>

 *Overview*

 This makes a small patch to `rustc_mir_build::build::should_abort_on_panic`, so that the same  behavior from before is in place when the `c_unwind` gate is not active.

`rustc_middle::ty::layout::fn_can_unwind` is not touched, as the visible behavior should not differ before/after #76570. <sup>[3]</sup>

 ### Footnotes

 1.: https://github.com/rust-lang/rfcs/blob/master/text/2945-c-unwind-abi.md
 2.: https://rust-lang.zulipchat.com/#narrow/stream/210922-project-ffi-unwind/topic/Is.20unwinding.20through.20extern.20C.20UB.3F/near/230112325
 3.: https://github.com/rust-lang/rust/pull/76570/files#diff-b0320c2b8868f325d83c027fc5d71732636e9763551e35895488f30fe057c6e9L2599-R2617

 [1]: https://github.com/rust-lang/rfcs/blob/master/text/2945-c-unwind-abi.md
 [2]: https://rust-lang.zulipchat.com/#narrow/stream/210922-project-ffi-unwind/topic/Is.20unwinding.20through.20extern.20C.20UB.3F/near/230112325
 [3]: https://github.com/rust-lang/rust/pull/76570/files#diff-b0320c2b8868f325d83c027fc5d71732636e9763551e35895488f30fe057c6e9L2599-R2617
2021-04-30 02:56:19 +00:00
katelyn a. martin
8341f4274d move new c abi abort behavior behind feature gate
### Background

    In #76570, new ABI strings including `C-unwind` were introduced.
    Their behavior is specified in RFC 2945 [1].

    However, it was reported in the #ffi-unwind stream of the Rust
    community Zulip that this had altered the way that `extern "C"`
    functions behaved even when the `c_unwind` feature gate was not
    active. [2]

 ### Overview

    This makes a small patch to
    `rustc_mir_build::build::should_abort_on_panic`, so that the same
    behavior from before is in place when the `c_unwind` gate is not
    active.

    `rustc_middle::ty::layout::fn_can_unwind` is not touched, as the
    visible behavior should not differ before/after #76570. [3]

 ### Footnotes

 [1]: https://github.com/rust-lang/rfcs/blob/master/text/2945-c-unwind-abi.md
 [2]: https://rust-lang.zulipchat.com/#narrow/stream/210922-project-ffi-unwind/topic/Is.20unwinding.20through.20extern.20C.20UB.3F/near/230112325
 [3]: https://github.com/rust-lang/rust/pull/76570/files#diff-b0320c2b8868f325d83c027fc5d71732636e9763551e35895488f30fe057c6e9L2599-R2617
2021-04-29 17:07:56 -04:00
bors
f97769a2b7 Auto merge of #84603 - cuviper:beta-next, r=Mark-Simulacrum
[beta] backports

This backports two beta-accepted PRs, fixing CVE-2020-36323 and CVE-2021-31162.

- Fixes API soundness issue in `join()` #81728
- Fix double-drop in `Vec::from_iter(vec.into_iter())` specialization when items drop during panic #83629
2021-04-27 15:17:44 +00:00
The8472
836fef007e fix double-drop in in-place collect specialization
(cherry picked from commit 421f5d282a)
2021-04-26 16:47:40 -07:00
The8472
6ed66ebdde add testcase for double-drop during Vec in-place collection
(cherry picked from commit fa89c0fbcf)
2021-04-26 16:47:40 -07:00
Yechan Bae
cc4d6d644b Update the comment
(cherry picked from commit 26a62701e4)
2021-04-26 16:46:11 -07:00
Yechan Bae
2fefd9ad07 Fixes #80335
(cherry picked from commit 6d43225bfb)
2021-04-26 16:46:10 -07:00
bors
cc6d66fa58 Auto merge of #84271 - nagisa:nagisa/beta-bump-llvm, r=cuviper
[beta] Bump LLVM to a upstream 12.0 release

Currently the `beta` branch utilizes a release candidate of LLVM 12.0. Since then a large number of issues have been fixed upstream, including those that are known to affect Rust code.

It would be unfortunate if we released a stable Rust with all of those issues when we have the fixes in the actual LLVM release and/or our backports of commits that didn't make the release cut on top of it.

cc `@cuviper` / `@nikic`
2021-04-24 07:37:42 +00:00
bors
b2df13e6c6 Auto merge of #84382 - ehuss:update-beta-cargo, r=ehuss
[beta] Beta rollups

- Upgrade expat dependency in riscv64 to newer version. #84394
- Fix Self keyword doc URL conflict on case insensitive file systems (until definitely fixed on rustdoc) #83678
- Cargo:
    - Backport "Don't give a hard error when the end-user specifies RUSTC_BOOTSTRAP=crate_name" (rust-lang/cargo#9385)
    - [beta] Revert rust-lang/cargo#9133, moving to git HEAD dependencies by default (rust-lang/cargo#9383)
2021-04-21 20:58:16 +00:00
Dylan DPC
9787d0c780 Rollup merge of #83678 - GuillaumeGomez:hack-Self-keyword-conflict, r=jyn514
Fix Self keyword doc URL conflict on case insensitive file systems (until definitely fixed on rustdoc)

This is just a hack to allow rustup to work on macOS and windows again to distribute std documentation (hopefully once https://github.com/rust-lang/rfcs/pull/3097 or an equivalent is merged).

Fixes https://github.com/rust-lang/rust/issues/80504. Prevents https://github.com/rust-lang/rust/issues/83154 and https://github.com/rust-lang/rustup/issues/2694 in future releases.

cc ``@kinnison``
r? ``@jyn514``
2021-04-21 13:41:24 -07:00
bors
97ffd5433e Auto merge of #84394 - m-ou-se:upgrade-ci-dep-expat, r=Mark-Simulacrum
Upgrade `expat` dependency in riscv64 to newer version.

The old version was renamed to `expat-2.2.6-RENAMED-VULNERABLE-PLEASE-USE-2.3.0-INSTEAD`. :)

r? `@Mark-Simulacrum`
2021-04-21 13:40:20 -07:00
Eric Huss
6f3aa4b015 [beta] Update cargo 2021-04-20 20:39:58 -07:00
Simonas Kazlauskas
46a2c6ad0a [beta] Bump LLVM to a upstream release of 12.0 2021-04-17 14:59:56 +03:00
bors
215738137b Auto merge of #83946 - ehuss:update-beta-cargo, r=ehuss
[beta] Update cargo

2 commits in 90691f2bfe9a50291a98983b1ed2feab51d5ca55..d70308ef052397c7d16f881c2d973a8c5b4c23d9
2021-03-16 21:36:55 +0000 to 2021-04-06 17:32:27 +0000
- beta: revert rust-lang/cargo#8640 - rustdoc versioning checks (rust-lang/cargo#9332)
- [beta] Fix publication of packages with metadata and resolver (rust-lang/cargo#9304)
2021-04-06 21:31:12 +00:00
Eric Huss
941f698b31 [beta] Update cargo 2021-04-06 13:09:37 -07:00
bors
4f27db6956 Auto merge of #83516 - Mark-Simulacrum:beta-next, r=Mark-Simulacrum
[beta] backports

Initial round of beta backports, with 1 PR:

* SplitInclusive is public API #83372

This also includes a bump to the released stable compiler.

r? `@Mark-Simulacrum`
2021-03-26 20:07:29 +00:00
Alan Egerton
309177703b SplitInclusive is public API 2021-03-26 11:16:49 -04:00
Mark Rousskov
309419999c Bump beta branch to released stable 2021-03-26 11:15:28 -04:00
bors
6a1077d47f Auto merge of #83441 - Mark-Simulacrum:beta-next, r=Mark-Simulacrum
[beta] 1.52.0 branch off

r? `@Mark-Simulacrum`
2021-03-24 23:39:29 +00:00
Mark Rousskov
371a7a92c6 Fix bootstrap tests on beta 2021-03-24 12:03:59 -04:00
Mark Rousskov
692454d583 Update fulldeps test 2021-03-24 11:06:23 -04:00
Mark Rousskov
9157430d62 Ignore failures of RLS on aarch64 Windows 2021-03-24 11:06:23 -04:00
Mark Rousskov
77d13f578a [beta] initial branch off 2021-03-24 10:24:11 -04:00
bors
61edfd591c Auto merge of #83314 - Aaron1011:print-unstable-value, r=lcnr
Debug-print result when an unstable fingerprint is detected

Helps with issues like #83311

I had previously tried to do this in https://github.com/rust-lang/rust/pull/80692, but it had a significant performance impact (even though the code was never actually run). Hopefully, this will be better now that https://github.com/rust-lang/rust/pull/79100 has been merged.
2021-03-20 16:20:21 +00:00
bors
41b315a470 Auto merge of #83271 - SparrowLii:simd_neg, r=Amanieu
Add simd_neg platform intrinsic

Stdarch needs to add simd_neg to support the implementation of vneg neon instructions. Look [here](https://github.com/rust-lang/stdarch/pull/1087)
2021-03-20 09:01:35 +00:00
bors
eb9ec31168 Auto merge of #82919 - bstrie:stabchar, r=dtolnay
Stabilize `assoc_char_funcs` and `assoc_char_consts`

Stabilizes the following associated items on `char`:

* [`char::MAX`](https://doc.rust-lang.org/std/primitive.char.html#associatedconstant.MAX)
* [`char::REPLACEMENT_CHARACTER`](https://doc.rust-lang.org/std/primitive.char.html#associatedconstant.REPLACEMENT_CHARACTER)
* [`char::UNICODE_VERSION`](https://doc.rust-lang.org/std/primitive.char.html#associatedconstant.UNICODE_VERSION)
* [`char::decode_utf16`](https://doc.rust-lang.org/std/primitive.char.html#method.decode_utf16)
* [`char::from_u32`](https://doc.rust-lang.org/std/primitive.char.html#method.from_u32)
* [`char::from_u32_unchecked`](https://doc.rust-lang.org/std/primitive.char.html#method.from_u32_unchecked)
* [`char::from_digit`](https://doc.rust-lang.org/std/primitive.char.html#method.from_digit)

Closes #71763.
2021-03-20 06:36:42 +00:00