Skip to content

Conversation

@matthiaskrgr
Copy link
Member

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

thomcc and others added 24 commits March 12, 2023 00:23
This test was failing under new-symbol-mangling = true. Adapt pattern to
work in both cases.

Related to rust-lang#106002 from December.
I went over the cases where sort_by is used and in these two,
one can use sort_by_key instead.
…r-errors

Remove box expressions from HIR

After rust-lang#108516, `#[rustc_box]` is used at HIR->THIR lowering and this is no longer emitted, so it can be removed.

This is based on top of rust-lang#108471 to help with conflicts, so 43490488ccacd1a822e9c621f5ed6fca99959a0b is the only relevant commit (sorry for all the duplicated pings!)

````@rustbot```` label +S-blocked
…r=jyn514

Prevent stable `libtest` from supporting `-Zunstable-options`

Took a while for me to get around to this but seems trivial (unless I'm missing some reason this will break all our tests). Fixes rust-lang#75526

Basically `libtest` already tries to handle this in https://github.com/rust-lang/rust/blob/501ad021b9a4fb2cd6a39e0302d22f169f6166b0/library/test/src/cli.rs#L310-L318

But that env var was not passed. I'm guessing at one point [this code](https://github.com/rust-lang/rust/blob/501ad021b9a4fb2cd6a39e0302d22f169f6166b0/src/bootstrap/compile.rs#L842-L844) (or a common ancestor) was used to compile the standard library/libtest, but that is no longer the case (or perhaps it never worked, I don't have time to go digging).

I don't love that this is a "allow unstable by default" situation, as it means things like [`rustc-build-sysroot`](https://github.com/RalfJung/rustc-build-sysroot) could accidentally get unstable (CC ````@RalfJung)```` even if this is fixed here, but it's consistent with what happens in `rustc_feature`, so... yeah.

This is user-facing after all, even if it's hard to imagine the outcome of that conversation being "lets continue allowing use of `-Zunstable-features` from stable rust" (especially since a `RUSTC_BOOTSTRAP=1`-shaped loophole remains)... I think it probably should get a vibe check in the t-libs meeting (and plausibly a relnote along the lines of "hey `cargo test -- -Zunstable-options --some --unstable --stuff=here` used to work on stable, that's been fixed, sorry").

I'll nominate it for that after CI comes up green (I've done a smoke check but don't know what (if anything) will need `bootstrap` to enable `RUSTC_BOOTSTRAP=1` when running tests)

r? ````@jyn514````
…arget, r=tmandry

Fix riscv64 fuchsia LLVM target name

Currently, riscv64gc-unknown-fuchsia (added in rust-lang#108722) sets riscv64*gc*-unknown-fuchsia as the LLVM target.

https://github.com/rust-lang/rust/blob/1716932743a7b3705cbf0c34db0c4e070ed1930d/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs#L5

However, riscv64*gc*-\* is not a valid LLVM target and causes the following error.

```console
$ rustc --print cfg --target riscv64gc-unknown-fuchsia
error: could not create LLVM TargetMachine for triple: riscv64gc-unknown-fuchsia: No available targets are compatible with triple "riscv64gc-unknown-fuchsia"
```

As with other RISC-V targets, the LLVM target should use riscv64-\*, not riscv64*gc*-\*.

https://github.com/rust-lang/rust/blob/1716932743a7b3705cbf0c34db0c4e070ed1930d/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs#L5
https://github.com/rust-lang/rust/blob/1716932743a7b3705cbf0c34db0c4e070ed1930d/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs#L5

I confirmed that riscv64-unknown-fuchsia is recognized as a valid LLVM target by using custom targets.

```console
# create a custom target with `"llvm-target": "riscv64-unknown-fuchsia" from no-std riscv64gc target.
$ rustc --print target-spec-json -Z unstable-options --target riscv64gc-unknown-none-elf | grep -v is-builtin | sed 's/"llvm-target".*/"llvm-target": "riscv64-unknown-fuchsia",/' > riscv64gc-unknown-fuchsia.json

$ rustc --print cfg --target riscv64gc-unknown-fuchsia.json
debug_assertions
panic="abort"
target_abi=""
target_arch="riscv64"
target_endian="little"
target_env=""
target_feature="a"
target_feature="c"
target_feature="d"
target_feature="f"
target_feature="m"
...

$ cat riscv64gc-unknown-fuchsia.json
{
  "arch": "riscv64",
  "code-model": "medium",
  "cpu": "generic-rv64",
  "data-layout": "e-m:e-p:64:64-i64:64-i128:128-n32:64-S128",
  "eh-frame-header": false,
  "emit-debug-gdb-scripts": false,
  "features": "+m,+a,+f,+d,+c",
  "linker": "rust-lld",
  "linker-flavor": "ld.lld",
  "llvm-abiname": "lp64d",
  "llvm-target": "riscv64-unknown-fuchsia",
  "max-atomic-width": 64,
  "panic-strategy": "abort",
  "relocation-model": "static",
  "supported-sanitizers": [
    "kernel-address"
  ],
  "target-pointer-width": "64"
}

# Check the current master's LLVM target name causes an error
$ sed -i 's/riscv64-unknown-fuchsia/riscv64gc-unknown-fuchsia/' riscv64gc-unknown-fuchsia.json
$ rustc --print cfg --target riscv64gc-unknown-fuchsia.json
error: could not create LLVM TargetMachine for triple: riscv64gc-unknown-fuchsia: No available targets are compatible with triple "riscv64gc-unknown-fuchsia"
```

r? ````@tmandry````
…, r=Nilstrieb

inherit_overflow: adapt pattern to also work with v0 mangling

This test was failing under new-symbol-mangling = true. Adapt pattern to work in both cases.

Related to rust-lang#106002 from December.
…-body, r=spastorino

Install projection from RPITIT to default trait method opaque correctly

1. For new lowering strategy `-Zlower-impl-trait-in-trait-to-assoc-ty`, install the correct default trait method projection predicates (RPITIT -> opaque). This makes default trait body tests pass!

2. Fix two WF-checking bugs -- first, we want to make sure that we're always looking for an opaque type in `check_return_position_impl_trait_in_trait_bounds`. That's because the RPITIT projections are normalized to opaques during wfcheck. Second, fix RPITIT's param-envs by not adding the projection predicates that we install on trait methods to make default RPITITs work -- I left a comment why.

3. Also, just a small drive-by for `rustc_on_unimplemented`. Not sure if it affects any tests, but can't hurt.

r? ````@spastorino,```` based off of rust-lang#109140
Use sort_by_key instead of sort_by

I went over the cases where sort_by is used and in these two, one can use sort_by_key instead.
…ddle

Fix invalid markdown link references

Fixes invalid link references in librustdoc's template documentation.
`[text](link)` was interpreted as a relative path to the file, making the link invalid, while `[text][label]` references a label defined in the file itself: <https://www.markdownguide.org/basic-syntax/#reference-style-links>
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Mar 17, 2023
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=8

@bors
Copy link
Collaborator

bors commented Mar 17, 2023

📌 Commit 0584bde has been approved by matthiaskrgr

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 17, 2023
@bors
Copy link
Collaborator

bors commented Mar 17, 2023

⌛ Testing commit 0584bde with merge 166b7cbdfd2bfb366f1be0a7fdc0df5f31a88056...

@bors
Copy link
Collaborator

bors commented Mar 17, 2023

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Mar 17, 2023
@matthiaskrgr
Copy link
Member Author

@bors retry

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 17, 2023
@rust-log-analyzer
Copy link
Collaborator

The job i686-mingw-1 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
[2611/3021] Linking CXX static library lib\libLLVMSparcCodeGen.a
[2612/3021] Linking CXX static library lib\libLLVMNVPTXCodeGen.a
[2613/3021] Linking CXX static library lib\libLLVMHexagonCodeGen.a
[2614/3021] Linking CXX static library lib\libLLVMPowerPCCodeGen.a
FAILED: lib/libLLVMPowerPCCodeGen.a 
cmd.exe /C "cd . && "C:\Program Files\CMake\bin\cmake.exe" -E rm -f lib\libLLVMPowerPCCodeGen.a && D:\a\rust\rust\mingw32\bin\ar.exe qc lib\libLLVMPowerPCCodeGen.a  lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/GISel/PPCInstructionSelector.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCBoolRetToInt.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCAsmPrinter.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCBranchSelector.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCBranchCoalescing.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCCallingConv.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCCCState.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCCTRLoops.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCCTRLoopsVerify.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCExpandAtomicPseudoInsts.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCHazardRecognizers.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCInstrInfo.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCISelDAGToDAG.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCISelLowering.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCEarlyReturn.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCFastISel.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCFrameLowering.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCLoopInstrFormPrep.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCMCInstLower.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCMachineFunctionInfo.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCMachineScheduler.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCMacroFusion.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCMIPeephole.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCRegisterInfo.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCSubtarget.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCTargetMachine.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCTargetObjectFile.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCTargetTransformInfo.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCTOCRegDeps.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCTLSDynamicCall.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCVSXCopy.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCReduceCRLogicals.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCVSXFMAMutate.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCVSXSwapRemoval.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCExpandISEL.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCPreEmitPeephole.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCLowerMASSVEntries.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/PPCGenScalarMASSEntries.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/GISel/PPCCallLowering.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/GISel/PPCRegisterBankInfo.cpp.obj lib/Target/PowerPC/CMakeFiles/LLVMPowerPCCodeGen.dir/GISel/PPCLegalizerInfo.cpp.obj && D:\a\rust\rust\mingw32\bin\ranlib.exe lib\libLLVMPowerPCCodeGen.a && cd ."
D:\a\rust\rust\mingw32\bin\ar.exe: could not create temporary file whilst writing archive: no more archived files
[2615/3021] Linking CXX static library lib\libLLVMMipsCodeGen.a
[2616/3021] Linking CXX static library lib\libLLVMRISCVCodeGen.a
[2617/3021] Linking CXX static library lib\libLLVMSystemZCodeGen.a
[2618/3021] Linking CXX static library lib\libLLVMAArch64CodeGen.a
[2618/3021] Linking CXX static library lib\libLLVMAArch64CodeGen.a
[2619/3021] Linking CXX static library lib\libLLVMARMCodeGen.a
[2620/3021] Linking CXX executable bin\llvm-profdata.exe
[2621/3021] Linking CXX static library lib\libLLVMPasses.a
ninja: build stopped: subcommand failed.
command did not execute successfully, got: exit code: 1


build script failed, must exit now', C:\Users\runneradmin\.cargo\registry\src\index.crates.io-1cd66030c949c28d\cmake-0.1.48\src\lib.rs:975:5
 finished in 256.978 seconds
Build completed unsuccessfully in 0:07:41
Build completed unsuccessfully in 0:07:41
make: *** [Makefile:78: ci-mingw-subset-1] Error 1

@bors
Copy link
Collaborator

bors commented Mar 17, 2023

⌛ Testing commit 0584bde with merge 90f3809b93b1f63de65e1b4cc1562c67ab107238...

@bors
Copy link
Collaborator

bors commented Mar 17, 2023

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Mar 17, 2023
@matthiaskrgr
Copy link
Member Author

@bors retry

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 17, 2023
@rust-log-analyzer
Copy link
Collaborator

The job dist-x86_64-mingw failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
[2632/3025] Linking CXX static library lib\libLLVMWebAssemblyDisassembler.a
[2633/3025] Linking CXX static library lib\libLLVMPowerPCCodeGen.a
[2634/3025] Linking CXX static library lib\libLLVMSystemZCodeGen.a
[2635/3025] Linking CXX static library lib\libLLVMM68kCodeGen.a
FAILED: lib/libLLVMM68kCodeGen.a 
cmd.exe /C "cd . && "C:\Program Files\CMake\bin\cmake.exe" -E rm -f lib\libLLVMM68kCodeGen.a && D:\a\rust\rust\mingw64\bin\ar.exe qc lib\libLLVMM68kCodeGen.a  lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/GISel/M68kCallLowering.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/GISel/M68kInstructionSelector.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/GISel/M68kLegalizerInfo.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/GISel/M68kRegisterBankInfo.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kAsmPrinter.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kCollapseMOVEMPass.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kExpandPseudo.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kFrameLowering.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kInstrInfo.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kISelLowering.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kISelDAGToDAG.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kMachineFunction.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kMCInstLower.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kRegisterInfo.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kSubtarget.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kTargetMachine.cpp.obj lib/Target/M68k/CMakeFiles/LLVMM68kCodeGen.dir/M68kTargetObjectFile.cpp.obj && D:\a\rust\rust\mingw64\bin\ranlib.exe lib\libLLVMM68kCodeGen.a && cd ."
D:\a\rust\rust\mingw64\bin\ranlib.exe: could not create temporary file whilst writing archive: no more archived files
[2636/3025] Linking CXX static library lib\libLLVMAVRCodeGen.a
[2637/3025] Linking CXX static library lib\libLLVMWebAssemblyCodeGen.a
[2638/3025] Building CXX object tools/lli/ChildTarget/CMakeFiles/lli-child-target.dir/ChildTarget.cpp.obj
[2639/3025] Linking CXX static library lib\libLLVMX86CodeGen.a
[2639/3025] Linking CXX static library lib\libLLVMX86CodeGen.a
[2640/3025] Linking CXX executable bin\llvm-profdata.exe
[2641/3025] Building CXX object tools/lli/CMakeFiles/lli.dir/ExecutionUtils.cpp.obj
[2642/3025] Linking CXX static library lib\libLLVMPasses.a
ninja: build stopped: subcommand failed.
command did not execute successfully, got: exit code: 1


build script failed, must exit now', C:\Users\runneradmin\.cargo\registry\src\index.crates.io-6f17d22bba15001f\cmake-0.1.48\src\lib.rs:975:5
 finished in 245.973 seconds
Build completed unsuccessfully in 0:07:00

@bors
Copy link
Collaborator

bors commented Mar 17, 2023

⌛ Testing commit 0584bde with merge 03b01c5...

@bors
Copy link
Collaborator

bors commented Mar 17, 2023

☀️ Test successful - checks-actions
Approved by: matthiaskrgr
Pushing 03b01c5 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Mar 17, 2023
@bors bors merged commit 03b01c5 into rust-lang:master Mar 17, 2023
@rustbot rustbot added this to the 1.70.0 milestone Mar 17, 2023
@rust-timer
Copy link
Collaborator

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (03b01c5): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

This benchmark run did not return any relevant results for this metric.

Max RSS (memory usage)

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
2.5% [2.5%, 2.5%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-2.5% [-3.0%, -2.1%] 2
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -0.9% [-3.0%, 2.5%] 3

Cycles

This benchmark run did not return any relevant results for this metric.

@matthiaskrgr matthiaskrgr deleted the rollup-2xmv5zk branch March 16, 2024 18:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.