owned this note
owned this note
Published
Linked with GitHub
---
tags: weekly, rustc
---
# T-compiler Meeting Agenda 2020-07-16
[Tracking Issue](https://github.com/rust-lang/rust/issues/54818)
## Announcements
- Rust 1.45 is being released today! :tada::tada::tada:
- New MCPs (take a look, see if you like them!)
- No new proposals this time.
- Old MCPs (not seconded, take a look)
- "Integration of the Cranelift backend with rustc" [compiler-team#270](https://github.com/rust-lang/compiler-team/issues/270)
- "Decentralize queries" [compiler-team#277](https://github.com/rust-lang/compiler-team/issues/277)
- "Move Rust provided objects, libraries and binaries meant for self-contained linkage to separate directory" [compiler-team#310](https://github.com/rust-lang/compiler-team/issues/310)
- "Add future-incompat entries to json diagnostic output" [compiler-team#315](https://github.com/rust-lang/compiler-team/issues/315)
- "MCP: Reorganize the rust-lang/rust repo directory structure" [compiler-team#316](https://github.com/rust-lang/compiler-team/issues/316)
- Pending FCP requests (check your boxes!)
- No pending FCP requests this time.
- Things in FCP (make sure you're good with it)
- "Change `ty::Const` to an integer tree representation" [compiler-team#323](https://github.com/rust-lang/compiler-team/issues/323)
- "Infer hidden types without replacing with an inference variable" [compiler-team#325](https://github.com/rust-lang/compiler-team/issues/325)
- "Improve defaults in x.py" [compiler-team#326](https://github.com/rust-lang/compiler-team/issues/326)
- "Rework rustc_serialize" [compiler-team#329](https://github.com/rust-lang/compiler-team/issues/329)
- "Use `tracing` instead of `log`" [compiler-team#331](https://github.com/rust-lang/compiler-team/issues/331)
- "Stabilize control-flow-guard codegen option" [rust#73893](https://github.com/rust-lang/rust/pull/73893)
- Accepted MCPs
- "--extern-location to specify where an --extern dependency is defined" [compiler-team#303](https://github.com/rust-lang/compiler-team/issues/303)
- Finalized FCPs
- "Stabilize const_type_id feature" [rust#72488](https://github.com/rust-lang/rust/pull/72488)
- Should we close #compiler channel on Discord?
- This was briefly discussed on [Zulip](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/discord.20channel)
### WG checkins
@*WG-rustc-dev-guide* checkin by @**mark-i-m** and @**Santiago Pastorino**:
> [68 merged PRs!](https://github.com/rust-lang/rustc-dev-guide/pulls?page=1&q=closed%3A%3E%3D2020-05-28) In fact, there was so much stuff, that we ran out of time to curate it... here is a prefix of the list of PRs (heavily biased towards earlier PRs); there are so many people that deserve credit:
>- Aaron Hill
>- Andy Russell
>- Bastian Kauschke
>- Drew Youngwerth
>- Eric Huss
>- Florian Gilcher
>- Ivan Veselov
>- Joshua Nelson
>- mark-i-m
>- Matt Kraai
>- Nadrieril
>- Niko Matsakis
>- pierwill
>- Ralf Jung
>- Santiago Pastorino
>- Takayuki Nakata
>- ThePuzzlemaker
>- Tomasz Miąsko
>- Tom Eccles
>- Yuki Okushi
>
>Accomplished:
>
>- Tons of new content:
> - [Getting Started Guide](https://github.com/rust-lang/rustc-dev-guide/pull/731) + many improvements
> - Type-system rustc-dev-guide#697
> - Diagnostics rustc-dev-guide#716
> - Building and testing `rustc` rustc-dev-guide#723, rustc-dev-guide#727, rustc-dev-guide#728, rustc-dev-guide#729, and many more
> - Writing tests rustc-dev-guide#724, rustc-dev-guide#725, rustc-dev-guide#749
>- Updates to various current content:
> - [Lints](https://github.com/rust-lang/rustc-dev-guide/pull/713)
> - [`TyKind::Error`](https://github.com/rust-lang/rustc-dev-guide/pull/715)
> - [Coding Conventions](https://github.com/rust-lang/rustc-dev-guide/pull/735)
> - Notification Groups rustc-dev-guide#739, rustc-dev-guide#740, and more
>- Some reorganization:
> - rustc-dev-guide#753, rustc-dev-guide#752, rustc-dev-guide#763, rustc-dev-guide#764, rustc-dev-guide#767, rustc-dev-guide#768, rustc-dev-guide#773
@*WG-llvm* checkin by @**nagisa**:
> * As mentioned above, there’s LLVM11 upgrade on the horizon. The usual caveats etc apply. Potential regressions, improvements in compiler code output etc.
>* In similar spirit been seeing an increased flow of issue reports about sub-optimal code generation, thuogh that's a very subjective evaluation;
>* There's an ongoing effort by a community member to enable building targeting apple silicon with "fat" libraries. There are some complication in enabling this:
* Upstream LLVM support for this is _dubious_ both now and possibly LLVM 11.
* What kind of tier are we hoping to have for this target at launch time? I’d say just let it go through the usual process, but I can see logic in idea of having T2/T1 support at launch time.
## Beta-nominations
[T-compiler](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Abeta-nominated+-label%3Abeta-accepted+label%3AT-compiler)
* lint: use `transparent_newtype_field` to avoid ICE [rust#74340](https://github.com/rust-lang/rust/pull/74340)
* fix for Nightly ICEs trying to normalize during a cast [rust#73747](https://github.com/rust-lang/rust/issues/73747)
* authored by @davidtwco and r+'ed by @pnkfelix
* (just barely missed the promotion from master to beta)
* pnkfelix would be fine with letting this simmer until next week.
[libs-impl](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Abeta-nominated+-label%3Abeta-accepted+label%3Alibs-impl)
- No beta nominations this time.
[T-rustdoc](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Abeta-nominated+-label%3Abeta-accepted+label%3AT-rustdoc)
- No beta nominations this time.
:back: / :shrug: / :hand:
## Stable-nominations
[T-compiler](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Astable-nominated+-label%3Astable-accepted+label%3AT-compiler)
- No stable nominations this time.
[libs-impl](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Astable-nominated+-label%3Astable-accepted+label%3Alibs-impl)
- No stable nominations this time.
[T-rustdoc](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Astable-nominated+-label%3Astable-accepted+label%3AT-rustdoc)
- No stable nominations this time.
:back: / :shrug: / :hand:
## PRs S-waiting-on-team
[T-compiler](https://github.com/rust-lang/rust/pulls?utf8=%E2%9C%93&q=is%3Aopen+label%3AS-waiting-on-team+label%3AT-compiler)
- No PRs waiting on T-compiler this time.
[libs-impl](https://github.com/rust-lang/rust/pulls?utf8=%E2%9C%93&q=is%3Aopen+label%3AS-waiting-on-team+label%3Alibs-impl)
- No PRs waiting on libs-impl this time.
## Issues of Note
### Short Summary
- [0 T-compiler P-critical issues](https://github.com/rust-lang/rust/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3AT-compiler+label%3AP-critical+)
- [0 of those are unassigned](https://github.com/rust-lang/rust/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3AT-compiler+label%3AP-critical+no%3Aassignee)
- [49 T-compiler P-high issues](https://github.com/rust-lang/rust/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3AT-compiler+label%3AP-high+)
- [27 of those are unassigned](https://github.com/rust-lang/rust/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3AT-compiler+label%3AP-high+no%3Aassignee)
- [0 P-critical, 0 P-high, 3 P-medium, 1 P-low regression-from-stable-to-beta](https://github.com/rust-lang/rust/labels/regression-from-stable-to-beta)
- [0 P-critical, 2 P-high, 6 P-medium, 1 P-low regression-from-stable-to-nightly](https://github.com/rust-lang/rust/labels/regression-from-stable-to-nightly)
- [0 P-critical, 14 P-high, 46 P-medium, 4 P-low regression-from-stable-to-stable](https://github.com/rust-lang/rust/labels/regression-from-stable-to-stable)
### P-critical
[T-compiler](https://github.com/rust-lang/rust/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3AP-critical+label%3AT-compiler)
- No P-critical issues for T-compiler this time.
[libs-impl](https://github.com/rust-lang/rust/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3AP-critical+label%3Alibs-impl)
- No P-critical issues for libs-impl this time.
[T-rustdoc](https://github.com/rust-lang/rust/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3AP-critical+label%3AT-rustdoc)
- No P-critical issues for T-rustdoc this time.
### Unassigned P-high regressions
[Beta regressions](https://github.com/rust-lang/rust/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3Aregression-from-stable-to-beta+P-high+no%3Aassignee)
- No unassigned P-high beta regressions this time.
[Nightly regressions](https://github.com/rust-lang/rust/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3Aregression-from-stable-to-nightly+P-high+no%3Aassignee)
- No unassigned P-high nightly regressions this time.
## Performance logs
[Triage done by njn](https://github.com/rust-lang/rustc-perf/tree/master/triage#triage-logs).
Revision range: [0c03aee8b81185d65b5821518661c30ecdb42de5..9d09331e00b02f81c714b0c41ce3a38380dd36a2](https://perf.rust-lang.org/?start=0c03aee8b81185d65b5821518661c30ecdb42de5&end=9d09331e00b02f81c714b0c41ce3a38380dd36a2&absolute=false&stat=instructions%3Au).
12 revisions checked. Zero regressions, one improvement.
Regressions
- None!
Improvements
- [Shrink ParamEnv to 16 bytes #73978](https://github.com/rust-lang/rust/pull/73978#issuecomment-657877594)
([instructions](https://perf.rust-lang.org/compare.html?start=0c03aee8b81185d65b5821518661c30ecdb42de5&end=8981dbbc36f1575b0a417b6849767bde29e7c6b4&stat=instructions:u)):
Up to 1.8% wins on a few benchmarks.
## Nominated Issues
[T-compiler](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AI-nominated+label%3AT-compiler)
- "Polymorphization" [rust#69749](https://github.com/rust-lang/rust/pull/69749)
- This was nominated for discussion about what the next steps are.
- [See @wesleywiser's comment](https://github.com/rust-lang/rust/pull/69749#issuecomment-658871287) for a summary of the current state and questions.
- "mv std libs to std/" [rust#73265](https://github.com/rust-lang/rust/pull/73265)
- This was nominated again for discussion about what the next steps are.
- "I propose to wait one week and nominate the issue one (hopefully) last time"
- [See @mark-i-m's comment](https://github.com/rust-lang/rust/pull/73265#issuecomment-657075856) for a summary of the current proposal.
- "[WIP] Upgrade to LLVM 11" [rust#73526](https://github.com/rust-lang/rust/pull/73526)
- [Nominated](https://github.com/rust-lang/rust/pull/73526#issuecomment-658943064) to double check whether we're okay with landing this prior to the final LLVM 11 release.
- [See @nikic's comment](https://github.com/rust-lang/rust/pull/73526#issuecomment-658943064) ...
- "The last perf run had large compile-time improvements for opt builds and some minor regressions for debug builds."
- [Perf shows some nice improvements](https://perf.rust-lang.org/compare.html?start=7e11379f3b4c376fbb9a6c4d44f3286ccc28d149&end=adff1be71c9e1b3abb95b761d9caa41e4e1b9096)
- "Compiler doesn't terminate with --release" [rust#74384](https://github.com/rust-lang/rust/issues/74384)
- Compiler doesn't "terminate" when nesting 3 arrays.
- "It seems like this is an LLVM bug."
[libs-impl](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AI-nominated+label%3Alibs-impl)
- No nominated issues for libs-impl this time.