Skip to content

give next-solver's evaluate_const its own try_evaluate_const logic - #161418

Merged
rust-bors[bot] merged 6 commits into
rust-lang:mainfrom
zedddie:evaluate_const-stuff
Oct 29, 2026
Merged

rust-bors[bot] merged 6 commits into
rust-lang:mainfrom
zedddie:evaluate_const-stuff

Conversation

@zedddie

@zedddie zedddie commented Aug 20, 2026 •

Copy link
Copy Markdown
Contributor

View all comments

Currently evaluating type-level constants is convoluted as code is split in a lot of scattered functions across compiler which makes it hard to reason about.

This PR refactors next-solver's CTFE entry point, only commit changing behavior is 8c2dc29, by replacing evaluate_const call to normalization goal which also regressed some diagnostics.

for context see #project-const-generics > evaluate_const is scary

r? BoxyUwU

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Aug 20, 2026
@rustbot

rustbot commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

BoxyUwU is currently at their maximum review capacity.
They may take a while to respond.

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rust-bors

This comment has been minimized.

@zedddie
zedddie force-pushed the evaluate_const-stuff branch from 92b2dea to 5a6ab62 Compare August 27, 2026 09:49
@rust-log-analyzer

This comment has been minimized.

@zedddie
zedddie force-pushed the evaluate_const-stuff branch from 5a6ab62 to c40c0cd Compare August 28, 2026 20:32
@rust-log-analyzer

This comment has been minimized.

