T-compiler Meeting Agenda 2023-10-26
Announcements
- Compiler Team Steering Meeting - P-high review at time:2023-10-27T10:00:00-04:00
- Types team meeting: roadmap draft review [jackh726] at time:2023-10-30T10:00:00-04: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 (calendar link)
- AFIT/RPITIT Impl Triage at time:2023-10-26T16:00:00-04:00
- [Types] Rotating new solver / formality / polonius deep dive at time:2023-10-30T11:00:00-04:00
MCPs/FCPs
- New MCPs (take a look, see if you like them!)
- None at this time
- Pending FCP requests (check your boxes!)
- “Add
$message_type
field to distinguish json diagnostic outputs” compiler-team#673 - “Add a new
--build-id
flag to rustc” compiler-team#635 (Zulip) - “Retire the mailing list and make all decisions on zulip” compiler-team#649 (Zulip)
- “Stabilize
--json=unused-externs(-silent)
” compiler-team#674 (Zulip) - “Tracking issue for dyn upcasting coercion” rust#65991
- “Support overriding
warnings
level for a specific lint via command line” rust#113307 - “Update Windows platform support” rust#115141
- “make soft_unstable show up in future breakage reports” rust#116274
- “Add
- Things in FCP (make sure you’re good with it)
- “Add a stable flag to enable/disable codegen UB checks” compiler-team#625 (Zulip)
- “Report all lints, even if other errors already occurred.” compiler-team#633 (Zulip)
- “Match the behavior of
strip
andsplit-debuginfo
across platforms” compiler-team#669 (Zulip) - “Add infrastructure to “compute the ABI of a Rust type, described as a C type”” compiler-team#672 (Zulip)
- “Stabilize
--json=unused-externs(-silent)
” compiler-team#674 (Zulip) - “Have
rustc
produce a local log of execution metrics” compiler-team#679 (Zulip) - “Remove support for compiler plugins.” rust#116412
- Accepted MCPs
- “Enable Parallel Rustc Front End In Nightly Builds” compiler-team#681 (Zulip)
- “Rename generator to coroutine” compiler-team#682 (Zulip)
- Finalized FCPs (disposition merge)
- “rustdoc: align stability badge to baseline instead of bottom” rust#105666
- “document ABI compatibility” rust#115476
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
andrun-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
OOM
s)
- No stable nominations for
T-compiler
this time.
PRs S-waiting-on-team
- Other issues in progress or waiting on other teams
Issues of Note
Short Summary
- 1 T-compiler P-critical issues
- 65 T-compiler P-high issues
- 1 P-critical, 3 P-high, 2 P-medium, 1 P-low regression-from-stable-to-beta
- 0 P-critical, 1 P-high, 3 P-medium, 2 P-low regression-from-stable-to-nightly
- 0 P-critical, 41 P-high, 100 P-medium, 19 P-low regression-from-stable-to-stable
P-critical
- “Code no longer compiles after -Zdrop-tracking-mir was enabled by default” rust#116242
- being handled by @lcnr + @Santiago Pastorino in rust#117134, thanks!
- No
P-critical
issues forT-types
this time.
P-high 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
)
- Duplicate of rust#116242, under T-types scrutiny (
Unassigned P-high nightly regressions
- No unassigned
P-high
nightly regressions this time.
Performance logs
TODO
Nominated Issues
- “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
?
- No I-compiler-nominated RFCs this time.
Oldest PRs waiting for review
- “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