Skip to content

Rollup of 14 pull requests #130177

New issue

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

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

Already on GitHub? # to your account

Closed
wants to merge 46 commits into from

Conversation

workingjubilee
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

GrigorenkoPV and others added 30 commits July 28, 2024 22:11
otherwise the test would build in the source root's `target` folder
it'll be easier to see and update the list: the other cmd args
can just be ignored
and make it the default for the compiler profile, as to prevent
unnecessarily checking out `src/llvm-project` with `"if-unchanged"`.
Use the same code as Solaris. I couldn't find any tests regarding this, but I
did test a stage0 build against my stack-exhaust-test binary [1]. Before:

```
running with use_stacker = No, new_thread = false, make_large_local = false
zsh: segmentation fault (core dumped)  cargo run
```

After:

```
running with use_stacker = No, new_thread = false, make_large_local = false

thread 'main' has overflowed its stack
fatal runtime error: stack overflow
zsh: IOT instruction (core dumped)  cargo +stage0 run
```

Fixes rust-lang#128568.

[1] https://github.com/sunshowers/stack-exhaust-test/
in this commit, `naked_asm!` is an alias for `asm!` with one difference: `options(noreturn)` is always enabled by `naked_asm!`. That makes it future-compatible for when `naked_asm!` starts disallowing `options(noreturn)` later.
Also avoid even tracking empty ranges, and add fast-path for arrays of scalars
No functional changes intended.
also add an explicit test for the fact that a Option<WidePtr> has padding when it is None
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
…r=antoyo,tmiasko

Remove `serialized_bitcode` from `LtoModuleCodegen`.

It's unused.

r? `@bjorn3`
…chenkov

Also emit `missing_docs` lint with `--test` to fulfil expectations

This PR removes the "test harness" suppression of the `missing_docs` lint to be able to fulfil `#[expect]` (expectations) as it is now "relevant".

I think the goal was to maybe avoid false-positive while linting on public items under `#[cfg(test)]` but with effective visibility we should no longer have any false-positive.

Another possibility would be to query the lint level and only emit the lint if it's of expect level, but that is even more hacky.

Fixes rust-lang#130021

try-job: x86_64-gnu-aux
…c, r=Kobzol

unify `llvm-bitcode-linker`, `wasm-component-ld` and llvm-tools logics

To use the precompiled `ci-rustc` in CI, we need to install `llvm-bitcode-linker` and LLVM tools into ci-rustc's sysroot. Without them some CI pipelines may fail, as shown [here](rust-lang#122709 (comment)).

Blocker for rust-lang#122709
…, r=lcnr

Inform the solver if evaluation is concurrent

Parallel compilation of a program can cause unexpected event sequencing. Inform the solver when this is true so it can skip invalid asserts.
…trieb

[illumos] enable SIGSEGV handler to detect stack overflows

Use the same code as Solaris. I couldn't find any tests regarding this, but I did test a stage0 build against my stack-exhaust-test binary [1]. Before:

```
running with use_stacker = No, new_thread = false, make_large_local = false
zsh: segmentation fault (core dumped)  cargo run
```

After:

```
running with use_stacker = No, new_thread = false, make_large_local = false

thread 'main' has overflowed its stack
fatal runtime error: stack overflow
zsh: IOT instruction (core dumped)  cargo +stage0 run
```

Fixes rust-lang#128568.

[1] https://github.com/sunshowers/stack-exhaust-test/
…Amanieu

bootstrap `naked_asm!` for `compiler-builtins`

tracking issue: rust-lang#90957
parent PR: rust-lang#128651

in this PR, `naked_asm!` is added as an alias for `asm!` with one difference: `options(noreturn)` is always enabled by `naked_asm!`. That makes it future-compatible for when `naked_asm!` starts disallowing `options(noreturn)` later.

The `naked_asm!` macro must be introduced first so that we can upgrade `compiler-builtins` to use it, and can then change the implementation of `naked_asm!` in rust-lang#128651

I've added some usages for `naked_asm!` in the tests, so we can be confident that it works, but I've left upgrading the whole test suite to the parent PR.

r? `@Amanieu`
…r=cjgillot

Helper function for formatting with `LifetimeSuggestionPosition`
adapt a test for llvm 20

No functional changes intended.

`@rustbot` label: +llvm-main
r? `@nikic`
…obzol

bump download-ci-llvm-stamp

This should trigger the download and extraction of the ci-llvm tarball, which should resolve rust-lang#130144.
move some const fn out of the const_ptr_as_ref feature

When a `const fn` is still `#[unstable]`, it should generally use the same feature to track its regular stability and const-stability. Then when that feature moves towards stabilization we can decide whether the const-ness can be stabilized as well, or whether it should be moved into a new feature.

Also, functions like `ptr::as_ref` (which returns an `Option<&mut T>`) require `is_null`, which is tricky and blocked on some design concerns (see rust-lang#74939). So move those to the is_null feature gate, as they should be stabilized together with `ptr.is_null()`.

Affects rust-lang#91822, rust-lang#122034, rust-lang#75402, rust-lang#74939
@rustbot rustbot added A-run-make Area: port run-make Makefiles to rmake.rs O-unix Operating system: Unix-like 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-libs Relevant to the library team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) rollup A PR which is a rollup labels Sep 10, 2024
@workingjubilee
Copy link
Member Author

@bors rollup=never p=14 r+

@bors
Copy link
Collaborator

bors commented Sep 10, 2024

📌 Commit c1d1aef has been approved by workingjubilee

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 Sep 10, 2024
@bors
Copy link
Collaborator

bors commented Sep 10, 2024

⌛ Testing commit c1d1aef with merge 2cf47e4...

bors added a commit to rust-lang-ci/rust that referenced this pull request Sep 10, 2024
…kingjubilee

Rollup of 14 pull requests

Successful merges:

 - rust-lang#128316 (Stabilize most of `io_error_more`)
 - rust-lang#129473 (use  `download-ci-llvm=true` in the default compiler config)
 - rust-lang#129529 (Add test to build crates used by r-a on stable)
 - rust-lang#129778 (interpret: make typed copies lossy wrt provenance and padding)
 - rust-lang#129981 (Remove `serialized_bitcode` from `LtoModuleCodegen`.)
 - rust-lang#130025 (Also emit `missing_docs` lint with `--test` to fulfil expectations)
 - rust-lang#130040 (unify `llvm-bitcode-linker`, `wasm-component-ld` and llvm-tools logics)
 - rust-lang#130094 (Inform the solver if evaluation is concurrent)
 - rust-lang#130132 ([illumos] enable SIGSEGV handler to detect stack overflows)
 - rust-lang#130146 (bootstrap `naked_asm!` for `compiler-builtins`)
 - rust-lang#130149 (Helper function for formatting with `LifetimeSuggestionPosition`)
 - rust-lang#130152 (adapt a test for llvm 20)
 - rust-lang#130162 (bump download-ci-llvm-stamp)
 - rust-lang#130164 (move some const fn out of the const_ptr_as_ref feature)

r? `@ghost`
`@rustbot` modify labels: rollup
@rust-log-analyzer
Copy link
Collaborator

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

Click to see the possible cause of the failure (guessed by this bot)
[TIMING] core::builder::Builder::sysroot_libdir::Libdir { compiler: Compiler { stage: 2, host: arm-unknown-linux-gnueabi }, target: x86_64-unknown-linux-gnu } -- 0.000
[TIMING] core::build_steps::compile::StdLink { compiler: Compiler { stage: 1, host: x86_64-unknown-linux-gnu }, target_compiler: Compiler { stage: 2, host: arm-unknown-linux-gnueabi }, target: arm-unknown-linux-gnueabi, crates: [], force_recompile: false } -- 0.000
[TIMING] core::build_steps::compile::Std { target: arm-unknown-linux-gnueabi, compiler: Compiler { stage: 2, host: arm-unknown-linux-gnueabi }, crates: [], force_recompile: false, extra_rust_args: [], is_for_mir_opt_tests: false } -- 0.000
##[group]Building stage2 tool wasm-component-ld (arm-unknown-linux-gnueabi)
error: process didn't exit successfully: `/checkout/obj/build/bootstrap/debug/rustc /checkout/obj/build/bootstrap/debug/rustc -vV` (exit status: 101)
thread 'main' panicked at src/bin/rustc.rs:274:37:

Failed to run:
Failed to run:
LD_LIBRARY_PATH="/checkout/obj/build/arm-unknown-linux-gnueabi/stage2/lib" "/checkout/obj/build/arm-unknown-linux-gnueabi/stage2/bin/rustc" "-vV" "-Wrust_2018_idioms" "-Wunused_lifetimes" "-Dwarnings" "-Zunstable-options" "--check-cfg=cfg(bootstrap)" "-Clinker=arm-unknown-linux-gnueabi-gcc" "--remap-path-prefix" "/checkout=/rustc/2cf47e49d24332ca9877f67cc9988d9b7dd4bd5c" "--remap-path-prefix" "/cargo/registry/src/index.crates.io-6f17d22bba15001f=/rust/deps" "-Zallow-features=binary-dep-depinfo,proc_macro_span,proc_macro_span_shrink,proc_macro_diagnostic,min_specialization"
-------------: Os { code: 8, kind: Uncategorized, message: "Exec format error" }

Build completed unsuccessfully in 0:24:03
  local time: Tue Sep 10 02:11:38 UTC 2024
  network time: Tue, 10 Sep 2024 02:11:39 GMT

@bors
Copy link
Collaborator

bors commented Sep 10, 2024

💔 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 Sep 10, 2024
@workingjubilee workingjubilee deleted the rollup-m4r01yn branch September 10, 2024 02:20
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-run-make Area: port run-make Makefiles to rmake.rs O-unix Operating system: Unix-like rollup A PR which is a rollup 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-libs Relevant to the library team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)
Projects
None yet
Development

Successfully merging this pull request may close these issues.