T Compiler Meeting Agenda 2024 08 29

T-compiler Meeting Agenda 2024-08-29

Announcements

  • Next week stable Rust 1.81 is out
  • 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

  • None

MCPs/FCPs

  • New MCPs (take a look, see if you like them!)
    • No new proposals this time.
  • Old MCPs (stale MCP might be closed as per MCP procedure)
    • None at this time
  • Old MCPs (not seconded, take a look)
    • “Target families for executable format” compiler-team#716 (Zulip) (last review activity: 6 months ago)
    • “Partial compilation using MIR-only rlibs” compiler-team#738 (Zulip) (last review activity: 4 months ago)
    • “Add Hotpatch flag” compiler-team#745 (Zulip) (last review activity: 3 months ago)
    • “Don’t track --emit= options as part of crate SVH” compiler-team#769 (Zulip) (last review activity: about 13 days ago)
    • “Opt-in flag for absolute paths in diagnostics” compiler-team#770 (Zulip) (last review activity: about 13 days ago)
  • Pending FCP requests (check your boxes!)
    • “sanitizers: Stabilize AddressSanitizer and LeakSanitizer for the Tier 1 targets” rust#123617
    • “Add --print host-triple to print host target triple” rust#125579
  • Things in FCP (make sure you’re good with it)
    • --hint-msrv=version option so the compiler can take MSRV into account when linting” compiler-team#772 (Zulip)
    • “Don’t warn empty branches unreachable for now” rust#129103
  • Accepted MCPs
  • MCPs blocked on unresolved concerns
  • Finalized FCPs (disposition merge)
    • No new finished FCP (disposition merge) this time.
  • Other teams finalized FCPs
    • “stabilize const_fn_floating_point_arithmetic” rust#128596
    • “Lint at deny-by-default against references to static mutrust#128794
    • “Non-exhaustive structs may be empty” rust#128934

WG checkins

None

Backport nominations

T-compiler beta / T-compiler stable

  • :beta:“Emit specific message for time<=0.3.35” rust#129343
    • Authored by estebank
    • Discussed extensively last week, it’s a ad-hoc diag message to hint at the recent libs breakage when using (or pulling) the time crate
    • Note: this patch injects a ticking timebomb that will trigger a compile error on 1.89 when we - hopefully - assume the ecosystem has upgraded the dependency on that crate
  • :beta:“Use a reduced recursion limit in the MIR inliner’s cycle breaker” rust#129714
    • Authored by saethlin
    • fixes a p-high regression from a recent crater run (though a bit flaky to reproduce)
    • as @Ben Kimock (Saethlin) points out, “this probably papers over #128887, but primarily I’m opening this PR because multiple compiler people have thought about making this change which probably means it’s a good idea.”
  • No stable nominations for T-compiler this time.

T-types stable / T-types beta

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

PRs S-waiting-on-team

T-compiler

Issues of Note

Short Summary

P-critical

T-compiler

  • “regression: adding a def’n for node-id NodeId(597) and def kind AnonConst but a previous def’n exists” rust#128901
    • Solved by #128760 (included in #129033, merged straight in beta)

T-types

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

P-high regressions

P-high beta regressions

  • “regression: overflow evaluating the requirement” rust#128887
    • solved by #129714 (beta backport above)

Unassigned P-high nightly regressions

  • No unassigned P-high nightly regressions this time.

Performance logs

Will be posted later today

Nominated Issues

T-compiler

  • “Remove HasLocalDecls.” rust#129681
    • T-compiler is called to judge if this a useful change (a counter-argument is expressed f.e. by @Michael (compiler-errors) Goulet in comment)
  • “Tracking issue for release notes of #128034: exhaustiveness: Explain why a given pattern is considered unreachable” rust#129574
  • “Tracking issue for release notes of #125834: treat &raw (const|mut) UNSAFE_STATIC implied deref as safe” rust#129578
    • These new tracking issues are automatically created by a new internal tool geared at improving the release notes workflow.
    • I am unsure though if the I-compiler-nominated is really useful here at this time (see @_apiraino comments here).
    • How this could work: PR author adds some verbiage for the release notes + blog post. Around release date T-* can review if the release notes of changes relevant to them are complete and clear.
    • Opinions?

RFC

  • No I-compiler-nominated RFCs this time.

Oldest PRs waiting for review

T-compiler

  • “Consistently use the highest bit of vector masks when converting to i1 vectors” rust#104693
    • cc: @Wesley Wiser (though not 100% sure)
  • “add error message for c# style named arguments” rust#118733 (last review activity: 8 months ago)
    • 29-08-2024 cc: @Esteban Küber
  • “Apply dllimport in ThinLTO for -Z dylib-lto” rust#122790
    • cc @Wesley Wiser
  • “Issue 83060 fix” rust#119798 (last review activity: 4 months ago)
    • cc @Wesley Wiser

Next week’s WG checkins

None

Next meetings' agenda draft: hackmd link