T Compiler Meeting Agenda 2024 12 19

T-compiler Meeting Agenda 2024-12-19

Announcements

  • Steering meeting: Rust Project Goal Review time:2024-12-20T16:00:00+01:00
  • T-compiler planning meeting time:2024-12-20T16:00:00+01:00
  • 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

  • New MCPs (take a look, see if you like them!)
    • None
  • Old MCPs (stale MCP might be closed as per MCP procedure)
    • None at this time
  • Old MCPs (not seconded, take a look)
  • Pending FCP requests (check your boxes!)
    • “sanitizers: Stabilize AddressSanitizer and LeakSanitizer for the Tier 1 targets” rust#123617
    • “const-eval: detect more pointers as definitely not-null” rust#133700
  • Things in FCP (make sure you’re good with it)
  • Accepted MCPs
  • MCPs blocked on unresolved concerns
  • Finalized FCPs (disposition merge)
    • “Add --print host-tuple to print host target tuple” rust#125579
    • “make unsupported_calling_conventions a hard error” rust#129935
    • “Fix ICE when passing DefId-creating args to legacy_const_generics.” rust#130443
    • “Stabilize WebAssembly multivalue, reference-types, and tail-call target features” rust#131080
    • “Lint on combining #[no_mangle] and #[export_name]rust#131558
  • Other teams finalized FCPs
    • “Add lint against function pointer comparisons” rust#118833
    • “Fixup Windows verbatim paths when used with the include! macro” rust#125205
    • “Allow dropping dyn Trait principal” rust#126660
    • “atomics: allow atomic and non-atomic reads to race” rust#128778
    • “Lint against getting pointers from immediately dropped temporaries” rust#128985
    • “Do not consider match/let/ref of place that evaluates to ! to diverge, disallow coercions from them too” rust#129392
    • “Make deprecated_cfg_attr_crate_type_name a hard error” rust#129670
    • “Stabilize expr_2021 fragment specifier in all editions” rust#129972
    • “Check elaborated projections from dyn don’t mention unconstrained late bound lifetimes” rust#130367
    • “Finish stabilization of result_ffi_guaranteesrust#130628
    • “Stabilize const ptr::write* and mem::replacerust#130954
    • “Stabilize s390x inline assembly” rust#131258
    • “Stabilize Arm64EC inline assembly” rust#131781
    • “Always display first line of impl blocks even when collapsed” rust#132155
    • “rework winnowing to sensibly handle global where-bounds” rust#132325
    • “mark is_val_statically_known intrinsic as stably const-callable” rust#132449
    • “Fix ICE when multiple supertrait substitutions need assoc but only one is provided” rust#133392

Backport nominations

T-compiler beta / T-compiler stable

  • :beta:“Make sure we handle backwards_incompatible_lint drops appropriately in drop elaboration” rust#134486
    • Authored and nominated by compiler-errors (will be reviewed by Niko)
    • Fixes a P-critical unsoundness originated in #131326 (doubly freeing memory if Rust 2024 edition is enabled)
    • Comment from @_ehuss:

      This approach of using MIR to implement the lint means that it does not work with cargo fix --edition, because cargo check does not run far enough to reach this. The only way for a user to see this is if they manually enable the lint and run a full build. I’m concerned that almost nobody will do that, making this ineffective.

    • Nominated since #131326 (the patch the issue originates from) already landed on beta
  • 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

  • “Double Drop with #![deny(rust_2024_compatibility)]” rust#134482
    • Should be fixed by beta-backport nominated #134486

T-types

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

P-high regressions

P-high beta regressions

  • None

Unassigned P-high nightly regressions

  • No unassigned P-high nightly regressions this time.

Performance logs

None this week

Nominated Issues

T-compiler

  • “Apple: Re-implement SDK discovery instead of using xcrunrust#131433
    • @_pnkfelix nominated for discussion (comment), mentions concerns about maintenaince
    • PR adds some logic to find the Apple SDK when compiling rustc (reasoning at comment, should improve developer experience)
    • Part of #129432, work on the Apple targets

RFC

  • No I-compiler-nominated RFCs this time.

Oldest PRs waiting for review

T-compiler

  • “add error message for c# style named arguments” rust#118733 (last review activity: 11 months ago)
    • cc @Esteban Küber
  • “Silence errors in expressions caused by bare traits in paths in 2021 edition” rust#125784 (last review activity: 6 months ago)
    • cc: @Esteban Küber for a rebase then cc: @_León Orell Liehr (fmease)
  • “[Coverage][MCDC] Do not initialize mcdc parameters for instances containing no mcdc statements” rust#129989
    • cc: @Zalathar
  • “JumpThreading: fix bitwise not on non-booleans” rust#131203 (last review activity: about 44 days ago)
    • cc @cjgillot
  • “[macro_metavar_expr_concat] Fix #128346” rust#131522 (last review activity: about 45 days ago)
    • cc: @yukang