T Compiler Meeting Agenda 2025 12 11

T-compiler Meeting Agenda 2025-12-11

Announcements

  • Today Rust 1.92 is out, WIP blog post
  • Reminder: if you see a PR/issue that seems like there might be legal implications due to copyright/IP/etc, please let us know (or at least message @davidtwco or @Wesley Wiser so we can pass it along).

Other WG meetings

MCPs/FCPs

Backport nominations

T-compiler beta / T-compiler stable

  • :beta: “attempt to fix unreachable code regression” rust#149664
    • Authored by Kivooeo
    • (FIY) Voting Zulip topic was in favor but didn’t make it to the release cut

We have 2 more beta-1.92 regressions open (link), but:

T-types beta / T-types stable

  • No beta nominations for T-types this time.
  • No stable nominations for T-types this time.

PRs S-waiting-on-t-compiler

T-compiler

Issues of Note

Short Summary

P-critical

T-compiler

  • No P-critical issues for T-compiler this time.

T-types

  • No P-critical issues for T-types this time.

P-high regressions

P-high beta regressions

  • No P-high beta regressions this time.

Unassigned P-high nightly regressions

  • No unassigned P-high nightly regressions this time.

Performance logs

2025-12-08 Triage Log

Overall result is negative this week, but both main regressions are on track to be addressed. No outstanding changes otherwise.

Triage done by @panstromek. Revision range: eca9d93f..55495234

Summary:

(instructions:u)meanrangecount
Regressions (primary)0.4%[0.1%, 4.3%]111
Regressions (secondary)0.4%[0.1%, 2.2%]97
Improvements (primary)-1.0%[-1.3%, -0.7%]2
Improvements (secondary)-0.2%[-0.3%, -0.0%]9
All (primary)0.4%[-1.3%, 4.3%]113

3 Regressions, 2 Improvements, 3 Mixed; 3 of them in rollups 30 artifact comparisons made in total

Regressions

Rollup of 12 pull requests #149631 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)--0
Regressions (secondary)7.4%[0.1%, 25.0%]10
Improvements (primary)--0
Improvements (secondary)--0
All (primary)--0

Caused by https://github.com/rust-lang/rust/pull/149147, reverted in https://github.com/rust-lang/rust/pull/149657.

Add #[inline] to Layout::is_size_align_valid #149690 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)1.2%[0.1%, 4.3%]4
Regressions (secondary)1.0%[0.2%, 2.2%]8
Improvements (primary)--0
Improvements (secondary)--0
All (primary)1.2%[0.1%, 4.3%]4

Little regression matches pre-merge run, justified by https://github.com/rust-lang/rust/pull/149690#issuecomment-3620152210

early return on duplicate span lowerings #149060 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)0.3%[0.1%, 0.8%]70
Regressions (secondary)0.4%[0.0%, 0.8%]73
Improvements (primary)--0
Improvements (secondary)--0
All (primary)0.3%[0.1%, 0.8%]70

Regression is unexpected, results don’t match pre-merge results. Reverted in https://github.com/rust-lang/rust/pull/149757.

Improvements

misc coercion cleanups and handle safety correctly #148602 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)--0
Regressions (secondary)--0
Improvements (primary)--0
Improvements (secondary)-0.2%[-0.5%, -0.1%]13
All (primary)--0

Revert “Rollup merge of #149147 - chenyukang:yukang-fix-unused_assignments-macro-gen-147648, r=JonathanBrouwer” #149657 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)--0
Regressions (secondary)--0
Improvements (primary)--0
Improvements (secondary)-7.0%[-20.0%, -0.6%]9
All (primary)--0

Mixed

Rollup of 5 pull requests #149560 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)0.1%[0.1%, 0.1%]1
Regressions (secondary)--0
Improvements (primary)-0.4%[-0.6%, -0.1%]2
Improvements (secondary)--0
All (primary)-0.2%[-0.6%, 0.1%]3

I supect the doc regression is mostly noise. Either way, I don’t think it’s worth more investigation, it’s just a doc and it’s small.

Rollup of 9 pull requests #149646 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)0.2%[0.1%, 0.3%]30
Regressions (secondary)0.2%[0.1%, 0.4%]7
Improvements (primary)-0.3%[-0.4%, -0.2%]2
Improvements (secondary)-0.1%[-0.1%, -0.1%]6
All (primary)0.2%[-0.4%, 0.3%]32

Based on the results above, the regression seems to be caused by https://github.com/rust-lang/rust/pull/149524. After looking through other PRs, I don’t think there’s any other candidate. I left a comment on the PR. Author will investigate.

TypeRelating emit WellFormed, not generalize #148823 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)--0
Regressions (secondary)0.2%[0.0%, 0.5%]14
Improvements (primary)-1.3%[-1.3%, -1.3%]1
Improvements (secondary)-0.2%[-0.3%, -0.1%]8
All (primary)-1.3%[-1.3%, -1.3%]1

post-merge results look worse on secondary benchmarks, compared to pre-merge run. The final result still is positive, but only because of 1 primary bechmark. I looked through the secondary regressions and most of them returned back to previous state in next PR, so this is probably noise.

Nominated Issues

T-compiler

  • No I-compiler-nominated issues this time.

RFC

  • No I-compiler-nominated RFCs this time.

Oldest PRs waiting for review

T-compiler

  • “Remove fewer Storage calls in CopyProp and GVN” rust#142531 (last review activity: 2 months ago)
    • cc @cjgillot (or maybe reroll? Who has context about GVN mir opts? Was partially approved (comment))
  • “Impls and impl items inherit lint levels of the corresponding traits and trait items” rust#144113 (last review activity: 2 months ago)
    • cc @cjgillot (T-lang FCP’d and reviewed the changes)
  • “Don’t evaluate the sanitizer attribute if no sanitizer is enabled” rust#145679 (last review activity: 3 months ago)
    • cc: @Ramon de C Valle
  • “RDR: avoid rebuilding dependent crates after comment changes” rust#143249 (last review activity: about 58 days ago)
    • cc @bjorn3
  • “Remove FromResidual param default” rust#147160 (last review activity: 2 months ago)
    • cc @scottmcm, plus maybe a look also from Miri folks (link) cc @RalfJ @lcnr

Next meetings’ agenda draft: hackmd link