Rollup of 8 pull requests#155566
Closed
JonathanBrouwer wants to merge 219 commits intorust-lang:mainfrom
Closed
Conversation
Co-authored-by: Amit Singhmar <abhay.singhmar2@gmail.com>
The "ExecutionGraph" GenMC folder has been renamed to "Execution", and there is a GenMC class named ExecutionState. This commit adjust the include paths in some cpp files, and renames an enum in lib.rs (ExecutionState->ExecutionStatus).
The new parameter allows to step the event index by an arbitrary amount. The functions now return void. This is a preparatory commit that lays the ground before adjusting all API calls to match the new GenMC API. The code does not compile.
Another preparatory commit before API adjustment.
This commit adds a new result type for malloc (preparatory).
In the newer GenMC version, two RMWs might read from the same write during an exploration. In such a case, the exploration has to be dropped so that an alternative one can be explored. Miri did not provide a way to completely stop an execution without throwing an error. This commit adds a new TerminationInfo case in diagnostics that is used by GenMC to signal that an execution should be aborted. On the API side, a new result field is introduced.
…ocking Add support for non-blocking TCP sockets and operations
- Fixes API calls to existing GenMC functions, which now
return the number by which event_count should be increased
- Properly handles "Invalid" results (where applicable)
- Introduces handle_non_atomic_{store,load} in Miri and
ensures they call their GenMC counterparts.
- Adds NA handlers in Miri's GenmcCtx, and renames the previous
handle_{load,store} to handle_atomic_{load,store}.
- Removes handle_load_reset_if_none, the only purpose of which
was to decrease the event counter.
- Removes dec_pos(), which is now also unnecessary.
BUG_ON() no longer exists in GenMC.
GenMC no longer relies on interpreter callbacks. It collects all information it needs for both exploration and error-reporting dynamically.
Necessary for GenMC to build. Makes exploration much faster since NAs are not explicitly tracked.
The difference is caused by the different order in which GenMC explores executions, and the new error-detection mechanism.
GenMC: Fixes and improved non-atomic handling
Example
---
```rust
fn foo() {
let mut arr = [1i32];
$0arr[0] = 3;$0
let _ = arr;
}
```
**Before this PR**
```rust
fn foo() {
let mut arr = [1i32];
fun_name(&mut arr);
let _ = arr;
}
fn $0fun_name(arr: &mut [i32; 1]) {
*arr[0] = 3;
}
```
**After this PR**
```rust
fn foo() {
let mut arr = [1i32];
fun_name(&mut arr);
let _ = arr;
}
fn $0fun_name(arr: &mut [i32; 1]) {
arr[0] = 3;
}
```
…ent-index fix: no deref index-expr for extract_function
I chose the order of mut restrictions to be `unsafe mut(...)` for unsafe fields, but it's undecided yet.
`rust-analyzer` subtree update Subtree update of `rust-analyzer` to rust-lang/rust-analyzer@cc5bc48. Created using https://github.com/rust-lang/josh-sync. r? @ghost
…ed-closure-return, r=petrochenkov Suggest returning a reference for unsized place from a closure Fixes rust-lang#152064 There are 3 similar note: `the size for values of type str cannot be known at compilation time` for different spans, maybe need more work to remove some of them. This PR only adds a suggestion for using a reference.
Simplify macros for target-modifier and mitigation flags - Rebased and revised version of rust-lang#154501. --- The macros used for handling command-line flags that are “target modifiers” or “mitigations” are quite complicated, and can be significantly simplified by tweaking their syntax and by making use of `${ignore(..)}` metavars. It's possible that more code could be moved out of macros (e.g. declaring some of the enums by hand), but that can be investigated in a potential follow-up. There should be no change to compiler behaviour.
miri subtree update Subtree update of `miri` to rust-lang/miri@16dd940. Created using https://github.com/rust-lang/josh-sync. r? @ghost
…tern, r=ehuss tests/ui/extern: add annotations for reference rules
Make reparsed guard metavars collect tokens This should avoid missing tokens. Closes rust-lang#155333
…d, r=JonathanBrouwer Remove `AttributeLintKind` variants - part 4 Part of rust-lang#153099. r? @JonathanBrouwer
…g, r=petrochenkov enable dynamic linking on the vita target the vita os has support for dynamic linking so this should be set enabled on the target definition
Contributor
Author
Contributor
Contributor
|
⌛ Trying commit cf0c5fb with merge e641dfa… To cancel the try build, run the command Workflow: https://github.com/rust-lang/rust/actions/runs/24677550804 |
rust-bors Bot
pushed a commit
that referenced
this pull request
Apr 20, 2026
Rollup of 8 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 try-job: x86_64-mingw-1 try-job: i686-msvc-2
Collaborator
|
The job Click to see the possible cause of the failure (guessed by this bot) |
Contributor
|
PR #155563, which is a member of this rollup, was unapproved. This rollup was thus unapproved. |
Contributor
Author
|
@bors try cancel |
Contributor
|
Try build cancelled. Cancelled workflows: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Successful merges:
rust-analyzersubtree update #155556 (rust-analyzersubtree update)AttributeLintKindvariants - part 4 #155560 (RemoveAttributeLintKindvariants - part 4)r? @ghost
Create a similar rollup