-
Notifications
You must be signed in to change notification settings - Fork 12.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 5 pull requests #125010
Rollup of 5 pull requests #125010
Conversation
unix/fs: a bit of cleanup around host-specific code
the actual target-specific things we want to test are all in getrandom, and rand already tests miri itself
also add some comments for why we keep certain old obscure APIs supported
reduce test_dependencies Also add comments for why we need all these 3 random functions for Windows, and the old Linux syscall interface.
Solaris: make pre-main code work Fixes rust-lang/miri#3566
avoid code duplication between realloc and malloc
Implement wcslen
organize libc tests into a proper folder, and run some of them on Windows
README: update introduction For some time now, we have (to my knowledge) been able to detect all the UB that rustc actually exploits. I think it's time to advertise that. We also haven't had the problem of "not every nightly has Miri" for a while. `@rust-lang/miri` what do you think?
…an give better errors
io::Error handling: keep around the full io::Error for longer so we can give better errors This should help with the error message in rust-lang/miri#3587.
…RalfJung Implement non-null pointer for malloc(0) Use non-null pointer for malloc(0) as mentioned in rust-lang#3576 to detect leaks and double free of ``malloc(0)`` addresses.
Allow test targets to be set via CLI args Fixes rust-lang#3584 I'm not a pro shell script reader as I am a Windows user, but we shall see if the CI script broke.
make MIRI_TEST_TARGET and RUSTC_BLESS entirely an internal thing They are just used to communicate between `./miri test`/`./x.py test miri` and the test harness, but should not be used by users.
rename 'extern-so' to 'native-lib' Calling "extern" functions is not super clear IMO (extern to what), but saying that we are calling "native" functions from inside the interpreter makes it very clear I think.
Remove feature from documentation examples Add rustc_const_stable attribute to stabilized functions Update intra-doc link for `u8::is_ascii_whitespace` on `&[u8]` functions
Automatic Rustup
alloc: update comments around malloc() alignment Also separate the C heap shims form the Windows heap shims; their guarantees aren't quite the same.
Stabilize `byte_slice_trim_ascii` for `&[u8]`/`&str` Remove feature from documentation examples Update intra-doc link for `u8::is_ascii_whitespace` on `&[u8]` functions Closes rust-lang#94035 FCP has successfully completed rust-lang#94035 (comment)
Document proper usage of `fmt::Error` and `fmt()`'s `Result`. I've seen several newcomers wonder why `fmt::Error` doesn't have any error detail information, or propose to return it in response to an error condition found inside a `impl fmt::Display for MyType`. That is incorrect, per [a lone paragraph of the `fmt` module's documentation](https://doc.rust-lang.org/1.78.0/std/fmt/index.html#formatting-traits). However, users looking to implement a formatting trait won't necessarily look there. Therefore, let's add the critical information (that formatting per se is infallible) to all the involved items: every `fmt()` method, and `fmt::Error`. This PR is not intended to make any novel claims about `fmt`; only to repeat an existing one in places where it will be more visible.
…k-Simulacrum check if `x test tests` missing any test directory Add a unit test to ensure we don't skip any test directories for `x test tests` in the future.
…au,Nilstrieb Handle Deref expressions in invalid_reference_casting Similar to rust-lang#124908 See rust-lang#124951 for context; this PR fixes the last of the known false postiive cases with this lint that we encounter in Crater.
Miri subtree update r? `@ghost`
@bors r+ rollup=never p=5 |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR:
previous master: 35c5e67c69 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
Finished benchmarking commit (686bfc4): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 674.634s -> 673.271s (-0.20%) |
Successful merges:
byte_slice_trim_ascii
for&[u8]
/&str
#124928 (Stabilizebyte_slice_trim_ascii
for&[u8]
/&str
)fmt::Error
andfmt()
'sResult
. #124954 (Document proper usage offmt::Error
andfmt()
'sResult
.)x test tests
missing any test directory #124969 (check ifx test tests
missing any test directory)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup