Repository navigation
Rollup of 7 pull requests - #164865
Rollup of 7 pull requests#164865
Conversation
…n message to the first one that applied
When calling a method that appears on `Iterator`, we often say "`Foo` is not an iterator", even if that method exists in other traits, which is quite confusing and many times nonsensical. Now, if we mention multiple traits we revert the main message back:
```
error[E0599]: no method named `take` found for struct `Foo` in the current scope
--> $DIR/method-call-err-msg.rs:19:7
|
LL | pub struct Foo;
| -------------- method `take` not found for this struct because it doesn't satisfy `Foo: Iterator`
...
LL | / y.zero()
LL | | .take()
| | -^^^^ `Foo` is not an iterator
| |______|
|
|
= note: the following trait bounds were not satisfied:
`Foo: Iterator`
which is required by `&mut Foo: Iterator`
note: the trait `Iterator` must be implemented
--> $SRC_DIR/core/src/iter/traits/iterator.rs:LL:COL
= help: items from traits can only be used if the trait is implemented and in scope
= note: the following traits define an item `take`, perhaps you need to implement one of them:
candidate rust-lang#1: `Iterator`
candidate rust-lang#2: `std::io::Read`
```
We already set the module flag, so all we have to do is move the #endif from a few lines earlier. The struct member no longer exists in LLVM 24.
Some projects manually define rust_eh_personality as they use no_std on a target where libcore is compiled with panic=unwind and thus need rust_eh_personality to be present while it is only defined in libstd. These projects don't want to use unstable features and thus can't use a proper #[lang = "eh_personality"].
Allow simd types in improper_ctypes lint There are more specific lints / hard errors for simd types in C ABI (if I understand rust-lang#63068 (comment) correctly) so I guess we can make this lint not fire for simd types. r? @RalfJung
…k-Simulacrum Stop mangling rust_eh_personality again for now Some projects manually define rust_eh_personality as they use no_std on a target where libcore is compiled with panic=unwind and thus need rust_eh_personality to be present while it is only defined in libstd. These projects don't want to use unstable features and thus can't use a proper #[lang = "eh_personality"]. This reverts just the symbol mangling change of rust-lang#148413. It preserves all the refactors to prevent codegen backends from hard coding the symbol name, so we can easily change it back to mangled in the future again.
…rouwer
When multiple traits are applicable for method, do not specialize main message to the first one that applied
When calling a method that appears on `Iterator`, we often say "`Foo` is not an iterator", even if that method exists in other traits, which is quite confusing and many times nonsensical. Now, if we mention multiple traits we revert the main message back:
```
error[E0599]: no method named `take` found for struct `Foo` in the current scope
--> $DIR/method-call-err-msg.rs:19:7
|
LL | pub struct Foo;
| -------------- method `take` not found for this struct because it doesn't satisfy `Foo: Iterator`
...
LL | / y.zero()
LL | | .take()
| | -^^^^ `Foo` is not an iterator
| |______|
|
|
= note: the following trait bounds were not satisfied:
`Foo: Iterator`
which is required by `&mut Foo: Iterator`
note: the trait `Iterator` must be implemented
--> $SRC_DIR/core/src/iter/traits/iterator.rs:LL:COL
= help: items from traits can only be used if the trait is implemented and in scope
= note: the following traits define an item `take`, perhaps you need to implement one of them:
candidate rust-lang#1: `Iterator`
candidate rust-lang#2: `std::io::Read`
```
Fix rust-lang#113550.
…k-Simulacrum Retroactively add missing stabilized APIs to relnotes Context: [#t-release > Missing item from past relnotes](https://rust-lang.zulipchat.com/#narrow/channel/241545-t-release/topic/Missing.20item.20from.20past.20relnotes/with/630486190) * Closes rust-lang#151601: `core::arch::aarch64::__jcvt`, stabilized in rust-lang/stdarch#1938 in 1.95.0 * Closes rust-lang#154762: `{Option,Result}::map_or_default`, stabilized in rust-lang#156222 in 1.98.0 * Closes rust-lang#157821: `Box::as_{mut_,}ptr`, stabilized in rust-lang#157876 in 1.98.0 * Closes rust-lang#156779: `Path::is_empty`, stabilized in rust-lang#157065 in 1.98.0 * Closes rust-lang#157517: `PathBuf::into_string`, stabilized in rust-lang#156840 in 1.98.0 * Closes rust-lang#157393: `arch::{arm,aarch64}::vdot*` NEON dot product intrinsics, stabilized in rust-lang/stdarch#2120 in 1.98.0 * Closes rust-lang#158831: `<LocalKey<Cell<T>>>::update`, stabilized in rust-lang#157734 in 1.99.0
…uppe Remove remaining mentions of `Unique` Removes the remaining mentions of `Unique` from the codebase I didn't touch the standalone `core_mini` codegen examples that declare their own `struct Unique` because I don't know what they are intended to show, and also some of them have a very outdated version of the layout of `Box` (no allocators). The only mentions of `Unique` I touched were the ones actually referring to `core::ptr::unique::Unique`. cc rust-lang#164146 (comment) r? hanna-kruppe
…nikic PassWrapper: stop setting Options.ExceptionModel on LLVM 24 We already set the module flag, so all we have to do is move the #endif from a few lines earlier. The struct member no longer exists in LLVM 24. @rustbot label: +llvm-main
…ng_issue, r=ChrisDenton Add tracking issue for `#![feature(char_is_xid)]` Adds the tracking issue (rust-lang#164841) for `#![feature(char_is_xid)]` Closes rust-lang/libs-team#540 (the corresponding ACP)
This comment has been minimized.
This comment has been minimized.
Rollup of 7 pull requests try-job: dist-various-1 try-job: test-various try-job: test-x86_64-gnu-aux try-job: test-x86_64-msvc-1 try-job: test-aarch64-apple-1 try-job: test-aarch64-apple-2 try-job: test-x86_64-mingw-1 try-job: test-i686-msvc try-job: test-armhf-gnu try-job: test-x86_64-gnu-llvm-22-3
This comment has been minimized.
This comment has been minimized.
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing df87fa6 (parent) -> 12433c3 (this PR) Test differencesNo test diffs found Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 12433c307b5a497388ffe2f4e49dbf1ab8c71fa0 --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
Finished benchmarking commit (12433c3): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis perf run didn't have relevant results for this metric. Max RSS (memory usage)Results (primary 0.2%, secondary 0.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary -0.2%, secondary 0.2%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary -0.1%, secondary -0.2%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 487.491s -> 488.652s (0.24%) |
|
📌 Perf builds for each rolled up PR:
parent commit: df87fa6604 In the case of a perf regression, run the following command with the SHAs of each PR you suspect might be the cause: |
Successful merges:
Unique#164573 (Remove remaining mentions ofUnique)#![feature(char_is_xid)]#164844 (Add tracking issue for#![feature(char_is_xid)])r? @ghost
Create a similar rollup