Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rollup of 11 pull requests #124025

Closed
wants to merge 52 commits into from

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

onur-ozkan and others added 30 commits March 17, 2024 16:41
Previously, we were checking the LLVM stamp before fetching the submodule
which leads to not being able to compile llvm on submodule updates.

Signed-off-by: onur-ozkan <[email protected]>
Signed-off-by: onur-ozkan <[email protected]>
Previously this command was linting compiler and library together.
As we no longer run clippy on the entire tree unless it's explicitly
requested, we need to update this command by adding `library` path.

Signed-off-by: onur-ozkan <[email protected]>
It's been 7 months since we deprecated this. It should be fine to remove it now.

Signed-off-by: onur-ozkan <[email protected]>
Windows: add basic support for FormatMessageW
Handle Miri sysroot entirely outside the Miri driver

(Extracted from rust-lang/miri#3409)

This entirely moves the responsibility of setting miri-sysroot to whatever *invokes* the Miri driver.  cargo-miri knows whether it is inside rustdoc or not and can adjust accordingly. I previously avoided doing that because there are a bunch of places that are invoking the driver (cargo-miri, the ui test suite, `./miri run`, `./x.py run miri`) and they all need to be adjusted now. But it is also somewhat less fragile as we usually have more information there -- and we can just decide that `./miri run file.rs --sysroot path` is not supported. The advantage of this is that the driver is reasonably clean and doesn't need magic environment variables like MIRI_SYSROOT, and we don't have to fight rustc_driver to use a different default sysroot. Everything is done in cargo-miri (and the other much simpler driver wrappers) where it can hopefully be debugged much better.
add some basic support for GetFullPathNameW

This is the last missing piece to make std `path::` tests work on Windows.
It will allow more flexible uses in the future. This makes `split_simd_to_128bit_chunks` simpler, moving some of the complexity to its callers.
We assert that we are in the new solver in the line above
Make `split_simd_to_128bit_chunks` take only one operand

It will allow more flexible uses in the future. This makes `split_simd_to_128bit_chunks` simpler, moving some of the complexity to its callers.
RalfJung and others added 13 commits April 16, 2024 16:37
…=albertlarsan68

fetch submodule before checking llvm stamp

Previously, we were checking the LLVM stamp before fetching the submodule which leads to not being able to compile llvm on submodule updates.

Fixes rust-lang#122612
Fixes rust-lang#122787
…bertlarsan68

refactor clippy in bootstrap

Previously, using clippy in bootstrap was not very useful as explained in rust-lang#122825. In short, regardless of the given path clippy would always check the entire compiler and std tree. This makes it impossible to run clippy on different paths with different set of rules. This PR fixes that by allowing developers to run clippy with specific rules on specific paths (e.g., we can run `x clippy compiler -Aclippy::all -Dclippy::correctness` and `x clippy library/std -Dclippy::all` and none of them will affect each other).

Resolves rust-lang#122825
…chenkov

Stabilize checking of cfgs at compile-time: `--check-cfg` option

This PR stabilize the `--check-cfg` CLI option of `rustc` (and `rustdoc`) 🎉.

In particular this PR does two things:
  1. it makes the `--check-cfg` option stable
  2. and it moves the documentation to the stable books

FCP: rust-lang#82450 (comment)

Resolves rust-lang#82450

`@rustbot` labels +S-blocked +F-check-cfg
r? `@petrochenkov`
…ding_mode_2024, r=Nadrieril

Match ergonomics 2024: `mut` doesn't reset binding mode

r? `@Nadrieril`

cc rust-lang#123076

`@rustbot` label A-edition-2024 A-patterns
…albertlarsan68

drop `changelog-seen`

It's been 7 months since we deprecated this. It should be fine to remove it now.
…mpiler-errors

The new solver ignores `DefineOpaqueTypes`, so switch it to `Yes`

We assert that we are in the new solver in the line above

r? `@compiler-errors`
…mpiler-errors

Change a diagnostics-path-only `DefineOpaqueTypes` to `Yes`.

This can't possibly affect compilation, so it's safe to flip, even if I couldn't come up with an affected test

r? `@compiler-errors`
…i-obk

interpret: pass MemoryKind to before_memory_deallocation

This will be needed for rust-lang/miri#3475.

r? `@oli-obk`
interpret: remove outdated comment

In rust-lang#107756, allocation became generally fallible, so the "only panic if there is provenance" no longer applies.

r? `@oli-obk`
@rustbot rustbot added A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-testsuite Area: The testsuite used to check the correctness of rustc 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-infra Relevant to the infrastructure 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 Apr 16, 2024
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=11

@bors
Copy link
Contributor

bors commented Apr 16, 2024

📌 Commit b03b87d 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 Apr 16, 2024
@rust-log-analyzer
Copy link
Collaborator

The job x86_64-gnu-llvm-17 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
#17 exporting to docker image format
#17 sending tarball 28.2s done
#17 DONE 34.1s
##[endgroup]
Setting extra environment values for docker:  --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-17]
---
sccache: Starting the server...
##[group]Configure the build
configure: processing command line
configure: 
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-17', '--enable-llvm-link-shared', '--set', 'rust.thin-lto-import-instr-limit=10', '--set', 'change-id=99999999', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--enable-new-symbol-mangling']
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-17/bin/llvm-config
configure: llvm.link-shared     := True
configure: rust.thin-lto-import-instr-limit := 10
configure: change-id            := 99999999
---
   Compiling build_helper v0.1.0 (/checkout/src/tools/build_helper)
error[E0308]: mismatched types
##[error]    --> src/core/build_steps/clippy.rs:209:50
     |
209  |         rustc_cargo(builder, &mut cargo, target, compiler.stage);
     |         -----------                              ^^^^^^^^^^^^^^ expected `&Compiler`, found `u32`
     |         arguments to this function are incorrect
     |
note: function defined here
    --> src/core/build_steps/compile.rs:1002:8
---
   Compiling bootstrap v0.0.0 (/checkout/src/bootstrap)
error[E0308]: mismatched types
##[error]    --> src/core/build_steps/clippy.rs:209:50
     |
209  |         rustc_cargo(builder, &mut cargo, target, compiler.stage);
     |         -----------                              ^^^^^^^^^^^^^^ expected `&Compiler`, found `u32`
     |         arguments to this function are incorrect
     |
note: function defined here
    --> src/core/build_steps/compile.rs:1002:8
---
   Compiling bootstrap v0.0.0 (/checkout/src/bootstrap)
error[E0308]: mismatched types
##[error]    --> src/core/build_steps/clippy.rs:209:50
     |
209  |         rustc_cargo(builder, &mut cargo, target, compiler.stage);
     |         -----------                              ^^^^^^^^^^^^^^ expected `&Compiler`, found `u32`
     |         arguments to this function are incorrect
     |
note: function defined here
    --> src/core/build_steps/compile.rs:1002:8
---
   Compiling bootstrap v0.0.0 (/checkout/src/bootstrap)
error[E0308]: mismatched types
##[error]    --> src/core/build_steps/clippy.rs:209:50
     |
209  |         rustc_cargo(builder, &mut cargo, target, compiler.stage);
     |         -----------                              ^^^^^^^^^^^^^^ expected `&Compiler`, found `u32`
     |         arguments to this function are incorrect
     |
note: function defined here
    --> src/core/build_steps/compile.rs:1002:8
---
   Compiling bootstrap v0.0.0 (/checkout/src/bootstrap)
error[E0308]: mismatched types
##[error]    --> src/core/build_steps/clippy.rs:209:50
     |
209  |         rustc_cargo(builder, &mut cargo, target, compiler.stage);
     |         -----------                              ^^^^^^^^^^^^^^ expected `&Compiler`, found `u32`
     |         arguments to this function are incorrect
     |
note: function defined here
    --> src/core/build_steps/compile.rs:1002:8

@matthiaskrgr
Copy link
Member Author

rip!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-testsuite Area: The testsuite used to check the correctness of rustc 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-infra Relevant to the infrastructure 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.