Skip to content

Conversation

RalfJung
Copy link
Member

@RalfJung RalfJung commented Sep 10, 2025

This fixes the problem pointed out by @saethlin in #146383 (comment).

Also clarify when exactly current de-facto MIR semantics allow overlap of the LHS and RHS in an assignment.

@rustbot
Copy link
Collaborator

rustbot commented Sep 10, 2025

The Miri subtree was changed

cc @rust-lang/miri

Some changes occurred to the CTFE / Miri interpreter

cc @rust-lang/miri

Some changes occurred to the CTFE machinery

cc @RalfJung, @oli-obk, @lcnr

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Sep 10, 2025
@rustbot
Copy link
Collaborator

rustbot commented Sep 10, 2025

r? @BoxyUwU

rustbot has assigned @BoxyUwU.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@RalfJung RalfJung force-pushed the aggregate-init branch 2 times, most recently from 48c050f to 84d6318 Compare September 10, 2025 10:19
@rust-log-analyzer

This comment has been minimized.

@BoxyUwU
Copy link
Member

BoxyUwU commented Sep 10, 2025

sounds incredibly cool, u should assign this to someone other than me because I have no idea what is going on here :3

@RalfJung
Copy link
Member Author

r? @saethlin

@rustbot
Copy link
Collaborator

rustbot commented Sep 10, 2025

This PR changes MIR

cc @oli-obk, @RalfJung, @JakobDegen, @vakaras

@rustbot
Copy link
Collaborator

rustbot commented Sep 10, 2025

Some changes occurred in compiler/rustc_codegen_ssa

cc @WaffleLapkin

@rust-log-analyzer

This comment has been minimized.

@saethlin
Copy link
Member

@bors r+ rollup=iffy

(likely suspect if this ends up in a rollup with a perf change)

@bors
Copy link
Collaborator

bors commented Sep 14, 2025

📌 Commit 7222506 has been approved by saethlin

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 14, 2025
@bors
Copy link
Collaborator

bors commented Sep 14, 2025

⌛ Testing commit 7222506 with merge fa9d5c9...

bors added a commit that referenced this pull request Sep 14, 2025
interpret: fix overlapping aggregate initialization

This fixes the problem pointed out by `@saethlin` in #146383 (comment).

Also clarify when exactly current de-facto MIR semantics allow overlap of the LHS and RHS in an assignment.
@rust-log-analyzer
Copy link
Collaborator

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

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

======== tests/rustdoc-gui/list_code_block.goml ========

`tests/rustdoc-gui/list_code_block.goml` list_code_block output:
Waiting failed: 30000ms exceeded
stack: TimeoutError: Waiting failed: 30000ms exceeded
    at new WaitTask (/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc-gui/node_modules/puppeteer-core/lib/cjs/puppeteer/common/WaitTask.js:50:34)
    at IsolatedWorld.waitForFunction (/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc-gui/node_modules/puppeteer-core/lib/cjs/puppeteer/api/Realm.js:25:26)
    at CdpFrame.waitForFunction (/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc-gui/node_modules/puppeteer-core/lib/cjs/puppeteer/api/Frame.js:561:43)
    at CdpFrame.<anonymous> (/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc-gui/node_modules/puppeteer-core/lib/cjs/puppeteer/util/decorators.js:98:27)
    at CdpPage.waitForFunction (/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc-gui/node_modules/puppeteer-core/lib/cjs/puppeteer/api/Page.js:1366:37)
    at runAllCommands (/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc-gui/node_modules/browser-ui-test/src/index.js:418:28)
    at async innerRunTestCode (/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc-gui/node_modules/browser-ui-test/src/index.js:696:21)
    at async innerRunTests (/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc-gui/node_modules/browser-ui-test/src/index.js:633:17)
    at async runTests (/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc-gui/node_modules/browser-ui-test/src/index.js:824:27)


======== tests/rustdoc-gui/search-result-display.goml ========

[WARNING] `tests/rustdoc-gui/search-result-display.goml` line 39: Delta is 0 for "x", maybe try to use `compare-elements-position` instead?

