Skip to content

Rollup of 9 pull requests - #161749

Closed
JonathanBrouwer wants to merge 71 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-oEEcHSY
Closed

Rollup of 9 pull requests#161749
JonathanBrouwer wants to merge 71 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-oEEcHSY

Conversation

@JonathanBrouwer

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

folkertdev and others added 30 commits August 22, 2026 14:53
A naive `f32::mul_add(a as f32, b as f32, c as f32) as f16` has insufficient precision
…when-reliable

run `f16` and `f128` tests natively when reliable
port all variadic functions to strict signature checking
run _Unwind_RaiseException test on Windows
unify shim_sig and shim_sig_variadic macros
make trivial ABI check resilient against new repr

There's currently no way to exhaustively match on "what basic `repr` is this", which is kind of fragile as it means a new repr will get whatever the `else` branch happens to be everywhere. Changing this would be a major refactor, but let's at least make it possible to `assert!` that we covered all the cases by adding an explicit way to check for `repr(Rust)`.
…nded, r=tgross35

test `f16::mul_add` not double-rounding the result

test the precision of `f16::mul_add`. The semantics of `mul_add` are that there should only be one rounding of the final result back into the storage type, i.e. the intermediate result of the multiplication should not be rounded.

A naive implementation of `f16::mul_add` as `f32::mul_add(a as f32, b as f32, c as f32) as f16` has insufficient precision, see llvm/llvm-project#98389.

Our `rustc_codegen_gcc` backend still used the `f32` approach, this PR changes it to instead (implicitly) use the fallback body from `core`, which uses `f64::mul_add` so that the result is correctly rounded.
Add codegen test for static table search loop unrolling

Adds a test for reported case in rust-lang#44041. The follow up case in that issue is still open so this does not close it
…=Kobzol

do not compress debuginfo for Cygwin

when I updated Rust for MSYS, I got errors from gcc regarding -Wl,--compress-debug-sections=zlib flag being unsupported. so don't add it for all Cygwin hosts

r? @Kobzol
@rust-bors rust-bors Bot added the rollup A PR which is a rollup label Aug 25, 2026
@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) PG-exploit-mitigations Project group: Exploit mitigations 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-clippy Relevant to the Clippy team. 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. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output. T-rustfmt Relevant to the rustfmt team, which will review and decide on the PR/issue. labels Aug 25, 2026
@JonathanBrouwer

Copy link
Copy Markdown
Member Author

@bors r+ p=5

Trying commonly failed jobs
@bors try jobs=dist-various-1,test-various,x86_64-gnu-aux,x86_64-gnu-llvm-21-3,x86_64-msvc-1,aarch64-apple-1,aarch64-apple-2,x86_64-mingw-1,i686-msvc-1,i686-msvc-2

@rust-bors

rust-bors Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 49703b7 has been approved by JonathanBrouwer

It is now in the queue for this repository.

@rust-bors rust-bors Bot 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 Aug 25, 2026
@rust-bors

rust-bors Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

⌛ Trying commit 49703b7 with merge 9569069

To cancel the try build, run the command @bors try cancel.

Workflow: https://github.com/rust-lang/rust/actions/runs/32855327247

rust-bors Bot pushed a commit that referenced this pull request Aug 25, 2026
Rollup of 9 pull requests


try-job: dist-various-1
try-job: test-various
try-job: x86_64-gnu-aux
try-job: x86_64-gnu-llvm-21-3
try-job: x86_64-msvc-1
try-job: aarch64-apple-1
try-job: aarch64-apple-2
try-job: x86_64-mingw-1
try-job: i686-msvc-1
try-job: i686-msvc-2
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job pr-check-2 failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
[RUSTC-TIMING] rustc test:false 0.133
    Finished `release` profile [optimized] target(s) in 24.69s
##[endgroup]
[TIMING:end] clippy::Bootstrap { build_compiler: CompilerForCheck { build_compiler: Compiler { stage: 1, host: x86_64-unknown-linux-gnu, forced_compiler: false }, rustc_rmeta_sysroot: None, std_rmeta_sysroot: None }, target: x86_64-unknown-linux-gnu, config: LintConfig { allow: [], warn: [], deny: ["warnings"], forbid: [] } } -- 24.726
[TIMING:start] clippy::Std { build_compiler: Compiler { stage: 1, host: x86_64-unknown-linux-gnu, forced_compiler: false }, target: x86_64-unknown-linux-gnu, config: LintConfig { allow: ["clippy::all"], warn: [], deny: ["clippy::correctness", "clippy::approx_constant", "clippy::assign_op_pattern", "clippy::bind_instead_of_map", "clippy::borrow_deref_ref", "clippy::char_lit_as_u8", "clippy::chunks_exact_to_as_chunks", "clippy::declare_interior_mutable_const", "clippy::default_constructed_unit_structs", "clippy::derivable_impls", "clippy::double_must_use", "clippy::excessive_precision", "clippy::explicit_auto_deref", "clippy::filter_map_next", "clippy::four_forward_slashes", "clippy::int_plus_one", "clippy::legacy_numeric_constants", "clippy::let_and_return", "clippy::manual_repeat_n", "clippy::map_clone", "clippy::match_as_ref", "clippy::mem_replace_option_with_none", "clippy::mem_replace_option_with_some", "clippy::needless_as_bytes", "clippy::needless_bool", "clippy::needless_bool_assign", "clippy::needless_borrow", "clippy::needless_raw_string_hashes", "clippy::needless_return", "clippy::neg_cmp_op_on_partial_ord", "clippy::non_minimal_cfg", "clippy::op_ref", "clippy::partialeq_ne_impl", "clippy::partialeq_to_none", "clippy::print_literal", "clippy::ptr_offset_with_cast", "clippy::redundant_closure", "clippy::redundant_slicing", "clippy::same_item_push", "clippy::seek_from_current", "clippy::single_char_add_str", "clippy::single_match", "clippy::to_digit_is_some", "clippy::to_string_in_format_args", "clippy::unconditional_recursion", "clippy::unnecessary_map_or", "clippy::zero_divided_by_zero"], forbid: [] }, crates: [] }
##[group]Linting stage1 library (stage1 -> stage1, x86_64-unknown-linux-gnu)
[RUSTC-TIMING] find_msvc_tools test:false 0.119
[RUSTC-TIMING] shlex test:false 0.087
    Checking core v0.0.0 (/checkout/library/core)
[RUSTC-TIMING] build_script_build test:false 0.153
---
[RUSTC-TIMING] object test:false 5.043
error: redundant closure
  --> library/std/src/sys/fs/unix/dir.rs:52:18
   |
52 |             .map(|fd| FileDesc::from_inner(fd))
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `FileDesc::from_inner`
   |
   = help: for further information visit https://rust-lang.github.io/rust-clippy/main/index.html#redundant_closure
   = note: requested on the command line with `-D clippy::redundant-closure`

[RUSTC-TIMING] std test:false 4.192
error: could not compile `std` (lib) due to 1 previous error
Bootstrap failed while executing `clippy ci --stage 2`
Currently active steps:
clippy::CI { target: x86_64-unknown-linux-gnu, config: LintConfig { allow: [], warn: [], deny: [], forbid: [] } } at src/bootstrap/src/core/build_steps/clippy.rs:543
clippy::Std { build_compiler: Compiler { stage: 1, host: x86_64-unknown-linux-gnu, forced_compiler: false }, target: x86_64-unknown-linux-gnu, config: LintConfig { allow: ["clippy::all"], warn: [], deny: ["clippy::correctness", "clippy::approx_constant", "clippy::assign_op_pattern", "clippy::bind_instead_of_map", "clippy::borrow_deref_ref", "clippy::char_lit_as_u8", "clippy::chunks_exact_to_as_chunks", "clippy::declare_interior_mutable_const", "clippy::default_constructed_unit_structs", "clippy::derivable_impls", "clippy::double_must_use", "clippy::excessive_precision", "clippy::explicit_auto_deref", "clippy::filter_map_next", "clippy::four_forward_slashes", "clippy::int_plus_one", "clippy::legacy_numeric_constants", "clippy::let_and_return", "clippy::manual_repeat_n", "clippy::map_clone", "clippy::match_as_ref", "clippy::mem_replace_option_with_none", "clippy::mem_replace_option_with_some", "clippy::needless_as_bytes", "clippy::needless_bool", "clippy::needless_bool_assign", "clippy::needless_borrow", "clippy::needless_raw_string_hashes", "clippy::needless_return", "clippy::neg_cmp_op_on_partial_ord", "clippy::non_minimal_cfg", "clippy::op_ref", "clippy::partialeq_ne_impl", "clippy::partialeq_to_none", "clippy::print_literal", "clippy::ptr_offset_with_cast", "clippy::redundant_closure", "clippy::redundant_slicing", "clippy::same_item_push", "clippy::seek_from_current", "clippy::single_char_add_str", "clippy::single_match", "clippy::to_digit_is_some", "clippy::to_string_in_format_args", "clippy::unconditional_recursion", "clippy::unnecessary_map_or", "clippy::zero_divided_by_zero"], forbid: [] }, crates: [] } at src/bootstrap/src/core/build_steps/clippy.rs:628
Build completed unsuccessfully in 0:04:23
  local time: Tue Aug 25 14:10:18 UTC 2026
  network time: Tue, 25 Aug 2026 14:10:19 GMT
##[error]Process completed with exit code 1.
##[group]Run echo "disk usage:"

@rust-bors rust-bors Bot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Aug 25, 2026
@rust-bors

rust-bors Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

PR #161328, which is a member of this rollup, was unapproved.

This rollup was thus unapproved.

@rustbot rustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 25, 2026
@JonathanBrouwer

Copy link
Copy Markdown
Member Author

@bors try cancel

@rust-bors

rust-bors Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Try build cancelled. Cancelled workflows:

Hint: if you want to run another try build, you do not need to manually cancel the previous one. Just run @bors try and bors will cancel the previous build automatically.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) PG-exploit-mitigations Project group: Exploit mitigations rollup A PR which is a rollup T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-clippy Relevant to the Clippy team. 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. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output. T-rustfmt Relevant to the rustfmt team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.