T Compiler Meeting Agenda 2023 10 26

T-compiler Meeting Agenda 2023-10-26

Announcements

Other WG meetings (calendar link)

MCPs/FCPs

WG checkins

  • @_WG-diagnostics by @Esteban Küber and @oli (previous checkin):

    Checkin text

  • @_WG-rustc-dev-guide by @Santiago Pastorino and @Yuki Okushi|217081 (previous checkin):

    Most notable changes

    • Start a chapter about the evolving const effect system #1808
    • Document subtle implied bounds issue in RPITIT inference #1807
    • update new trait solver docs #1802
    • Clarify all the {AP,RP}IT{,IT} impl trait types #1798
    • Add deep dive document about early/late bound parameters interacting with turbofish #1794
    • explain the MIR const vs TY const situation #1793
    • Document the coverage-map and run-coverage test suites #1790
    • Add section about building an optimized version of rustc #1787
    • Add dropck documentation #1767
    • Add RPITIT documentation #1764
    • Explain more in depth what early and late bound generic parameters are #1732
    • add section for normalization with the new solver #1731
    • various fixes/improvements to Contributing chapter #1723
    • document ./x test --rustc-args option #1719

    Most notable WIPs

    • Update some outdated descriptions of coverage instrumentation #1809
    • update some of the diagnostic translations info #1711
    • rewrite bootstrapping stages #1650
    • new chapter with examples of diagnostic translation PRs #1621
    • Add back the canonicalization chapter. #1532
    • Improve documentation of MIR queries & passes #1434
    • Document inert vs active attributes #1110

Backport nominations

T-compiler stable / T-compiler beta

  • :beta: “dropck_outlives check whether generator witness needs_drop” rust#117134
    • Currently waiting on perf. results and RFC voting
    • T-compiler label was removed so is it fair to assume it’s now fully in T-types hands?
  • :beta: “Avoid unbounded O(n^2) when parsing nested type args” rust#117143
    • “When encountering code like f::<f::<f::<f::<f::<f::<f::<f::<… with unmatched closing angle brackets, add a linear check that avoids the exponential behavior of the parse recovery mechanism.”
    • Fixes #117080 and #115414 (compiler OOMs)
  • No stable nominations for T-compiler this time.

PRs S-waiting-on-team

T-compiler

Issues of Note

Short Summary

P-critical

T-compiler

  • “Code no longer compiles after -Zdrop-tracking-mir was enabled by default” rust#116242
    • being handled by @lcnr + @Santiago Pastorino in rust#117134, thanks!

T-types

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

P-high regressions

P-high beta regressions

  • “regression: parameter type may not live long enough” rust#117055
    • RFC’d by T-types (comment). Decided it’s an acceptable breaking change for a fix (downstream crates will need to update their code)
  • “regression: new resolution failures in 1.74” rust#117056
    • @lqd bisected to possibly #115834 (comment)
    • @Michael (compiler-errors) Goulet will be looking into it
  • “regression: change in async capture rules?” rust#117059
    • Duplicate of rust#116242, under T-types scrutiny (I-types-nominated)

Unassigned P-high nightly regressions

  • No unassigned P-high nightly regressions this time.

Performance logs

triage logs for 2023-10-24?

TODO

Nominated Issues

T-compiler

  • “tidy watcher” rust#114209
    • Creates a static watchlist of code in different places, checks when not in sync anymore (relevant code)
    • nominated by @cjgillot for visibility (comment) i.e. “is this potentially useful work?”
  • “Code no longer compiles after -Zdrop-tracking-mir was enabled by default” rust#116242
    • Probably handled by T-types and solved by #117134
    • anything to add? can remove I-compiler-nominated?

RFC

  • No I-compiler-nominated RFCs this time.

Oldest PRs waiting for review

T-compiler

  • “Require type_map::stub callers to supply file information” rust#104342 (last review activity: 4 months ago)
    • @Wesley Wiser rerolling this one, if it’s ok for you?
  • “Try to use approximate placeholder regions when outputting an AscribeUserType error in borrowck” rust#116097 (last review activity: about 31 days ago)
    • cc: @Wesley Wiser
  • “Stabilize target_feature_11” rust#116114 (last review activity: about 31 days ago)
    • RFC#2396
    • Unsure if the review at this stage is more for T-lang or T-compiler

Next week’s WG checkins

  • Impl Trait initiative by @oli
  • @_WG-llvm by @nagisa and @Nikita Popov

Next meetings' agenda draft: hackmd link