@bors
Copy link
Collaborator

bors commented Sep 14, 2025

💔 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 14, 2025
@saethlin
Copy link
Member

@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 Sep 14, 2025
Zalathar added a commit to Zalathar/rust that referenced this pull request Sep 15, 2025
interpret: fix overlapping aggregate initialization

This fixes the problem pointed out by `@saethlin` in rust-lang#146383 (comment).

Also clarify when exactly current de-facto MIR semantics allow overlap of the LHS and RHS in an assignment.
bors added a commit that referenced this pull request Sep 15, 2025
Rollup of 8 pull requests

Successful merges:

 - #146402 (interpret: fix overlapping aggregate initialization)
 - #146530 (rustc_codegen_llvm: Adjust RISC-V inline assembly's clobber list)
 - #146533 (Note some previous attempts to change the Default impl for `[T; 0]`)
 - #146539 (fix 404 MCP link)
 - #146546 (Switch `std::vec::PeekMut::pop` from self to this parameter.)
 - #146549 (On FreeBSD, use readdir instead of readdir_r)
 - #146559 (Fix typo in error message)
 - #146563 (bootstrap.py: disable incremental build for bootstrap in CI)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit that referenced this pull request Sep 15, 2025
Rollup of 8 pull requests

Successful merges:

 - #146402 (interpret: fix overlapping aggregate initialization)
 - #146530 (rustc_codegen_llvm: Adjust RISC-V inline assembly's clobber list)
 - #146533 (Note some previous attempts to change the Default impl for `[T; 0]`)
 - #146539 (fix 404 MCP link)
 - #146546 (Switch `std::vec::PeekMut::pop` from self to this parameter.)
 - #146549 (On FreeBSD, use readdir instead of readdir_r)
 - #146559 (Fix typo in error message)
 - #146563 (bootstrap.py: disable incremental build for bootstrap in CI)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit that referenced this pull request Sep 15, 2025
Rollup of 8 pull requests

Successful merges:

 - #146402 (interpret: fix overlapping aggregate initialization)
 - #146530 (rustc_codegen_llvm: Adjust RISC-V inline assembly's clobber list)
 - #146533 (Note some previous attempts to change the Default impl for `[T; 0]`)
 - #146539 (fix 404 MCP link)
 - #146546 (Switch `std::vec::PeekMut::pop` from self to this parameter.)
 - #146549 (On FreeBSD, use readdir instead of readdir_r)
 - #146559 (Fix typo in error message)
 - #146563 (bootstrap.py: disable incremental build for bootstrap in CI)

r? `@ghost`
`@rustbot` modify labels: rollup
Zalathar added a commit to Zalathar/rust that referenced this pull request Sep 15, 2025
interpret: fix overlapping aggregate initialization

This fixes the problem pointed out by ``@saethlin`` in rust-lang#146383 (comment).

Also clarify when exactly current de-facto MIR semantics allow overlap of the LHS and RHS in an assignment.
Zalathar added a commit to Zalathar/rust that referenced this pull request Sep 15, 2025
interpret: fix overlapping aggregate initialization

This fixes the problem pointed out by ```@saethlin``` in rust-lang#146383 (comment).

Also clarify when exactly current de-facto MIR semantics allow overlap of the LHS and RHS in an assignment.
bors added a commit that referenced this pull request Sep 15, 2025
Rollup of 12 pull requests

Successful merges:

 - #146338 (Extends AArch64 branch protection support to include GCS)
 - #146344 (tests/codegen-llvm: Make rust-abi-arch-specific-adjustment portable)
 - #146402 (interpret: fix overlapping aggregate initialization)
 - #146405 (Add relnotes for 1.90.0)
 - #146530 (rustc_codegen_llvm: Adjust RISC-V inline assembly's clobber list)
 - #146533 (Note some previous attempts to change the Default impl for `[T; 0]`)
 - #146539 (fix 404 MCP link)
 - #146546 (Switch `std::vec::PeekMut::pop` from self to this parameter.)
 - #146549 (On FreeBSD, use readdir instead of readdir_r)
 - #146559 (Fix typo in error message)
 - #146563 (bootstrap.py: disable incremental build for bootstrap in CI)
 - #146576 (opt-dist: don't set `RUST_LOG=collector=debug`)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit that referenced this pull request Sep 16, 2025
Rollup of 9 pull requests

Successful merges:

 - #145095 (Migrate `UnsizedConstParamTy`  to unstable impl of `ConstParamTy_`)
 - #145960 (Split `FnCtxt::report_args_error` into subfunctions)
 - #146402 (interpret: fix overlapping aggregate initialization)
 - #146466 (llvm-wrapper: other cleanup)
 - #146574 (compiletest: Enable new-output-capture by default)
 - #146599 (replace some `#[const_trait]` with `const trait`)
 - #146601 (compiletest: Make `./x test --test-args ...` work again)
 - #146608 (improve internal bootstrap docs)
 - #146609 (bootstrap: lower verbosity of cargo to one less than bootstrap's)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit that referenced this pull request Sep 16, 2025
interpret: fix overlapping aggregate initialization

This fixes the problem pointed out by `@saethlin` in #146383 (comment).

Also clarify when exactly current de-facto MIR semantics allow overlap of the LHS and RHS in an assignment.
@bors
Copy link
Collaborator

bors commented Sep 16, 2025

⌛ Testing commit 7222506 with merge 1c8c184...

@Zalathar
Copy link
Contributor

Yield to enclosing rollup, which failed due to a GitHub runner flaking out.

@bors retry

bors added a commit that referenced this pull request Sep 16, 2025
Rollup of 9 pull requests

Successful merges:

 - #145095 (Migrate `UnsizedConstParamTy`  to unstable impl of `ConstParamTy_`)
 - #145960 (Split `FnCtxt::report_args_error` into subfunctions)
 - #146402 (interpret: fix overlapping aggregate initialization)
 - #146466 (llvm-wrapper: other cleanup)
 - #146574 (compiletest: Enable new-output-capture by default)
 - #146599 (replace some `#[const_trait]` with `const trait`)
 - #146601 (compiletest: Make `./x test --test-args ...` work again)
 - #146608 (improve internal bootstrap docs)
 - #146609 (bootstrap: lower verbosity of cargo to one less than bootstrap's)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit f162d11 into rust-lang:master Sep 16, 2025
10 of 11 checks passed
@rustbot rustbot added this to the 1.92.0 milestone Sep 16, 2025
@bors
Copy link
Collaborator

bors commented Sep 16, 2025

⌛ Testing commit 7222506 with merge 8a1b399...

rust-timer added a commit that referenced this pull request Sep 16, 2025
Rollup merge of #146402 - RalfJung:aggregate-init, r=saethlin

interpret: fix overlapping aggregate initialization

This fixes the problem pointed out by ````@saethlin```` in #146383 (comment).

Also clarify when exactly current de-facto MIR semantics allow overlap of the LHS and RHS in an assignment.
github-actions bot pushed a commit to rust-lang/miri that referenced this pull request Sep 17, 2025
Rollup of 9 pull requests

Successful merges:

 - rust-lang/rust#145095 (Migrate `UnsizedConstParamTy`  to unstable impl of `ConstParamTy_`)
 - rust-lang/rust#145960 (Split `FnCtxt::report_args_error` into subfunctions)
 - rust-lang/rust#146402 (interpret: fix overlapping aggregate initialization)
 - rust-lang/rust#146466 (llvm-wrapper: other cleanup)
 - rust-lang/rust#146574 (compiletest: Enable new-output-capture by default)
 - rust-lang/rust#146599 (replace some `#[const_trait]` with `const trait`)
 - rust-lang/rust#146601 (compiletest: Make `./x test --test-args ...` work again)
 - rust-lang/rust#146608 (improve internal bootstrap docs)
 - rust-lang/rust#146609 (bootstrap: lower verbosity of cargo to one less than bootstrap's)

r? `@ghost`
`@rustbot` modify labels: rollup
@RalfJung RalfJung deleted the aggregate-init branch September 17, 2025 06:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants