Skip to content

simplify some proc_macro things - #157271

Merged
rust-bors[bot] merged 5 commits into
rust-lang:mainfrom
cyrgani:pm-cleaning
Jun 25, 2026
Merged

rust-bors[bot] merged 5 commits into
rust-lang:mainfrom
cyrgani:pm-cleaning

Conversation

@cyrgani

@cyrgani cyrgani commented Jun 1, 2026 •

Copy link
Copy Markdown
Contributor

View all comments

Each commit should be reviewable on its own. Locally, this also resulted in some slightly better perf results.

@rustbot

rustbot commented Jun 1, 2026

Copy link
Copy Markdown
Collaborator

rust-analyzer is developed in its own repository. If possible, consider making this change to rust-lang/rust-analyzer instead.

cc @rust-lang/rust-analyzer

@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. T-rust-analyzer Relevant to the rust-analyzer team, which will review and decide on the PR/issue. labels Jun 1, 2026
@rustbot

rustbot commented Jun 1, 2026

Copy link
Copy Markdown
Collaborator

r? @petrochenkov

rustbot has assigned @petrochenkov.
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

Why was this reviewer chosen?

The reviewer was selected based on:

  • Owners of files modified in this PR: @petrochenkov

@Kobzol

Kobzol commented Jun 1, 2026

Copy link
Copy Markdown
Member

@bors try @rust-timer queue

@rust-timer

This comment has been minimized.

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jun 1, 2026
@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jun 1, 2026
simplify some `proc_macro` things
@rust-bors

rust-bors Bot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: aba743d (aba743d72e1a2d02bf787988ac919c3c416f243c, parent: c0bb140a37c81cf59a0b40c21c9413059644e294)

@rust-timer

This comment has been minimized.

@rust-timer

Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (aba743d): comparison URL.

Overall result: ❌✅ regressions and improvements - please read:

Benchmarking means the PR may be perf-sensitive. It's automatically marked not fit for rolling up. Overriding is possible but disadvised: it risks changing compiler perf.

Next, please: If you can, justify the regressions found in this try perf run in writing along with @rustbot label: +perf-regression-triaged. If not, fix the regressions and do another perf run. Neutral or positive results will clear the label automatically.

@bors rollup=never
@rustbot label: -S-waiting-on-perf +perf-regression

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
0.4% [0.1%, 1.1%] 27
Regressions ❌
(secondary)
0.2% [0.2%, 0.2%] 1
Improvements ✅
(primary)
-0.8% [-1.9%, -0.2%] 13
Improvements ✅
(secondary)
-1.9% [-4.2%, -0.1%] 13
All ❌✅ (primary) -0.0% [-1.9%, 1.1%] 40

Max RSS (memory usage)