@zedddie
zedddie force-pushed the evaluate_const-stuff branch from c40c0cd to 67b25fa Compare August 29, 2026 13:52
@zedddie
zedddie force-pushed the evaluate_const-stuff branch from 67b25fa to c814483 Compare September 8, 2026 03:49
@zedddie zedddie changed the title wip try to make evaluate_const less scary give next-solver's evaluate_const its own try_evaluate_const logic Sep 8, 2026
@zedddie
zedddie marked this pull request as ready for review September 8, 2026 04:15
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Sep 8, 2026
typing_env: Self::TypingEnv,
ct: ty::AliasConst<'tcx>,
span: Self::Span,
) -> Result<Result<Self::ValTree, Self::Ty>, Option<Self::ErrorGuaranteed>> {

@BoxyUwU BoxyUwU Sep 8, 2026 •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@khyperia's right that this is a scary return type :3 I think we would ideally make this a bespoke enum and maybe even change the original const_eval_resolve_for_typeck query to return it 🤔

I think that can be a future PR tho

View changes since the review

@BoxyUwU

BoxyUwU commented Sep 8, 2026

Copy link
Copy Markdown
Member

@rustbot author

very coolio :3

@rustbot rustbot 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 Sep 8, 2026
@rustbot

rustbot commented Sep 8, 2026

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@rust-bors

This comment has been minimized.

@zedddie
zedddie force-pushed the evaluate_const-stuff branch from 2916ada to 3228bae Compare October 26, 2026 12:30
self.evaluate_added_goals_and_make_canonical_response(Certainty::AMBIGUOUS)
}
ty::ConstKind::Alias(ty::IsRigid::No, _) => {
self.normalize(param_env, ty::Unnormalized::new(ct))?;

@BoxyUwU BoxyUwU Oct 26, 2026 •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this PR so wonderfully aligns the implementation of ConstEvaluatable with my mental model of it which is just "it makes sure we always normalize const args"

View changes since the review

@BoxyUwU BoxyUwU left a comment •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wondies :3 thanks zedddie

View changes since this review

@BoxyUwU

BoxyUwU commented Oct 26, 2026

Copy link
Copy Markdown
Member

r? khyperia

for a final review, but otherwise LGTM

@rustbot rustbot assigned khyperia and unassigned BoxyUwU Oct 26, 2026
@khyperia

Copy link
Copy Markdown
Member

lovely! unforchies this duplicates so much code, very much looking forward to nuking the old solver and gce and all this duplicated stuff, otherwise this would be a bit spooky to me~

@bors r=khyperia,BoxyUwU,bit-aloo rollup

@rust-bors

rust-bors Bot commented Oct 28, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 3228bae has been approved by khyperia,BoxyUwU,bit-aloo

It is now in the queue for this repository.

@rust-bors rust-bors Bot 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 Oct 28, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Oct 28, 2026
…yperia,BoxyUwU,bit-aloo

give next-solver's `evaluate_const` its own `try_evaluate_const` logic

Currently evaluating type-level constants is convoluted as code is split in a lot of scattered functions across compiler which makes it hard to reason about.

This PR refactors next-solver's CTFE entry point, only commit changing behavior is rust-lang@8c2dc29, by replacing `evaluate_const` call to normalization goal which also regressed some diagnostics.

for context see [#project-const-generics > evaluate_const is scary](https://rust-lang.zulipchat.com/#narrow/channel/260443-project-const-generics/topic/.60evaluate_const.60.20is.20scary)

r? BoxyUwU
rust-bors Bot pushed a commit that referenced this pull request Oct 28, 2026
…uwer

Rollup of 22 pull requests

Successful merges:

 - #165032 (stdarch subtree update)
 - #165072 (Submodule update of rustc-perf)
 - #144090 (Make `IoSlice` and `IoSliceMut` methods unstably const)
 - #162342 (More stdarch regression tests)
 - #163909 (std: Test the exit behavior of `abort` and `abort_immediate`)
 - #164766 (Unstably introduce MVP edition migration lint `unmarked_unchecked_type_aliases` together with bikeshed attribute `#[rustc_unchecked_type_alias]`)
 - #164916 (CI: rfl: move job forward to Linux v7.3)
 - #164924 (Remove `TypeKind` from `rustc_codegen_ssa`)
 - #164969 (perf: avoid allocating HashSet in is_distinct check on small SwitchInts)
 - #165083 (Gate `z` inline asm template modifier)
 - #165087 (Fix flaky CI test `named_temp_file_new_creates_file`)
 - #161131 (Check associated const binding types)
 - #161418 (give next-solver's `evaluate_const` its own `try_evaluate_const` logic)
 - #164315 (make powerpc `Complex` ABI GCC-compatible)
 - #164476 (Avoid ICE on None from prepare_vtable_segments)
 - #164981 (Reflection add TypeId::name)
 - #165003 (follow up for global-alloc-reentry test)
 - #165020 (Bless mir-opt panic-abort tests)
 - #165066 (skip max_repr_align in Layout::eq_abi)
 - #165080 (Syntactically allow C-variadics in parenthesized argument lists)
 - #165081 (move `#[rustc_allow_const_fn_unstable]` attr check to attr parsing stage)
 - #165082 (Remove stability note from `rust_splat`)
rust-bors Bot pushed a commit that referenced this pull request Oct 29, 2026
…uwer

Rollup of 22 pull requests

Successful merges:

 - #165032 (stdarch subtree update)
 - #165072 (Submodule update of rustc-perf)
 - #144090 (Make `IoSlice` and `IoSliceMut` methods unstably const)
 - #162342 (More stdarch regression tests)
 - #163909 (std: Test the exit behavior of `abort` and `abort_immediate`)
 - #164766 (Unstably introduce MVP edition migration lint `unmarked_unchecked_type_aliases` together with bikeshed attribute `#[rustc_unchecked_type_alias]`)
 - #164916 (CI: rfl: move job forward to Linux v7.3)
 - #164924 (Remove `TypeKind` from `rustc_codegen_ssa`)
 - #164969 (perf: avoid allocating HashSet in is_distinct check on small SwitchInts)
 - #165083 (Gate `z` inline asm template modifier)
 - #165087 (Fix flaky CI test `named_temp_file_new_creates_file`)
 - #161131 (Check associated const binding types)
 - #161418 (give next-solver's `evaluate_const` its own `try_evaluate_const` logic)
 - #164315 (make powerpc `Complex` ABI GCC-compatible)
 - #164476 (Avoid ICE on None from prepare_vtable_segments)
 - #164981 (Reflection add TypeId::name)
 - #165003 (follow up for global-alloc-reentry test)
 - #165020 (Bless mir-opt panic-abort tests)
 - #165066 (skip max_repr_align in Layout::eq_abi)
 - #165080 (Syntactically allow C-variadics in parenthesized argument lists)
 - #165081 (move `#[rustc_allow_const_fn_unstable]` attr check to attr parsing stage)
 - #165082 (Remove stability note from `rust_splat`)
rust-bors Bot pushed a commit that referenced this pull request Oct 29, 2026
…uwer

Rollup of 22 pull requests

Successful merges:

 - #165032 (stdarch subtree update)
 - #165072 (Submodule update of rustc-perf)
 - #144090 (Make `IoSlice` and `IoSliceMut` methods unstably const)
 - #162342 (More stdarch regression tests)
 - #163909 (std: Test the exit behavior of `abort` and `abort_immediate`)
 - #164766 (Unstably introduce MVP edition migration lint `unmarked_unchecked_type_aliases` together with bikeshed attribute `#[rustc_unchecked_type_alias]`)
 - #164916 (CI: rfl: move job forward to Linux v7.3)
 - #164924 (Remove `TypeKind` from `rustc_codegen_ssa`)
 - #164969 (perf: avoid allocating HashSet in is_distinct check on small SwitchInts)
 - #165083 (Gate `z` inline asm template modifier)
 - #165087 (Fix flaky CI test `named_temp_file_new_creates_file`)
 - #161131 (Check associated const binding types)
 - #161418 (give next-solver's `evaluate_const` its own `try_evaluate_const` logic)
 - #164315 (make powerpc `Complex` ABI GCC-compatible)
 - #164476 (Avoid ICE on None from prepare_vtable_segments)
 - #164981 (Reflection add TypeId::name)
 - #165003 (follow up for global-alloc-reentry test)
 - #165020 (Bless mir-opt panic-abort tests)
 - #165066 (skip max_repr_align in Layout::eq_abi)
 - #165080 (Syntactically allow C-variadics in parenthesized argument lists)
 - #165081 (move `#[rustc_allow_const_fn_unstable]` attr check to attr parsing stage)
 - #165082 (Remove stability note from `rust_splat`)
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Oct 29, 2026
…yperia,BoxyUwU,bit-aloo

give next-solver's `evaluate_const` its own `try_evaluate_const` logic

Currently evaluating type-level constants is convoluted as code is split in a lot of scattered functions across compiler which makes it hard to reason about.

This PR refactors next-solver's CTFE entry point, only commit changing behavior is rust-lang@8c2dc29, by replacing `evaluate_const` call to normalization goal which also regressed some diagnostics.

for context see [#project-const-generics > evaluate_const is scary](https://rust-lang.zulipchat.com/#narrow/channel/260443-project-const-generics/topic/.60evaluate_const.60.20is.20scary)

r? BoxyUwU
rust-bors Bot pushed a commit that referenced this pull request Oct 29, 2026
…uwer

Rollup of 23 pull requests

Successful merges:

 - #165032 (stdarch subtree update)
 - #165072 (Submodule update of rustc-perf)
 - #144090 (Make `IoSlice` and `IoSliceMut` methods unstably const)
 - #162342 (More stdarch regression tests)
 - #163909 (std: Test the exit behavior of `abort` and `abort_immediate`)
 - #164766 (Unstably introduce MVP edition migration lint `unmarked_unchecked_type_aliases` together with bikeshed attribute `#[rustc_unchecked_type_alias]`)
 - #164916 (CI: rfl: move job forward to Linux v7.3)
 - #164924 (Remove `TypeKind` from `rustc_codegen_ssa`)
 - #164969 (perf: avoid allocating HashSet in is_distinct check on small SwitchInts)
 - #165083 (Gate `z` inline asm template modifier)
 - #165087 (Fix flaky CI test `named_temp_file_new_creates_file`)
 - #165123 (Temporarily drop macos-26 jobs)
 - #161131 (Check associated const binding types)
 - #161418 (give next-solver's `evaluate_const` its own `try_evaluate_const` logic)
 - #164315 (make powerpc `Complex` ABI GCC-compatible)
 - #164476 (Avoid ICE on None from prepare_vtable_segments)
 - #164981 (Reflection add TypeId::name)
 - #165003 (follow up for global-alloc-reentry test)
 - #165020 (Bless mir-opt panic-abort tests)
 - #165066 (skip max_repr_align in Layout::eq_abi)
 - #165080 (Syntactically allow C-variadics in parenthesized argument lists)
 - #165081 (move `#[rustc_allow_const_fn_unstable]` attr check to attr parsing stage)
 - #165082 (Remove stability note from `rust_splat`)
rust-bors Bot pushed a commit that referenced this pull request Oct 29, 2026
…uwer

Rollup of 23 pull requests

Successful merges:

 - #165032 (stdarch subtree update)
 - #165072 (Submodule update of rustc-perf)
 - #144090 (Make `IoSlice` and `IoSliceMut` methods unstably const)
 - #162342 (More stdarch regression tests)
 - #163909 (std: Test the exit behavior of `abort` and `abort_immediate`)
 - #164766 (Unstably introduce MVP edition migration lint `unmarked_unchecked_type_aliases` together with bikeshed attribute `#[rustc_unchecked_type_alias]`)
 - #164916 (CI: rfl: move job forward to Linux v7.3)
 - #164924 (Remove `TypeKind` from `rustc_codegen_ssa`)
 - #164969 (perf: avoid allocating HashSet in is_distinct check on small SwitchInts)
 - #165083 (Gate `z` inline asm template modifier)
 - #165087 (Fix flaky CI test `named_temp_file_new_creates_file`)
 - #165123 (Temporarily drop macos-26 jobs)
 - #161131 (Check associated const binding types)
 - #161418 (give next-solver's `evaluate_const` its own `try_evaluate_const` logic)
 - #164315 (make powerpc `Complex` ABI GCC-compatible)
 - #164476 (Avoid ICE on None from prepare_vtable_segments)
 - #164981 (Reflection add TypeId::name)
 - #165003 (follow up for global-alloc-reentry test)
 - #165020 (Bless mir-opt panic-abort tests)
 - #165066 (skip max_repr_align in Layout::eq_abi)
 - #165080 (Syntactically allow C-variadics in parenthesized argument lists)
 - #165081 (move `#[rustc_allow_const_fn_unstable]` attr check to attr parsing stage)
 - #165082 (Remove stability note from `rust_splat`)
rust-bors Bot pushed a commit that referenced this pull request Oct 29, 2026
…uwer

Rollup of 22 pull requests

Successful merges:

 - #165032 (stdarch subtree update)
 - #165123 (Temporarily drop macos-26 jobs)
 - #165072 (Submodule update of rustc-perf)
 - #144090 (Make `IoSlice` and `IoSliceMut` methods unstably const)
 - #162342 (More stdarch regression tests)
 - #163909 (std: Test the exit behavior of `abort` and `abort_immediate`)
 - #164766 (Unstably introduce MVP edition migration lint `unmarked_unchecked_type_aliases` together with bikeshed attribute `#[rustc_unchecked_type_alias]`)
 - #164916 (CI: rfl: move job forward to Linux v7.3)
 - #164924 (Remove `TypeKind` from `rustc_codegen_ssa`)
 - #164969 (perf: avoid allocating HashSet in is_distinct check on small SwitchInts)
 - #165083 (Gate `z` inline asm template modifier)
 - #165087 (Fix flaky CI test `named_temp_file_new_creates_file`)
 - #161131 (Check associated const binding types)
 - #161418 (give next-solver's `evaluate_const` its own `try_evaluate_const` logic)
 - #164315 (make powerpc `Complex` ABI GCC-compatible)
 - #164476 (Avoid ICE on None from prepare_vtable_segments)
 - #165003 (follow up for global-alloc-reentry test)
 - #165020 (Bless mir-opt panic-abort tests)
 - #165066 (skip max_repr_align in Layout::eq_abi)
 - #165080 (Syntactically allow C-variadics in parenthesized argument lists)
 - #165081 (move `#[rustc_allow_const_fn_unstable]` attr check to attr parsing stage)
 - #165082 (Remove stability note from `rust_splat`)
@rust-bors
rust-bors Bot merged commit f25bc4c into rust-lang:main Oct 29, 2026
14 checks passed
@rustbot rustbot added this to the 1.101.0 milestone Oct 29, 2026
rust-bors Bot pushed a commit that referenced this pull request Oct 29, 2026
Rollup merge of #161418 - zedddie:evaluate_const-stuff, r=khyperia,BoxyUwU,bit-aloo

give next-solver's `evaluate_const` its own `try_evaluate_const` logic

Currently evaluating type-level constants is convoluted as code is split in a lot of scattered functions across compiler which makes it hard to reason about.

This PR refactors next-solver's CTFE entry point, only commit changing behavior is 8c2dc29, by replacing `evaluate_const` call to normalization goal which also regressed some diagnostics.

for context see [#project-const-generics > evaluate_const is scary](https://rust-lang.zulipchat.com/#narrow/channel/260443-project-const-generics/topic/.60evaluate_const.60.20is.20scary)

r? BoxyUwU
@rust-timer

Copy link
Copy Markdown
Collaborator

Note

This PR was benchmarked as part of triage of its containing rollup: triage URL.

Finished benchmarking commit (876a209): comparison URL.

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

Our benchmarks found a performance regression caused by this PR.
This might be an actual regression, but it can also be just noise.

Next Steps:

  • If the regression was expected or you think it can be justified,
    please write a comment with sufficient written justification, and add
    @rustbot label: +perf-regression-triaged to it, to mark the regression as triaged.
  • If you think that you know of a way to resolve the regression, try to create
    a new PR with a fix for the regression.
  • If you do not understand the regression or you think that it is just noise,
    you can ask the @rust-lang/wg-compiler-performance working group for help (members of this group
    were already notified of this PR).

@rustbot label: +perf-regression
cc @rust-lang/wg-compiler-performance

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.2% [0.1%, 0.2%] 5
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.2% [-0.3%, -0.2%] 16
All ❌✅ (primary) 0.2% [0.1%, 0.2%] 5

Max RSS (memory usage)

Results (primary -2.2%)

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)
-2.2% [-2.3%, -2.2%] 2
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -2.2% [-2.3%, -2.2%] 2

Cycles

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

Binary size

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

Artifact size: 406.68 MiB -> 406.82 MiB (0.03%)

@rustbot rustbot added the perf-regression Performance regression. label Oct 30, 2026
hashcatHitman pushed a commit to hashcatHitman/miri that referenced this pull request Oct 30, 2026
…uwer

Rollup of 22 pull requests

Successful merges:

 - rust-lang/rust#165032 (stdarch subtree update)
 - rust-lang/rust#165123 (Temporarily drop macos-26 jobs)
 - rust-lang/rust#165072 (Submodule update of rustc-perf)
 - rust-lang/rust#144090 (Make `IoSlice` and `IoSliceMut` methods unstably const)
 - rust-lang/rust#162342 (More stdarch regression tests)
 - rust-lang/rust#163909 (std: Test the exit behavior of `abort` and `abort_immediate`)
 - rust-lang/rust#164766 (Unstably introduce MVP edition migration lint `unmarked_unchecked_type_aliases` together with bikeshed attribute `#[rustc_unchecked_type_alias]`)
 - rust-lang/rust#164916 (CI: rfl: move job forward to Linux v7.3)
 - rust-lang/rust#164924 (Remove `TypeKind` from `rustc_codegen_ssa`)
 - rust-lang/rust#164969 (perf: avoid allocating HashSet in is_distinct check on small SwitchInts)
 - rust-lang/rust#165083 (Gate `z` inline asm template modifier)
 - rust-lang/rust#165087 (Fix flaky CI test `named_temp_file_new_creates_file`)
 - rust-lang/rust#161131 (Check associated const binding types)
 - rust-lang/rust#161418 (give next-solver's `evaluate_const` its own `try_evaluate_const` logic)
 - rust-lang/rust#164315 (make powerpc `Complex` ABI GCC-compatible)
 - rust-lang/rust#164476 (Avoid ICE on None from prepare_vtable_segments)
 - rust-lang/rust#165003 (follow up for global-alloc-reentry test)
 - rust-lang/rust#165020 (Bless mir-opt panic-abort tests)
 - rust-lang/rust#165066 (skip max_repr_align in Layout::eq_abi)
 - rust-lang/rust#165080 (Syntactically allow C-variadics in parenthesized argument lists)
 - rust-lang/rust#165081 (move `#[rustc_allow_const_fn_unstable]` attr check to attr parsing stage)
 - rust-lang/rust#165082 (Remove stability note from `rust_splat`)
BenMac31 pushed a commit to graphide-oss/rust-analyzer that referenced this pull request Nov 2, 2026
…uwer

Rollup of 22 pull requests

Successful merges:

 - rust-lang/rust#165032 (stdarch subtree update)
 - rust-lang/rust#165123 (Temporarily drop macos-26 jobs)
 - rust-lang/rust#165072 (Submodule update of rustc-perf)
 - rust-lang/rust#144090 (Make `IoSlice` and `IoSliceMut` methods unstably const)
 - rust-lang/rust#162342 (More stdarch regression tests)
 - rust-lang/rust#163909 (std: Test the exit behavior of `abort` and `abort_immediate`)
 - rust-lang/rust#164766 (Unstably introduce MVP edition migration lint `unmarked_unchecked_type_aliases` together with bikeshed attribute `#[rustc_unchecked_type_alias]`)
 - rust-lang/rust#164916 (CI: rfl: move job forward to Linux v7.3)
 - rust-lang/rust#164924 (Remove `TypeKind` from `rustc_codegen_ssa`)
 - rust-lang/rust#164969 (perf: avoid allocating HashSet in is_distinct check on small SwitchInts)
 - rust-lang/rust#165083 (Gate `z` inline asm template modifier)
 - rust-lang/rust#165087 (Fix flaky CI test `named_temp_file_new_creates_file`)
 - rust-lang/rust#161131 (Check associated const binding types)
 - rust-lang/rust#161418 (give next-solver's `evaluate_const` its own `try_evaluate_const` logic)
 - rust-lang/rust#164315 (make powerpc `Complex` ABI GCC-compatible)
 - rust-lang/rust#164476 (Avoid ICE on None from prepare_vtable_segments)
 - rust-lang/rust#165003 (follow up for global-alloc-reentry test)
 - rust-lang/rust#165020 (Bless mir-opt panic-abort tests)
 - rust-lang/rust#165066 (skip max_repr_align in Layout::eq_abi)
 - rust-lang/rust#165080 (Syntactically allow C-variadics in parenthesized argument lists)
 - rust-lang/rust#165081 (move `#[rustc_allow_const_fn_unstable]` attr check to attr parsing stage)
 - rust-lang/rust#165082 (Remove stability note from `rust_splat`)
@JonathanBrouwer

Copy link
Copy Markdown
Member

@rustbot label: +perf-regression-triaged
Noise

@rustbot rustbot added the perf-regression-triaged The performance regression has been triaged. label Nov 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

perf-regression Performance regression. perf-regression-triaged The performance regression has been triaged. 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. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants