summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2022-04-04Auto merge of #95639 - pietroalbini:pa-1.60.0-stable, r=pietroalbini 1.60.0bors-7/+356
Prepare 1.60.0 stable release This PR bumps the channel to stable, and backports the following PRs: * Miscellaneous release notes updates. * https://github.com/rust-lang/rust/pull/94817 * https://github.com/rust-lang/rust/pull/95256 r? `@ghost`
2022-04-04switch channel to stablePietro Albini-1/+1
2022-04-04pull up to date relnotesPietro Albini-1/+340
2022-04-04Indicate the correct error code in the `compile_fail` block.Thom Chiovoloni-1/+1
Co-authored-by: Mara Bos <m-ou.se@m-ou.se>
2022-04-04Add a `compile_fail` doctest to check that `io::Error: !UnwindSafe`Thom Chiovoloni-0/+9
2022-04-04Ensure io::Error's bitpacked repr doesn't accidentally impl UnwindSafeThom Chiovoloni-5/+6
2022-03-31Auto merge of #95464 - lcnr:backport-94925, r=Dylan-DPCbors-12/+27
[beta] backport #94925 backports #94925 looks like that PR might have slipped through :thinking: does it help if there's an open issue to track that in the future, or are there other things I can do to make this less likely in the future? r? `@Mark-Simulacrum`
2022-03-30backport #94925lcnr-12/+27
2022-03-22Auto merge of #95093 - compiler-errors:beta-correctly, r=Mark-Simulacrumbors-6/+8
[beta] Remove statement that was forgotten when backporting #94596 This `if` statement was introduced in #94438, then removed in #94596. Both of these PRs were beta-backported in #94933, but I think there was a mistake in the order they were applied or this removal was overlooked. I think this fixes the remaining issues referenced in https://github.com/rust-lang/rust/issues/94511#issuecomment-1072851886. Not sure this is the correct way to put something up for beta-backport, but the PR is at least open so it can be referenced and the commit can be cherry-picked. Feel free to close this PR. r? `@Mark-Simulacrum` cc: #94511
2022-03-18remove statement that was forgotten when backporting #94438Michael Goulet-6/+8
2022-03-18Auto merge of #95061 - cuviper:beta-stage0, r=Mark-Simulacrumbors-361/+353
[beta] backports + bootstrap bump Add pending backports: * Revert accidental stabilization #94805 * Do not recover from Ty? in macro parsing #94593 * Fix cmake build. #95050 And updates the bootstrap compiler to 1.59.0.
2022-03-18Fix cmake build.Eric Huss-3/+3
(cherry picked from commit 8322cdb1da257652bf663ae335b190dc129e479f)
2022-03-17Do not recover from `Ty?` in macro parsingEsteban Kuber-15/+50
Follow up to #92746. Address #94510. (cherry picked from commit 004f2ed219378235c24a5d6bdb34337200e6eeed)
2022-03-17Revert accidental stabilizationOli Scherer-3/+17
(cherry picked from commit 5f7ca55df6a89e3caa3131a13490cc01956149e7)
2022-03-17Update the bootstrap compiler to 1.59.0Josh Stone-340/+283
2022-03-14Auto merge of #94933 - Mark-Simulacrum:beta-next, r=Mark-Simulacrumbors-103/+206
[beta] backports * Update LLVM submodule #94764 * Statically compile libstdc++ everywhere if asked #94719 * Downgrade #[test] on macro call to warning #94624 * Delay bug in expr adjustment when check_expr is called multiple times #94596 * bootstrap: correct reading of flags for llvm #94466 * Check method input expressions once #94438 * remove feature gate in control_flow examples #94283 r? `@Mark-Simulacrum`
2022-03-14Drop forget_guarantee, introduced only on masterMark Rousskov-4/+1
2022-03-14remove feature gate in control_flow examplesMarcel Hellwig-2/+0
2022-03-14only check method inputs onceMichael Goulet-15/+53
2022-03-14bootstrap: correct reading of flags for llvmJon Gjengset-29/+70
First, this reverts the `CFLAGS`/`CXXFLAGS` of #93918. Those flags are already read by `cc` and populated into `Build` earlier on in the process. We shouldn't be overriding that based on `CFLAGS`, since `cc` also respects overrides like `CFLAGS_{TARGET}` and `HOST_CFLAGS`, which we want to take into account. Second, this adds the same capability to specify target-specific versions of `LDFLAGS` as we have through `cc` for the `C*` flags: https://github.com/alexcrichton/cc-rs#external-configuration-via-environment-variables Note that this also necessitated an update to compiletest to treat CXXFLAGS separately from CFLAGS.
2022-03-14delay bug instead of skipping check_exprMichael Goulet-5/+42
2022-03-14Downgrade `#[test]` on macro call to warningEsteban Kuber-35/+27
Follow up to #92959. Address #94508.
2022-03-14Statically compile libstdc++ everywhere if askedJon Gjengset-12/+12
PR #93918 made it so that `-static-libstdc++` was only set in one place, and was only set during linking, but accidentally also made it so that it is no longer passed when building LLD or sanitizers, only when building LLVM itself. This moves the logic for setting `-static-libstdc++` in the linker flags back to `configure_cmake` so that it takes effect for all CMake invocations in `native.rs`. As a side-effect, this also causes libstdc++ to be statically compiled into sanitizers and LLD if `llvm-tools-enabled` is set but `llvm-static-stdcpp` is not, even though previously it was only linked statically if `llvm-static-stdcpp` was set explicitly. But that seems more like the expected behavior anyway.
2022-03-14Enable issue-23036.rs on wasm32Nikita Popov-1/+0
2022-03-14Use new pass manager on s390x with LLVM 14Nikita Popov-4/+5
The problematic compile-time issue should be resolved with this version.
2022-03-14Update LLVM submoduleNikita Popov-0/+0
2022-03-07Auto merge of #94552 - lcnr:fix-94502, r=oli-obkbors-3/+57
[beta] backport fix for #94502 this issue was fixed as part of #93368, so i extracted the change from there closes #94502
2022-03-07backport fix for #94502lcnr-3/+57
2022-03-03Auto merge of #94545 - ehuss:beta-backports, r=ehussbors-71/+124
[beta] Beta backports * No branch protection metadata unless enabled #93516 * update auto trait lint for PhantomData #94315 * Cargo: * [1.60] Fix term.verbose without quiet, and vice versa (rust-lang/cargo#10436) * [beta] Add common profile validation. (rust-lang/cargo#10413) * Avoid new deprecation warnings from clap 3.1.0 (rust-lang/cargo#10396)
2022-03-02Auto merge of #93516 - nagisa:branch-protection, r=cjgillotbors-58/+85
No branch protection metadata unless enabled Even if we emit metadata disabling branch protection, this metadata may conflict with other modules (e.g. during LTO) that have different branch protection metadata set. This is an unstable flag and feature, so ideally the flag not being specified should act as if the feature wasn't implemented in the first place. Additionally this PR also ensures we emit an error if `-Zbranch-protection` is set on targets other than the supported aarch64. For now the error is being output from codegen, but ideally it should be moved to earlier in the pipeline before stabilization.
2022-03-02Rollup merge of #94315 - lcnr:auto-trait-lint-update, r=oli-obkDylan DPC-7/+33
update auto trait lint for `PhantomData` cc https://github.com/rust-lang/rust/issues/93367#issuecomment-1047898410
2022-03-02[beta] Update cargoEric Huss-6/+6
2022-02-22Auto merge of #94228 - Mark-Simulacrum:beta-next, r=Mark-Simulacrumbors-6/+11
[beta] Branch 1.60 beta r? `@Mark-Simulacrum`
2022-02-21Temporarily avoid errors on RLS failure in parallelMark Rousskov-0/+6
2022-02-21Fix up unused imports in rustfmt testsMark Rousskov-5/+4
2022-02-21Branch 1.60 betaMark Rousskov-1/+1
2022-02-19Auto merge of #94148 - matthiaskrgr:rollup-jgea68f, r=matthiaskrgrbors-214/+256
Rollup of 7 pull requests Successful merges: - #92902 (Improve the documentation of drain members) - #93658 (Stabilize `#[cfg(panic = "...")]`) - #93954 (rustdoc-json: buffer output) - #93979 (Add debug assertions to validate NUL terminator in c strings) - #93990 (pre #89862 cleanup) - #94006 (Use a `Field` in `ConstraintCategory::ClosureUpvar`) - #94086 (Fix ScalarInt to char conversion) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2022-02-19Rollup merge of #94086 - tmiasko:char-try-from-scalar-int, r=davidtwcoMatthias Krüger-22/+52
Fix ScalarInt to char conversion to avoid panic for invalid Unicode scalar values
2022-02-19Rollup merge of #94006 - pierwill:upvar-field, r=nikomatsakisMatthias Krüger-11/+19
Use a `Field` in `ConstraintCategory::ClosureUpvar` As part of #90317, we do not want `HirId` to implement `Ord`, `PartialOrd`. This line of code has made that difficult https://github.com/rust-lang/rust/blob/1b27144afc77031ba9c05d86c06c64485589775a/compiler/rustc_borrowck/src/region_infer/mod.rs#L2184 since it sorts a [`ConstraintCategory::ClosureUpvar(HirId)`](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_middle/mir/enum.ConstraintCategory.html#variant.ClosureUpvar). This PR makes that variant take a [`Field`](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_middle/mir/struct.Field.html) instead. r? `@nikomatsakis`
2022-02-19Rollup merge of #93990 - lcnr:pre-89862-cleanup, r=estebankMatthias Krüger-54/+88
pre #89862 cleanup changes used in #89862 which can be landed without the rest of this PR being finished. r? `@estebank`
2022-02-19Rollup merge of #93979 - SUPERCILEX:debug_check, r=dtolnayMatthias Krüger-20/+29
Add debug assertions to validate NUL terminator in c strings The `unchecked` variants from the stdlib usually perform the check anyway if debug assertions are on (for example, `unwrap_unchecked`). This PR does the same thing for `CStr` and `CString`, validating the correctness for the NUL byte in debug mode.
2022-02-19Rollup merge of #93954 - aDotInTheVoid:json-buffer, r=Mark-SimulacrumMatthias Krüger-3/+6
rustdoc-json: buffer output It turns out we were doing syscalls for each part of the json syntax Before: ``` ... [pid 1801267] write(5, "\"", 1) = 1 [pid 1801267] write(5, ",", 1) = 1 [pid 1801267] write(5, "\"", 1) = 1 ... ``` After: ``` [pid 1974821] write(5, "{\"root\":\"0:0\",\"crate_version\":nu"..., 1575) = 1575 ``` In one benchmark (one struct, almost all time in `std`), this gives ~2x perf r? `@CraftSpider` `@rustbot` modify labels: +A-rustdoc-json +T-rustdoc -A-testsuite
2022-02-19Rollup merge of #93658 - cchiw:issue-77443-fix, r=joshtriplettMatthias Krüger-78/+5
Stabilize `#[cfg(panic = "...")]` [Stabilization PR](https://rustc-dev-guide.rust-lang.org/stabilization_guide.html#stabilization-pr) for #77443
2022-02-19Rollup merge of #92902 - ssomers:docter_drain, r=yaahcMatthias Krüger-26/+57
Improve the documentation of drain members hopefully fixes #92765
2022-02-19Auto merge of #94105 - 5225225:destabilise-entry-insert, r=Mark-Simulacrumbors-2/+4
Destabilise entry_insert See: https://github.com/rust-lang/rust/pull/90345 I didn't revert the rename that was done in that PR, I left it as `entry_insert`. Additionally, before that PR, `VacantEntry::insert_entry` seemingly had no stability attribute on it? I kept the attribute, just made it an unstable one, same as the one on `Entry`. There didn't seem to be any mention of this in the RELEASES.md, so I don't think there's anything for me to do other than this?
2022-02-19Auto merge of #94134 - matthiaskrgr:rollup-b132kjz, r=matthiaskrgrbors-577/+1593
Rollup of 10 pull requests Successful merges: - #89892 (Suggest `impl Trait` return type when incorrectly using a generic return type) - #91675 (Add MemTagSanitizer Support) - #92806 (Add more information to `impl Trait` error) - #93497 (Pass `--test` flag through rustdoc to rustc so `#[test]` functions can be scraped) - #93814 (mips64-openwrt-linux-musl: correct soft-foat) - #93847 (kmc-solid: Use the filesystem thread-safety wrapper) - #93877 (asm: Allow the use of r8-r14 as clobbers on Thumb1) - #93892 (Only mark projection as ambiguous if GAT substs are constrained) - #93915 (Implement --check-cfg option (RFC 3013), take 2) - #93953 (Add the `known-bug` test directive, use it, and do some cleanup) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2022-02-19Collections: improve the documentation of drain membersStein Somers-26/+57
2022-02-18Auto merge of #94050 - michaelwoerister:fix-unsized-tuple-debuginfo, r=pnkfelixbors-9/+27
debuginfo: Support fat pointers to unsized tuples. This PR makes fat pointer debuginfo generation handle the case of unsized tuples. Fixes #93871
2022-02-18Rollup merge of #93953 - jackh726:known_bug, r=Mark-SimulacrumMatthias Krüger-248/+218
Add the `known-bug` test directive, use it, and do some cleanup cc rust-lang/compiler-team#476 Now tests can be annotated with `known-bug`, which should indicate that the test *should* pass (or at least that the current output is a bug). Adding it relaxes the requirement to add error annotations to the test (though it is still allowed). In the future, this could be extended with further relaxations - with the goal to make adding these tests need minimal effort. I've used this attribute for the GAT tests added in #93757. Finally, I've also cleaned up `header.rs` in compiletest a bit, by extracting out a bit of common logic. I've also split out some of the directives into their own consts. This removes a lot of very similar functions from `Config` and makes `TestProps::load_from` read nicer. I've split these into separate commits, so I in theory could split these into separate PRs if they're controversial, but I think they're pretty straightforward. r? ``@Mark-Simulacrum``
2022-02-18Rollup merge of #93915 - Urgau:rfc-3013, r=petrochenkovMatthias Krüger-7/+365
Implement --check-cfg option (RFC 3013), take 2 This pull-request implement RFC 3013: Checking conditional compilation at compile time (https://github.com/rust-lang/rfcs/pull/3013) and is based on the previous attempt https://github.com/rust-lang/rust/pull/89346 by `@mwkmwkmwk` that was closed due to inactivity. I have address all the review comments from the previous attempt and added some more tests. cc https://github.com/rust-lang/rust/issues/82450 r? `@petrochenkov`