Results (primary 2.4%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
2.4% [2.4%, 2.4%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 2.4% [2.4%, 2.4%] 1

Cycles

Results (primary 0.4%, secondary -5.6%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
1.9% [1.7%, 2.1%] 2
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-2.7% [-2.7%, -2.7%] 1
Improvements ✅
(secondary)
-5.6% [-5.6%, -5.6%] 1
All ❌✅ (primary) 0.4% [-2.7%, 2.1%] 3

Binary size

Results (primary -0.9%, secondary -2.1%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.9% [-1.3%, -0.4%] 17
Improvements ✅
(secondary)
-2.1% [-3.0%, -0.4%] 7
All ❌✅ (primary) -0.9% [-1.3%, -0.4%] 17

Bootstrap: 511.375s -> 517.888s (1.27%)
Artifact size: 400.63 MiB -> 400.68 MiB (0.01%)

@rustbot rustbot added perf-regression Performance regression. and removed S-waiting-on-perf Status: Waiting on a perf run to be completed. labels Jun 1, 2026
Comment thread compiler/rustc_expand/src/proc_macro_server.rs
Comment thread library/proc_macro/src/bridge/buffer.rs
Comment thread library/proc_macro/src/bridge/buffer.rs
@petrochenkov petrochenkov added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 2, 2026
@rust-bors

This comment has been minimized.

JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jun 5, 2026
mark `Encode`, `Decode`, `Mark` impls as `#[inline]`

Related to rust-lang#157271 (though it was not a part of it). This looked pretty promising locally.
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jun 5, 2026
mark `Encode`, `Decode`, `Mark` impls as `#[inline]`

Related to rust-lang#157271 (though it was not a part of it). This looked pretty promising locally.
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jun 5, 2026
mark `Encode`, `Decode`, `Mark` impls as `#[inline]`

Related to rust-lang#157271 (though it was not a part of it). This looked pretty promising locally.
jhpratt added a commit to jhpratt/rust that referenced this pull request Jun 5, 2026
mark `Encode`, `Decode`, `Mark` impls as `#[inline]`

Related to rust-lang#157271 (though it was not a part of it). This looked pretty promising locally.
jhpratt added a commit to jhpratt/rust that referenced this pull request Jun 5, 2026
mark `Encode`, `Decode`, `Mark` impls as `#[inline]`

Related to rust-lang#157271 (though it was not a part of it). This looked pretty promising locally.
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jun 5, 2026
mark `Encode`, `Decode`, `Mark` impls as `#[inline]`

Related to rust-lang#157271 (though it was not a part of it). This looked pretty promising locally.
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jun 23, 2026
simplify some `proc_macro` things

Each commit should be reviewable on its own. Locally, this also resulted in some slightly better perf results.
rust-bors Bot pushed a commit that referenced this pull request Jun 23, 2026
…uwer

Rollup of 23 pull requests

Successful merges:

 - #158315 (`rust-analyzer` subtree update)
 - #155739 (Add temporary scope to assert_eq and assert_ne)
 - #156885 (Fix misattributed type inference error span for index expressions)
 - #157271 (simplify some `proc_macro` things)
 - #157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - #157921 (trait solver: Resolve region vars in max universe)
 - #157960 (delegation: add support for infers in generics)
 - #157983 (Lift the same-signature restriction for `extern "tail"`)
 - #158105 (Extract all instance shim variants into new `ShimKind` enum)
 - #158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - #158279 (Follow goto and drop when linting unreachable code)
 - #157527 (Move derive tests into their dedicated folder)
 - #157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - #158020 (Update mingw-w64 C toolchain)
 - #158222 (format: ignore println newline in foreign format hints)
 - #158223 (Move target checking for #[lang] to the attribute parser)
 - #158252 (Use `cfg_select` in `std::os`)
 - #158257 ( fix escaping placeholder check in next solver normalization folder)
 - #158263 (Only load the feature list once in the entire resolver)
 - #158274 (triagebot: Stop pinging myself)
 - #158282 (slice_split_once: bounds check optimization note)
 - #158300 (Improve unknown crate_type diagnostic suggestions)
 - #158304 (mailmap: update mu001999)

Failed merges:

 - #158256 (Avoid parser panics bubbling out to proc macros)
jhpratt added a commit to jhpratt/rust that referenced this pull request Jun 24, 2026
simplify some `proc_macro` things

Each commit should be reviewable on its own. Locally, this also resulted in some slightly better perf results.
rust-bors Bot pushed a commit that referenced this pull request Jun 24, 2026
Rollup of 27 pull requests

Successful merges:

 - #158315 (`rust-analyzer` subtree update)
 - #155739 (Add temporary scope to assert_eq and assert_ne)
 - #156885 (Fix misattributed type inference error span for index expressions)
 - #157271 (simplify some `proc_macro` things)
 - #157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - #157921 (trait solver: Resolve region vars in max universe)
 - #157960 (delegation: add support for infers in generics)
 - #157983 (Lift the same-signature restriction for `extern "tail"`)
 - #158053 (Optimize network address parser)
 - #158105 (Extract all instance shim variants into new `ShimKind` enum)
 - #158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - #158279 (Follow goto and drop when linting unreachable code)
 - #157527 (Move derive tests into their dedicated folder)
 - #157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - #158020 (Update mingw-w64 C toolchain)
 - #158039 (c-variadic: test that we use equality up to free lifetimes)
 - #158222 (format: ignore println newline in foreign format hints)
 - #158223 (Move target checking for #[lang] to the attribute parser)
 - #158252 (Use `cfg_select` in `std::os`)
 - #158257 ( fix escaping placeholder check in next solver normalization folder)
 - #158263 (Only load the feature list once in the entire resolver)
 - #158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - #158274 (triagebot: Stop pinging myself)
 - #158282 (slice_split_once: bounds check optimization note)
 - #158300 (Improve unknown crate_type diagnostic suggestions)
 - #158304 (mailmap: update mu001999)
 - #158309 (Update `rustc-literal-escaper` version to `0.0.8`)

Failed merges:

 - #158256 (Avoid parser panics bubbling out to proc macros)
jhpratt added a commit to jhpratt/rust that referenced this pull request Jun 24, 2026
simplify some `proc_macro` things

Each commit should be reviewable on its own. Locally, this also resulted in some slightly better perf results.
rust-bors Bot pushed a commit that referenced this pull request Jun 24, 2026
Rollup of 35 pull requests

Successful merges:

 - #158315 (`rust-analyzer` subtree update)
 - #158336 (Stop excluding `stdarch` test crates from `rust-src`)
 - #155739 (Add temporary scope to assert_eq and assert_ne)
 - #156885 (Fix misattributed type inference error span for index expressions)
 - #157271 (simplify some `proc_macro` things)
 - #157419 (move rustc_type_ir Term things to term_kind.rs)
 - #157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - #157921 (trait solver: Resolve region vars in max universe)
 - #157960 (delegation: add support for infers in generics)
 - #157983 (Lift the same-signature restriction for `extern "tail"`)
 - #158053 (Optimize network address parser)
 - #158105 (Extract all instance shim variants into new `ShimKind` enum)
 - #158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - #158279 (Follow goto and drop when linting unreachable code)
 - #157527 (Move derive tests into their dedicated folder)
 - #157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - #157939 (Reorganize `tests/ui/issues` [8/N])
 - #157946 (Make `char::is_private_use` and `char::is_assigned` unstably public)
 - #158003 (Reorganize `tests/ui/issues` [9/N])
 - #158020 (Update mingw-w64 C toolchain)
 - #158039 (c-variadic: test that we use equality up to free lifetimes)
 - #158060 (Reorganize `tests/ui/issues` [10/N])
 - #158222 (format: ignore println newline in foreign format hints)
 - #158223 (Move target checking for #[lang] to the attribute parser)
 - #158252 (Use `cfg_select` in `std::os`)
 - #158263 (Only load the feature list once in the entire resolver)
 - #158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - #158272 (Reorganize `tests/ui/issues` [13/N])
 - #158274 (triagebot: Stop pinging myself)
 - #158282 (slice_split_once: bounds check optimization note)
 - #158300 (Improve unknown crate_type diagnostic suggestions)
 - #158304 (mailmap: update mu001999)
 - #158309 (Update `rustc-literal-escaper` version to `0.0.8`)
 - #158314 (Fix incorrect unsafe debug assertion in unchecked_div_exact)
 - #158326 (Add `io::ErrorKind::TooManyOpenFiles`)
rust-bors Bot pushed a commit that referenced this pull request Jun 24, 2026
Rollup of 35 pull requests

Successful merges:

 - #158315 (`rust-analyzer` subtree update)
 - #158336 (Stop excluding `stdarch` test crates from `rust-src`)
 - #155739 (Add temporary scope to assert_eq and assert_ne)
 - #156885 (Fix misattributed type inference error span for index expressions)
 - #157271 (simplify some `proc_macro` things)
 - #157419 (move rustc_type_ir Term things to term_kind.rs)
 - #157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - #157921 (trait solver: Resolve region vars in max universe)
 - #157960 (delegation: add support for infers in generics)
 - #157983 (Lift the same-signature restriction for `extern "tail"`)
 - #158053 (Optimize network address parser)
 - #158105 (Extract all instance shim variants into new `ShimKind` enum)
 - #158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - #158279 (Follow goto and drop when linting unreachable code)
 - #157527 (Move derive tests into their dedicated folder)
 - #157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - #157939 (Reorganize `tests/ui/issues` [8/N])
 - #157946 (Make `char::is_private_use` and `char::is_assigned` unstably public)
 - #158003 (Reorganize `tests/ui/issues` [9/N])
 - #158020 (Update mingw-w64 C toolchain)
 - #158039 (c-variadic: test that we use equality up to free lifetimes)
 - #158060 (Reorganize `tests/ui/issues` [10/N])
 - #158222 (format: ignore println newline in foreign format hints)
 - #158223 (Move target checking for #[lang] to the attribute parser)
 - #158252 (Use `cfg_select` in `std::os`)
 - #158263 (Only load the feature list once in the entire resolver)
 - #158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - #158272 (Reorganize `tests/ui/issues` [13/N])
 - #158274 (triagebot: Stop pinging myself)
 - #158282 (slice_split_once: bounds check optimization note)
 - #158300 (Improve unknown crate_type diagnostic suggestions)
 - #158304 (mailmap: update mu001999)
 - #158309 (Update `rustc-literal-escaper` version to `0.0.8`)
 - #158314 (Fix incorrect unsafe debug assertion in unchecked_div_exact)
 - #158326 (Add `io::ErrorKind::TooManyOpenFiles`)
rust-bors Bot pushed a commit that referenced this pull request Jun 24, 2026
Rollup of 35 pull requests

Successful merges:

 - #158315 (`rust-analyzer` subtree update)
 - #158336 (Stop excluding `stdarch` test crates from `rust-src`)
 - #155739 (Add temporary scope to assert_eq and assert_ne)
 - #156885 (Fix misattributed type inference error span for index expressions)
 - #157271 (simplify some `proc_macro` things)
 - #157419 (move rustc_type_ir Term things to term_kind.rs)
 - #157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - #157921 (trait solver: Resolve region vars in max universe)
 - #157960 (delegation: add support for infers in generics)
 - #157983 (Lift the same-signature restriction for `extern "tail"`)
 - #158053 (Optimize network address parser)
 - #158105 (Extract all instance shim variants into new `ShimKind` enum)
 - #158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - #158279 (Follow goto and drop when linting unreachable code)
 - #157527 (Move derive tests into their dedicated folder)
 - #157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - #157939 (Reorganize `tests/ui/issues` [8/N])
 - #157946 (Make `char::is_private_use` and `char::is_assigned` unstably public)
 - #158003 (Reorganize `tests/ui/issues` [9/N])
 - #158020 (Update mingw-w64 C toolchain)
 - #158039 (c-variadic: test that we use equality up to free lifetimes)
 - #158060 (Reorganize `tests/ui/issues` [10/N])
 - #158222 (format: ignore println newline in foreign format hints)
 - #158223 (Move target checking for #[lang] to the attribute parser)
 - #158252 (Use `cfg_select` in `std::os`)
 - #158263 (Only load the feature list once in the entire resolver)
 - #158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - #158272 (Reorganize `tests/ui/issues` [13/N])
 - #158274 (triagebot: Stop pinging myself)
 - #158282 (slice_split_once: bounds check optimization note)
 - #158300 (Improve unknown crate_type diagnostic suggestions)
 - #158304 (mailmap: update mu001999)
 - #158309 (Update `rustc-literal-escaper` version to `0.0.8`)
 - #158314 (Fix incorrect unsafe debug assertion in unchecked_div_exact)
 - #158326 (Add `io::ErrorKind::TooManyOpenFiles`)
rust-bors Bot pushed a commit that referenced this pull request Jun 24, 2026
Rollup of 35 pull requests

Successful merges:

 - #158315 (`rust-analyzer` subtree update)
 - #158336 (Stop excluding `stdarch` test crates from `rust-src`)
 - #155739 (Add temporary scope to assert_eq and assert_ne)
 - #156885 (Fix misattributed type inference error span for index expressions)
 - #157271 (simplify some `proc_macro` things)
 - #157419 (move rustc_type_ir Term things to term_kind.rs)
 - #157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - #157921 (trait solver: Resolve region vars in max universe)
 - #157960 (delegation: add support for infers in generics)
 - #157983 (Lift the same-signature restriction for `extern "tail"`)
 - #158053 (Optimize network address parser)
 - #158105 (Extract all instance shim variants into new `ShimKind` enum)
 - #158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - #158279 (Follow goto and drop when linting unreachable code)
 - #157527 (Move derive tests into their dedicated folder)
 - #157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - #157939 (Reorganize `tests/ui/issues` [8/N])
 - #157946 (Make `char::is_private_use` and `char::is_assigned` unstably public)
 - #158003 (Reorganize `tests/ui/issues` [9/N])
 - #158020 (Update mingw-w64 C toolchain)
 - #158039 (c-variadic: test that we use equality up to free lifetimes)
 - #158060 (Reorganize `tests/ui/issues` [10/N])
 - #158222 (format: ignore println newline in foreign format hints)
 - #158223 (Move target checking for #[lang] to the attribute parser)
 - #158252 (Use `cfg_select` in `std::os`)
 - #158263 (Only load the feature list once in the entire resolver)
 - #158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - #158272 (Reorganize `tests/ui/issues` [13/N])
 - #158274 (triagebot: Stop pinging myself)
 - #158282 (slice_split_once: bounds check optimization note)
 - #158300 (Improve unknown crate_type diagnostic suggestions)
 - #158304 (mailmap: update mu001999)
 - #158309 (Update `rustc-literal-escaper` version to `0.0.8`)
 - #158314 (Fix incorrect unsafe debug assertion in unchecked_div_exact)
 - #158326 (Add `io::ErrorKind::TooManyOpenFiles`)
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jun 24, 2026
simplify some `proc_macro` things

Each commit should be reviewable on its own. Locally, this also resulted in some slightly better perf results.
rust-bors Bot pushed a commit that referenced this pull request Jun 24, 2026
Rollup of 35 pull requests



Successful merges:

 - #158315 (`rust-analyzer` subtree update)
 - #158336 (Stop excluding `stdarch` test crates from `rust-src`)
 - #155739 (Add temporary scope to assert_eq and assert_ne)
 - #156885 (Fix misattributed type inference error span for index expressions)
 - #157271 (simplify some `proc_macro` things)
 - #157419 (move rustc_type_ir Term things to term_kind.rs)
 - #157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - #157921 (trait solver: Resolve region vars in max universe)
 - #157960 (delegation: add support for infers in generics)
 - #157983 (Lift the same-signature restriction for `extern "tail"`)
 - #158053 (Optimize network address parser)
 - #158105 (Extract all instance shim variants into new `ShimKind` enum)
 - #158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - #158279 (Follow goto and drop when linting unreachable code)
 - #157527 (Move derive tests into their dedicated folder)
 - #157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - #157939 (Reorganize `tests/ui/issues` [8/N])
 - #157946 (Make `char::is_private_use` and `char::is_assigned` unstably public)
 - #158003 (Reorganize `tests/ui/issues` [9/N])
 - #158020 (Update mingw-w64 C toolchain)
 - #158039 (c-variadic: test that we use equality up to free lifetimes)
 - #158060 (Reorganize `tests/ui/issues` [10/N])
 - #158222 (format: ignore println newline in foreign format hints)
 - #158223 (Move target checking for #[lang] to the attribute parser)
 - #158252 (Use `cfg_select` in `std::os`)
 - #158263 (Only load the feature list once in the entire resolver)
 - #158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - #158272 (Reorganize `tests/ui/issues` [13/N])
 - #158274 (triagebot: Stop pinging myself)
 - #158282 (slice_split_once: bounds check optimization note)
 - #158300 (Improve unknown crate_type diagnostic suggestions)
 - #158304 (mailmap: update mu001999)
 - #158309 (Update `rustc-literal-escaper` version to `0.0.8`)
 - #158314 (Fix incorrect unsafe debug assertion in unchecked_div_exact)
 - #158326 (Add `io::ErrorKind::TooManyOpenFiles`)
rust-bors Bot pushed a commit that referenced this pull request Jun 25, 2026
Rollup of 35 pull requests



Successful merges:

 - #158315 (`rust-analyzer` subtree update)
 - #158336 (Stop excluding `stdarch` test crates from `rust-src`)
 - #155739 (Add temporary scope to assert_eq and assert_ne)
 - #156885 (Fix misattributed type inference error span for index expressions)
 - #157271 (simplify some `proc_macro` things)
 - #157419 (move rustc_type_ir Term things to term_kind.rs)
 - #157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - #157921 (trait solver: Resolve region vars in max universe)
 - #157960 (delegation: add support for infers in generics)
 - #157983 (Lift the same-signature restriction for `extern "tail"`)
 - #158053 (Optimize network address parser)
 - #158105 (Extract all instance shim variants into new `ShimKind` enum)
 - #158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - #158279 (Follow goto and drop when linting unreachable code)
 - #157527 (Move derive tests into their dedicated folder)
 - #157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - #157939 (Reorganize `tests/ui/issues` [8/N])
 - #157946 (Make `char::is_private_use` and `char::is_assigned` unstably public)
 - #158003 (Reorganize `tests/ui/issues` [9/N])
 - #158020 (Update mingw-w64 C toolchain)
 - #158039 (c-variadic: test that we use equality up to free lifetimes)
 - #158060 (Reorganize `tests/ui/issues` [10/N])
 - #158222 (format: ignore println newline in foreign format hints)
 - #158223 (Move target checking for #[lang] to the attribute parser)
 - #158252 (Use `cfg_select` in `std::os`)
 - #158263 (Only load the feature list once in the entire resolver)
 - #158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - #158272 (Reorganize `tests/ui/issues` [13/N])
 - #158274 (triagebot: Stop pinging myself)
 - #158282 (slice_split_once: bounds check optimization note)
 - #158300 (Improve unknown crate_type diagnostic suggestions)
 - #158304 (mailmap: update mu001999)
 - #158309 (Update `rustc-literal-escaper` version to `0.0.8`)
 - #158314 (Fix incorrect unsafe debug assertion in unchecked_div_exact)
 - #158326 (Add `io::ErrorKind::TooManyOpenFiles`)
rust-bors Bot pushed a commit that referenced this pull request Jun 25, 2026
Rollup of 35 pull requests



Successful merges:

 - #158315 (`rust-analyzer` subtree update)
 - #158336 (Stop excluding `stdarch` test crates from `rust-src`)
 - #155739 (Add temporary scope to assert_eq and assert_ne)
 - #156885 (Fix misattributed type inference error span for index expressions)
 - #157271 (simplify some `proc_macro` things)
 - #157419 (move rustc_type_ir Term things to term_kind.rs)
 - #157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - #157921 (trait solver: Resolve region vars in max universe)
 - #157960 (delegation: add support for infers in generics)
 - #157983 (Lift the same-signature restriction for `extern "tail"`)
 - #158053 (Optimize network address parser)
 - #158105 (Extract all instance shim variants into new `ShimKind` enum)
 - #158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - #158279 (Follow goto and drop when linting unreachable code)
 - #157527 (Move derive tests into their dedicated folder)
 - #157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - #157939 (Reorganize `tests/ui/issues` [8/N])
 - #157946 (Make `char::is_private_use` and `char::is_assigned` unstably public)
 - #158003 (Reorganize `tests/ui/issues` [9/N])
 - #158020 (Update mingw-w64 C toolchain)
 - #158039 (c-variadic: test that we use equality up to free lifetimes)
 - #158060 (Reorganize `tests/ui/issues` [10/N])
 - #158222 (format: ignore println newline in foreign format hints)
 - #158223 (Move target checking for #[lang] to the attribute parser)
 - #158252 (Use `cfg_select` in `std::os`)
 - #158263 (Only load the feature list once in the entire resolver)
 - #158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - #158272 (Reorganize `tests/ui/issues` [13/N])
 - #158274 (triagebot: Stop pinging myself)
 - #158282 (slice_split_once: bounds check optimization note)
 - #158300 (Improve unknown crate_type diagnostic suggestions)
 - #158304 (mailmap: update mu001999)
 - #158309 (Update `rustc-literal-escaper` version to `0.0.8`)
 - #158314 (Fix incorrect unsafe debug assertion in unchecked_div_exact)
 - #158326 (Add `io::ErrorKind::TooManyOpenFiles`)
@rust-bors
rust-bors Bot merged commit bd6b858 into rust-lang:main Jun 25, 2026
13 checks passed
@rustbot rustbot added this to the 1.98.0 milestone Jun 25, 2026
rust-timer added a commit that referenced this pull request Jun 25, 2026
Rollup merge of #157271 - cyrgani:pm-cleaning, r=petrochenkov

simplify some `proc_macro` things

Each commit should be reviewable on its own. Locally, this also resulted in some slightly better perf results.
@JonathanBrouwer

JonathanBrouwer commented Jun 25, 2026 •

Copy link
Copy Markdown
Member

@rust-timer build da9d01b
perf run for #158342

@rust-timer

This comment has been minimized.

@cyrgani
cyrgani deleted the pm-cleaning branch June 25, 2026 10:59
@rust-timer

Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (da9d01b): comparison URL.

Overall result: ✅ improvements - no action needed

Benchmarking means the PR may be perf-sensitive. It's automatically marked not fit for rolling up. Overriding is possible but disadvised: it risks changing compiler perf.

@bors rollup=never
@rustbot label: -S-waiting-on-perf -perf-regression

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.4% [-0.6%, -0.2%] 5
Improvements ✅
(secondary)
-0.2% [-0.2%, -0.2%] 1
All ❌✅ (primary) -0.4% [-0.6%, -0.2%] 5

Max RSS (memory usage)

Results (primary -1.0%, secondary -6.3%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
3.2% [3.2%, 3.2%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-5.2% [-5.2%, -5.2%] 1
Improvements ✅
(secondary)
-6.3% [-9.9%, -2.6%] 2
All ❌✅ (primary) -1.0% [-5.2%, 3.2%] 2

Cycles

Results (secondary -0.8%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.8% [-0.8%, -0.8%] 1
All ❌✅ (primary) - - 0

Binary size

This perf run didn't have relevant results for this metric.

Bootstrap: 503.101s -> 503.743s (0.13%)
Artifact size: 353.51 MiB -> 353.07 MiB (-0.13%)

pull Bot pushed a commit to xtqqczze/rust-lang-miri that referenced this pull request Jun 26, 2026
Rollup of 35 pull requests



Successful merges:

 - rust-lang/rust#158315 (`rust-analyzer` subtree update)
 - rust-lang/rust#158336 (Stop excluding `stdarch` test crates from `rust-src`)
 - rust-lang/rust#155739 (Add temporary scope to assert_eq and assert_ne)
 - rust-lang/rust#156885 (Fix misattributed type inference error span for index expressions)
 - rust-lang/rust#157271 (simplify some `proc_macro` things)
 - rust-lang/rust#157419 (move rustc_type_ir Term things to term_kind.rs)
 - rust-lang/rust#157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - rust-lang/rust#157921 (trait solver: Resolve region vars in max universe)
 - rust-lang/rust#157960 (delegation: add support for infers in generics)
 - rust-lang/rust#157983 (Lift the same-signature restriction for `extern "tail"`)
 - rust-lang/rust#158053 (Optimize network address parser)
 - rust-lang/rust#158105 (Extract all instance shim variants into new `ShimKind` enum)
 - rust-lang/rust#158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - rust-lang/rust#158279 (Follow goto and drop when linting unreachable code)
 - rust-lang/rust#157527 (Move derive tests into their dedicated folder)
 - rust-lang/rust#157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - rust-lang/rust#157939 (Reorganize `tests/ui/issues` [8/N])
 - rust-lang/rust#157946 (Make `char::is_private_use` and `char::is_assigned` unstably public)
 - rust-lang/rust#158003 (Reorganize `tests/ui/issues` [9/N])
 - rust-lang/rust#158020 (Update mingw-w64 C toolchain)
 - rust-lang/rust#158039 (c-variadic: test that we use equality up to free lifetimes)
 - rust-lang/rust#158060 (Reorganize `tests/ui/issues` [10/N])
 - rust-lang/rust#158222 (format: ignore println newline in foreign format hints)
 - rust-lang/rust#158223 (Move target checking for #[lang] to the attribute parser)
 - rust-lang/rust#158252 (Use `cfg_select` in `std::os`)
 - rust-lang/rust#158263 (Only load the feature list once in the entire resolver)
 - rust-lang/rust#158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - rust-lang/rust#158272 (Reorganize `tests/ui/issues` [13/N])
 - rust-lang/rust#158274 (triagebot: Stop pinging myself)
 - rust-lang/rust#158282 (slice_split_once: bounds check optimization note)
 - rust-lang/rust#158300 (Improve unknown crate_type diagnostic suggestions)
 - rust-lang/rust#158304 (mailmap: update mu001999)
 - rust-lang/rust#158309 (Update `rustc-literal-escaper` version to `0.0.8`)
 - rust-lang/rust#158314 (Fix incorrect unsafe debug assertion in unchecked_div_exact)
 - rust-lang/rust#158326 (Add `io::ErrorKind::TooManyOpenFiles`)
pull Bot pushed a commit to Kokoro2336/rust-analyzer that referenced this pull request Jun 29, 2026
Rollup of 35 pull requests



Successful merges:

 - rust-lang/rust#158315 (`rust-analyzer` subtree update)
 - rust-lang/rust#158336 (Stop excluding `stdarch` test crates from `rust-src`)
 - rust-lang/rust#155739 (Add temporary scope to assert_eq and assert_ne)
 - rust-lang/rust#156885 (Fix misattributed type inference error span for index expressions)
 - rust-lang/rust#157271 (simplify some `proc_macro` things)
 - rust-lang/rust#157419 (move rustc_type_ir Term things to term_kind.rs)
 - rust-lang/rust#157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - rust-lang/rust#157921 (trait solver: Resolve region vars in max universe)
 - rust-lang/rust#157960 (delegation: add support for infers in generics)
 - rust-lang/rust#157983 (Lift the same-signature restriction for `extern "tail"`)
 - rust-lang/rust#158053 (Optimize network address parser)
 - rust-lang/rust#158105 (Extract all instance shim variants into new `ShimKind` enum)
 - rust-lang/rust#158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - rust-lang/rust#158279 (Follow goto and drop when linting unreachable code)
 - rust-lang/rust#157527 (Move derive tests into their dedicated folder)
 - rust-lang/rust#157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - rust-lang/rust#157939 (Reorganize `tests/ui/issues` [8/N])
 - rust-lang/rust#157946 (Make `char::is_private_use` and `char::is_assigned` unstably public)
 - rust-lang/rust#158003 (Reorganize `tests/ui/issues` [9/N])
 - rust-lang/rust#158020 (Update mingw-w64 C toolchain)
 - rust-lang/rust#158039 (c-variadic: test that we use equality up to free lifetimes)
 - rust-lang/rust#158060 (Reorganize `tests/ui/issues` [10/N])
 - rust-lang/rust#158222 (format: ignore println newline in foreign format hints)
 - rust-lang/rust#158223 (Move target checking for #[lang] to the attribute parser)
 - rust-lang/rust#158252 (Use `cfg_select` in `std::os`)
 - rust-lang/rust#158263 (Only load the feature list once in the entire resolver)
 - rust-lang/rust#158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - rust-lang/rust#158272 (Reorganize `tests/ui/issues` [13/N])
 - rust-lang/rust#158274 (triagebot: Stop pinging myself)
 - rust-lang/rust#158282 (slice_split_once: bounds check optimization note)
 - rust-lang/rust#158300 (Improve unknown crate_type diagnostic suggestions)
 - rust-lang/rust#158304 (mailmap: update mu001999)
 - rust-lang/rust#158309 (Update `rustc-literal-escaper` version to `0.0.8`)
 - rust-lang/rust#158314 (Fix incorrect unsafe debug assertion in unchecked_div_exact)
 - rust-lang/rust#158326 (Add `io::ErrorKind::TooManyOpenFiles`)
ghaaj pushed a commit to ghaaj/polygrammar that referenced this pull request Aug 7, 2026
Rollup of 35 pull requests



Successful merges:

 - rust-lang/rust#158315 (`rust-analyzer` subtree update)
 - rust-lang/rust#158336 (Stop excluding `stdarch` test crates from `rust-src`)
 - rust-lang/rust#155739 (Add temporary scope to assert_eq and assert_ne)
 - rust-lang/rust#156885 (Fix misattributed type inference error span for index expressions)
 - rust-lang/rust#157271 (simplify some `proc_macro` things)
 - rust-lang/rust#157419 (move rustc_type_ir Term things to term_kind.rs)
 - rust-lang/rust#157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - rust-lang/rust#157921 (trait solver: Resolve region vars in max universe)
 - rust-lang/rust#157960 (delegation: add support for infers in generics)
 - rust-lang/rust#157983 (Lift the same-signature restriction for `extern "tail"`)
 - rust-lang/rust#158053 (Optimize network address parser)
 - rust-lang/rust#158105 (Extract all instance shim variants into new `ShimKind` enum)
 - rust-lang/rust#158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - rust-lang/rust#158279 (Follow goto and drop when linting unreachable code)
 - rust-lang/rust#157527 (Move derive tests into their dedicated folder)
 - rust-lang/rust#157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - rust-lang/rust#157939 (Reorganize `tests/ui/issues` [8/N])
 - rust-lang/rust#157946 (Make `char::is_private_use` and `char::is_assigned` unstably public)
 - rust-lang/rust#158003 (Reorganize `tests/ui/issues` [9/N])
 - rust-lang/rust#158020 (Update mingw-w64 C toolchain)
 - rust-lang/rust#158039 (c-variadic: test that we use equality up to free lifetimes)
 - rust-lang/rust#158060 (Reorganize `tests/ui/issues` [10/N])
 - rust-lang/rust#158222 (format: ignore println newline in foreign format hints)
 - rust-lang/rust#158223 (Move target checking for #[lang] to the attribute parser)
 - rust-lang/rust#158252 (Use `cfg_select` in `std::os`)
 - rust-lang/rust#158263 (Only load the feature list once in the entire resolver)
 - rust-lang/rust#158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - rust-lang/rust#158272 (Reorganize `tests/ui/issues` [13/N])
 - rust-lang/rust#158274 (triagebot: Stop pinging myself)
 - rust-lang/rust#158282 (slice_split_once: bounds check optimization note)
 - rust-lang/rust#158300 (Improve unknown crate_type diagnostic suggestions)
 - rust-lang/rust#158304 (mailmap: update mu001999)
 - rust-lang/rust#158309 (Update `rustc-literal-escaper` version to `0.0.8`)
 - rust-lang/rust#158314 (Fix incorrect unsafe debug assertion in unchecked_div_exact)
 - rust-lang/rust#158326 (Add `io::ErrorKind::TooManyOpenFiles`)
flip1995 pushed a commit to flip1995/rust-clippy that referenced this pull request Aug 17, 2026
Rollup of 35 pull requests



Successful merges:

 - rust-lang/rust#158315 (`rust-analyzer` subtree update)
 - rust-lang/rust#158336 (Stop excluding `stdarch` test crates from `rust-src`)
 - rust-lang/rust#155739 (Add temporary scope to assert_eq and assert_ne)
 - rust-lang/rust#156885 (Fix misattributed type inference error span for index expressions)
 - rust-lang/rust#157271 (simplify some `proc_macro` things)
 - rust-lang/rust#157419 (move rustc_type_ir Term things to term_kind.rs)
 - rust-lang/rust#157883 (Remove strict invariant node_type on hir_type during ty privacy visit)
 - rust-lang/rust#157921 (trait solver: Resolve region vars in max universe)
 - rust-lang/rust#157960 (delegation: add support for infers in generics)
 - rust-lang/rust#157983 (Lift the same-signature restriction for `extern "tail"`)
 - rust-lang/rust#158053 (Optimize network address parser)
 - rust-lang/rust#158105 (Extract all instance shim variants into new `ShimKind` enum)
 - rust-lang/rust#158207 (Resolver: local/external split of  `resolve_ident_in_module_non_globs_unadjusted` )
 - rust-lang/rust#158279 (Follow goto and drop when linting unreachable code)
 - rust-lang/rust#157527 (Move derive tests into their dedicated folder)
 - rust-lang/rust#157807 (don't ice on non-lifetime binders under `-Zassumptions-on-binders`)
 - rust-lang/rust#157939 (Reorganize `tests/ui/issues` [8/N])
 - rust-lang/rust#157946 (Make `char::is_private_use` and `char::is_assigned` unstably public)
 - rust-lang/rust#158003 (Reorganize `tests/ui/issues` [9/N])
 - rust-lang/rust#158020 (Update mingw-w64 C toolchain)
 - rust-lang/rust#158039 (c-variadic: test that we use equality up to free lifetimes)
 - rust-lang/rust#158060 (Reorganize `tests/ui/issues` [10/N])
 - rust-lang/rust#158222 (format: ignore println newline in foreign format hints)
 - rust-lang/rust#158223 (Move target checking for #[lang] to the attribute parser)
 - rust-lang/rust#158252 (Use `cfg_select` in `std::os`)
 - rust-lang/rust#158263 (Only load the feature list once in the entire resolver)
 - rust-lang/rust#158267 (FromUtf8Error::into_utf8_lossy better example and suggest use)
 - rust-lang/rust#158272 (Reorganize `tests/ui/issues` [13/N])
 - rust-lang/rust#158274 (triagebot: Stop pinging myself)
 - rust-lang/rust#158282 (slice_split_once: bounds check optimization note)
 - rust-lang/rust#158300 (Improve unknown crate_type diagnostic suggestions)
 - rust-lang/rust#158304 (mailmap: update mu001999)
 - rust-lang/rust#158309 (Update `rustc-literal-escaper` version to `0.0.8`)
 - rust-lang/rust#158314 (Fix incorrect unsafe debug assertion in unchecked_div_exact)
 - rust-lang/rust#158326 (Add `io::ErrorKind::TooManyOpenFiles`)
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. T-rust-analyzer Relevant to the rust-analyzer 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