Skip to content

Conversation

Nadrieril
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

eopb and others added 30 commits January 5, 2024 22:35
The feature does not seem to be required by this doctest.
I did some benchmark digging into the `intersperse` and `intersperse_with` code as part of the https://internals.rust-lang.org/t/add-iterate-with-separators-iterator-function/18781/13 discussion, and as a result I optimized them a bit, without relying on the peekable iterator.
Co-authored-by: Josh Stone <cuviper@gmail.com>
Co-authored-by: Michael Goulet <michael@errs.io>
When encountering an attribute in a body, we try to recover from an attribute on an expression (as opposed to a statement). We need to properly clean up when the attribute is at the end of the body where a tail expression would be. Fix rust-lang#118164.
estebank and others added 10 commits January 27, 2024 00:21
Do not attempt to provide an accurate suggestion for `impl Trait` in bare trait types when linting. Instead, only do the object safety check when an E0782 is already going to be emitted in the 2021 edition. Fix rust-lang#120241.
…iper Boost iterator intersperse(_with) performance I did some benchmark digging into the `intersperse` and `intersperse_with` code as part of [this discussion](https://internals.rust-lang.org/t/add-iterate-with-separators-iterator-function/18781/13), and as a result I optimized them a bit, without relying on the peekable iterator. See also [full benchmark repo](https://github.com/nyurik/intersperse_perf) Benchmarks show near 2x performance improvements with the simple `sum` [benchmarks](https://gist.github.com/nyurik/68b6c9b3d90f0d14746d4186bf8fa1e2): ![image](https://user-images.githubusercontent.com/1641515/237005195-16aebef4-9eed-4514-8b7c-da1d1f5bd9e0.png)
Properly recover from trailing attr in body When encountering an attribute in a body, we try to recover from an attribute on an expression (as opposed to a statement). We need to properly clean up when the attribute is at the end of the body where a tail expression would be. Fix rust-lang#118164, fix rust-lang#118575.
…sDenton Remove feature not required by `Ipv6Addr::to_cononical` doctest The feature does not seem to be required by this doctest.
Add FileCheck annotations to dataflow-const-prop tests part of rust-lang#116971. A few shadowing variable names are changed, so that it is easier to match the variable names in MIR using FileCheck syntax. Also, there's a FIXME in [enum.rs](https://github.com/rust-lang/rust/pull/119759/files#diff-7621f55327838e489a95ac99ae1e6126b37c57aff582594e6bee9d7e7e56fc58) because the MIR looks suspicious to me. It has been explained in the comments. r? cjgillot
Avoid ICE in trait without `dyn` lint Do not attempt to provide an accurate suggestion for `impl Trait` in bare trait types when linting. Instead, only do the object safety check when an E0782 is already going to be emitted in the 2021 edition. Fix rust-lang#120241.
Update codegen test for LLVM 18 r? ``@cuviper``
…ler-errors ScopeTree: remove destruction_scopes as unused last usages removed by rust-lang#116170 Unused, but still presented in memory at `t-gmax` (in DHAT termonology)
…piler-errors Improve handling of numbers in `IntoDiagnosticArg` While working on rust-lang#120393, I realize that my fluent selectors were not working. So here is an improvement (not a fix unfortunately).
…rieb Remove myself from review rotation Still willing to do reviews (and make it through my backlog), but I don't have the bandwidth to be on the rotation right now.
@rustbot rustbot added A-meta Area: Issues & PRs about the rust-lang/rust repository itself 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. T-libs Relevant to the library team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Jan 27, 2024
@Nadrieril
Copy link
Member Author

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented Jan 27, 2024

📌 Commit cb459f7 has been approved by Nadrieril

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 Jan 27, 2024
@bors
Copy link
Collaborator

bors commented Jan 27, 2024

⌛ Testing commit cb459f7 with merge 21d5b93...

bors added a commit to rust-lang-ci/rust that referenced this pull request Jan 27, 2024
Rollup of 9 pull requests Successful merges: - rust-lang#111379 (Boost iterator intersperse(_with) performance) - rust-lang#118182 (Properly recover from trailing attr in body) - rust-lang#119641 (Remove feature not required by `Ipv6Addr::to_cononical` doctest) - rust-lang#119759 (Add FileCheck annotations to dataflow-const-prop tests) - rust-lang#120275 (Avoid ICE in trait without `dyn` lint) - rust-lang#120376 (Update codegen test for LLVM 18) - rust-lang#120386 (ScopeTree: remove destruction_scopes as unused) - rust-lang#120398 (Improve handling of numbers in `IntoDiagnosticArg`) - rust-lang#120399 (Remove myself from review rotation) r? `@ghost` `@rustbot` modify labels: rollup
@rust-log-analyzer
Copy link
Collaborator

The job test-various failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
failures: ---- [mir-opt] tests/mir-opt/dataflow-const-prop/terminator.rs stdout ---- error: verification with 'FileCheck' failed status: exit status: 1 command: "/checkout/obj/build/x86_64-unknown-linux-gnu/ci-llvm/bin/FileCheck" "--input-file" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/mir-opt/dataflow-const-prop/terminator/terminator.mir" "/checkout/tests/mir-opt/dataflow-const-prop/terminator.rs" "--allow-unused-prefixes" "--check-prefixes" "CHECK,NONMSVC" "--dump-input-context" "100" Build completed unsuccessfully in 0:16:41 --- stderr ------------------------------- /checkout/tests/mir-opt/dataflow-const-prop/terminator.rs:12:12: error: CHECK: expected string not found in input /checkout/tests/mir-opt/dataflow-const-prop/terminator.rs:12:12: error: CHECK: expected string not found in input // CHECK: {{_.*}} = foo(const 2_i32) -> [return: {{bb.*}}, unwind continue]; ^ /checkout/obj/build/x86_64-unknown-linux-gnu/test/mir-opt/dataflow-const-prop/terminator/terminator.mir:13:9: note: scanning from here ^ ^ /checkout/obj/build/x86_64-unknown-linux-gnu/test/mir-opt/dataflow-const-prop/terminator/terminator.mir:32:2: note: possible intended match here _2 = foo(const 2_i32) -> [return: bb1, unwind unreachable]; Input file: /checkout/obj/build/x86_64-unknown-linux-gnu/test/mir-opt/dataflow-const-prop/terminator/terminator.mir Check file: /checkout/tests/mir-opt/dataflow-const-prop/terminator.rs -dump-input=help explains the following input dump. Input was: <<<<<< <<<<<< 1: // WARNING: This output format is intended for human consumers only 2: // and is subject to change without notice. Knock yourself out. 3: fn foo(_1: i32) -> () { 4: debug n => _1; 5: let mut _0: (); 6: 7: bb0: { 8: _0 = const (); 9: return; 10: } 11: } 13: fn main() -> () { 13: fn main() -> () { check:12'0 X~~~~~~~~~ error: no match found 14: let mut _0: (); check:12'0 ~~~~~~~~~~~~~~~~~ 15: let _1: i32; check:12'0 ~~~~~~~~~~~~~~ 16: let _2: (); check:12'0 ~~~~~~~~~~~~~ 17: let mut _3: i32; check:12'0 ~~~~~~~~~~~~~~~~~~ 18: let mut _4: i32; check:12'0 ~~~~~~~~~~~~~~~~~~ 19: scope 1 { check:12'0 ~~~~~~~~~~~ 20: debug a => _1; check:12'0 ~~~~~~~~~~~~~~~~ 21: } check:12'0 ~~~ 22: check:12'0 ~ 23: bb0: { check:12'0 ~~~~~~~~ 24: StorageLive(_1); check:12'0 ~~~~~~~~~~~~~~~~~~ 25: _1 = const 1_i32; check:12'0 ~~~~~~~~~~~~~~~~~~~ 26: StorageLive(_2); check:12'0 ~~~~~~~~~~~~~~~~~~ 27: StorageLive(_3); check:12'0 ~~~~~~~~~~~~~~~~~~ 28: StorageLive(_4); check:12'0 ~~~~~~~~~~~~~~~~~~ 29: _4 = const 1_i32; check:12'0 ~~~~~~~~~~~~~~~~~~~ 30: _3 = const 2_i32; check:12'0 ~~~~~~~~~~~~~~~~~~~ 31: StorageDead(_4); check:12'0 ~~~~~~~~~~~~~~~~~~ 32: _2 = foo(const 2_i32) -> [return: bb1, unwind unreachable]; check:12'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ check:12'1 ? possible intended match 33: } check:12'0 ~~~ 34: check:12'0 ~ 35: bb1: { check:12'0 ~~~~~~~~ 36: StorageDead(_3); check:12'0 ~~~~~~~~~~~~~~~~~~ 37: StorageDead(_2); check:12'0 ~~~~~~~~~~~~~~~~~~ 38: _0 = const (); check:12'0 ~~~~~~~~~~~~~~~~ 39: StorageDead(_1); check:12'0 ~~~~~~~~~~~~~~~~~~ 40: return; check:12'0 ~~~~~~~~~ 41: } check:12'0 ~~~ 42: } check:12'0 ~~ ------------------------------------------ 
@bors
Copy link
Collaborator

bors commented Jan 27, 2024

💔 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 Jan 27, 2024
@Nadrieril Nadrieril closed this Jan 27, 2024
@Nadrieril Nadrieril deleted the rollup-soxhics branch January 31, 2024 18:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-meta Area: Issues & PRs about the rust-lang/rust repository itself rollup A PR which is a rollup 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. T-libs Relevant to the library team, which will review and decide on the PR/issue.