Skip to content

Rollup of 18 pull requests#158958

Closed
JonathanBrouwer wants to merge 51 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-jBryWjn
Closed

Rollup of 18 pull requests#158958
JonathanBrouwer wants to merge 51 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-jBryWjn

Conversation

@JonathanBrouwer

@JonathanBrouwer JonathanBrouwer commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

View all comments

Successful merges:

r? @ghost

Create a similar rollup

cammeresi and others added 30 commits May 12, 2026 17:33
None of the existing tests captured a case where non-terminal binds
appeared differently ordered than their definition in their rule, so I
wrote a test for it.

The existing macro parsing code is quite resilient to this kind of
mis-ordering; it took quite a convoluted macro to trigger a case where
the ordering is incorrect today. I've documented the parse tree (based
on my own mental model) that the convoluted macro causes.
The order of `bb_mps` and `next_mps` depends on arbitrary implementation
choices, e.g. the order in which `$(a)? b` causes `a b` and `b` to be
explored. To stop depending on these implementation details, this commit
sorts `bb_mps` and `next_mps` by `mp.idx` (corresponding to the position
in the rule) before presenting error messages.

This makes it easier to refactor the macro parsing implementation.
Signed-off-by: Xiangfei Ding <dingxiangfei2009@protonmail.ch>
Storage is still required even if the local is moved out and
immediately moved in again.

Signed-off-by: Xiangfei Ding <dingxiangfei2009@protonmail.ch>
A recent change in InstSimplify is able to skip the `and` in this
codegen, which is strictly an improvement. We accept the new version on
newer LLVM and the old verison on older ones using the revisions system.

The change in array-cmp.rs appears to have come from the same revision,
so I gave it the same treatment. It's weirder to me though, because it
merely changes the order of the phi operands which if I understand right
doesn't actually matter.
Signed-off-by: Amirhossein Akhlaghpour <m9.akhlaghpoor@gmail.com>
Same as rust-lang/rust/147495, just keeping it up-to-date.
in `is_call_from_compiler_builtins_to_upstream_monomorphization`,
suggested by Saethlin
We'll do this using `-Zforce-intrinsic-fallback` in the main repo going forward
A number of float operations from libm have intrinsics for optimization,
but it is also okay to just call the libm functions directly. Add a
fallback for these cases, including converting to/from another float
size where needed, so the backends don't need to override these.

We do not add a fallback body for intrinsics that have a softfloat
implementation (e.g. sqrt, fma), because it would make them harder
to constify later.
Emscripten targets wasm32 but provides a working POSIX fd layer, including
fcntl(F_DUPFD_CLOEXEC) and dup2(), so it should use the real implementations
rather than the wasm32 UNSUPPORTED_PLATFORM stubs:

- try_clone_to_owned now uses fcntl(F_DUPFD_CLOEXEC) instead of returning
  UNSUPPORTED_PLATFORM
- replace_stdio_fd now uses dup2() instead of the wasm32 fallback
CString::clone_into reuses the target's allocation by moving the buffer into a Vec and growing it. If that growth's allocation fails and the alloc error hook unwinds, the target has to be left as a valid CString, but nothing covered that path.

Add a test in library/alloctests that fails the reallocation under a panicking alloc error hook and checks the target stays valid. The failing allocator is only honored under Miri - a global allocator in a library test doesn't intercept libstd's allocation in a normal build - so the unwind assertion is gated on cfg!(miri); the test still runs and passes as a regular test.
@rust-bors rust-bors Bot 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 Jul 8, 2026
@rust-bors

rust-bors Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

💔 Test for a02d326 failed: CI. Failed job:

@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

A job failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
  IMAGE: test-various
##[endgroup]
    Updating crates.io index
error: failed to get `askama_derive` as a dependency of package `askama_macros v0.16.0`
    ... which satisfies dependency `askama_macros = "=0.16.0"` of package `askama v0.16.0`
    ... which satisfies dependency `askama = "^0.16.0"` of package `citool v0.1.0 (/home/runner/work/rust/rust/src/ci/citool)`

Caused by:
  failed to load source for dependency `askama_derive`

Caused by:
  unable to update registry `crates-io`

Caused by:
  download of as/ka/askama_derive failed

Caused by:
  curl failed

Caused by:

@JonathanBrouwer

Copy link
Copy Markdown
Contributor Author

@bors retry

@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 Jul 8, 2026
@JonathanBrouwer

Copy link
Copy Markdown
Contributor Author

@bors p=10
@bors treeclosed=10 spurious failures

@rust-bors

rust-bors Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Tree closed for PRs with priority less than 10.

@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jul 8, 2026
…uwer

Rollup of 18 pull requests

Successful merges:

 - #158871 (add relnotes for 1.97.0)
 - #150946 (intrinsics: Add a fallback for non-const libm float functions)
 - #158617 (allow mGCA const arguments to fall back to anon consts)
 - #158645 (Fix splat ICEs and ban it in closures)
 - #158655 (Fix coroutine MIR saved local remapping)
 - #158666 (Carry the `b_offset` inside `BackendRepr::ScalarPair`)
 - #158920 (Update wasm-component-ld to 0.5.26)
 - #158926 (wrapping_sh* methods: clarify underspecified reference)
 - #158927 (add core test run with `-Zforce-intrinsic-fallback`)
 - #151379 (Stabilize `VecDeque::retain_back` from `truncate_front`)
 - #158807 (Add regression test for CString::clone_into unwind safety)
 - #158862 (Fix the span for parameter suggestion )
 - #158883 (tests: fix enum-match.rs to handle LLVM 23)
 - #158894 (Make the ordering of non-terminal binds in ambiguity error messages deterministic)
 - #158902 (add codegen test for range length bound propagation)
 - #158913 (Update `browser-ui-test` version to `0.24.1`)
 - #158935 (std: support real fd methods on Emscripten)
 - #158951 (Merge three `MaxUniverse`s into one)
@rust-bors

rust-bors Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: 88538be (88538be3c7183bb70796378ec89f5c71a59bc561)
Base parent: 7ef36ed (7ef36edc23ac10760eb9f097d32edbab2e1e8928)

@JonathanBrouwer

Copy link
Copy Markdown
Contributor Author

@bors treeopen

@rust-bors

rust-bors Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Tree is now open for merging.

@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

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

Click to see the possible cause of the failure (guessed by this bot)

@rust-bors rust-bors Bot 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 Jul 8, 2026
@rust-bors

rust-bors Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

💔 Test for b4ae8d4 failed: CI. Failed job:

@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-review Status: Awaiting review from the assignee but also interested parties. labels Jul 8, 2026
@rust-bors

rust-bors Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

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

@rust-bors rust-bors Bot closed this Jul 8, 2026
@rust-bors

rust-bors Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

PR #150946, which is a member of this rollup, changed its commit SHA.

This rollup was closed.

@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 Jul 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-CI Area: Our Github Actions CI A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-testsuite Area: The testsuite used to check the correctness of rustc F-autodiff `#![feature(autodiff)]` O-unix Operating system: Unix-like rollup A PR which is a rollup T-clippy Relevant to the Clippy team. 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-libs Relevant to the library team, which will review and decide on the PR/issue. T-release Relevant to the release subteam, which will review and decide on the PR/issue. T-rustfmt Relevant to the rustfmt 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.