---
title: Planning meeting 2021-07-07
tags: planning-meeting
---
# T-lang planning meeting agenda
* Meeting date: 2021-07-07
## Attendance
* Team members: nikomatsakis, Josh, Felix
* Others: simulacrum
## Meeting roles
* Action item scribe: simulacrum
* Note-taker:
## Announcements and other updates
(Anyone can feel free to add things here, tag it with your username.)
- nikomatsakis: Josh and I plan to write up the new "initiative" process that we discussed as a series of edits to our lang-team web page. I am also going to make various proposals around the current set of active initiatives as we go.
## Proposed meetings
- "Structural equality" [lang-team#94](https://github.com/rust-lang/lang-team/issues/94)
- "Never allow unwinding from Drop impls" [lang-team#97](https://github.com/rust-lang/lang-team/issues/97)
- "Lang team process, part 2" [lang-team#104](https://github.com/rust-lang/lang-team/issues/104)
* July 14 -- no meeting (also, Felix has a conflict)
* July 21 -- Lang team process, part 2
* July 28 -- Structural equality (depending on Oli's scheduling constraints; may move to the 27th)
* August 4 -- next planning meeting, Niko on PTO
* August 11 -- Niko on PTO
* Action item: update the issues and announce the meetings
### Notes
* For lang-team#97:
* For this meeting to be a success, we would need some exploration of what the alternatives are and what kinds of backwards compatibility concerns exist in the wild.
* Are people relying on the current behavior?
* Can we estimate how many latent bugs exist *because of* the current behavior?
* Anecdotally: Rayon for example found it too hard to manage and just aborts.
* Libs team has found this painful in the std library.
* Josh to summarize.
* For lang-team#94:
* oli can prepare the write-up, nikomatsakis is response to ensure it gets done
* Problem is how to deal with matching on constants, const generic equality, etc in a coherent way
* Scheduled to July 21
* For lang-team#104:
## Active initiatives
* [Planning board](https://github.com/rust-lang/lang-team/projects/2)
* Umbrella initiatives:
*
### "const-evaluation" lang-team#22
**Link:** https://github.com/rust-lang/lang-team/issues/22
* [Comment](https://github.com/rust-lang/lang-team/issues/22#issuecomment-873364101)
* Inline constants [#76001](https://github.com/rust-lang/rust/issues/76001) have not had any substantive progress
* This is a blocker for const support in inline assembly
* What does it take to make forward progress here?
* What work has been done here?
* Action item: follow up on the status and discuss next steps (nikomatsakis)
### "async foundations" lang-team#33
**Link:** https://github.com/rust-lang/lang-team/issues/33
* [Comment](https://github.com/rust-lang/lang-team/issues/33#issuecomment-875752762)
### "const-generics" lang-team#51
**Link:** https://github.com/rust-lang/lang-team/issues/51
* [Update](https://github.com/rust-lang/lang-team/issues/51#issuecomment-874798421)
* [Vision doc in progress here](https://rust-lang.github.io/project-const-generics/)
* Upcoming design meeting:
* Structural equality
### "project-safe-transmute" lang-team#21
**Link:** https://github.com/rust-lang/lang-team/issues/21
* [Update](https://github.com/rust-lang/lang-team/issues/21#issuecomment-870514068)
### "Deref patterns" lang-team#88
**Link:** https://github.com/rust-lang/lang-team/issues/88
* [Update](https://github.com/rust-lang/lang-team/issues/88#issuecomment-874359588)
* nrc recently opened a bunch of threads and seems to have an interest
### let-else statements
**Link:** https://github.com/rust-lang/rfcs/pull/3137
* Discussed in triage yesterday
### macro metavariable
**Link:** https://github.com/rust-lang/rust/issues/83527
* [Update](https://github.com/rust-lang/rust/issues/83527#issuecomment-870392547)
* Ping author regarding "vacation period"
### "RFC 2229" lang-team#50
* [Update](https://github.com/rust-lang/lang-team/issues/50#issuecomment-874650087)
* [Closure size, after optimization](https://docs.google.com/spreadsheets/d/1zOOeTFz4AvprEVsiPNFlkt4x_93N7WQe2uv2pX3BzXQ/edit#gid=545238654)
* [Closure size, before optimization](https://docs.google.com/spreadsheets/d/1U5vaXu490wn8Ae1LB1mSfoP_EZrGRHbUU6ADbeY8bn4/edit#gid=545238654)
* Maybe automate the capturing of data instead, rather than asking people to submit
* Then we can use crater instead
### "never type stabilization" lang-team#60
**Link:** https://github.com/rust-lang/lang-team/issues/60
* [Update (1/2)](https://github.com/rust-lang/lang-team/issues/60#issuecomment-870126162)
* [Update (2/2)](https://github.com/rust-lang/lang-team/issues/60#issuecomment-874351239)
* Plan to produce some sort of write-up about what we do
* One question is to what extent we want to document the algorithm
* Also, where? There isn't much to fit it into
* Action item: Mark to kickoff a conversation about the documentation aspect
### "ffi-unwind" lang-team#19
**Link:** https://github.com/rust-lang/lang-team/issues/19
* [Update](https://github.com/rust-lang/lang-team/issues/19#issuecomment-875772875)
### Tracking Issue for denying trailing semicolons in expression macro bodies #79813
**Link:** https://github.com/rust-lang/rust/issues/79813
* Update: Ongoing crater run
### "inline-asm" lang-team#20
**Link:** https://github.com/rust-lang/lang-team/issues/20
* [Update](https://github.com/rust-lang/rust/issues/72016#issuecomment-874373791)
* There is a subset that could be stabilized, modulo:
* clobber support
* namespacing decision being finalized
### Tracking Issue for #[instruction_set] attribute (RFC 2867) #74727
**Link:** https://github.com/rust-lang/rust/issues/74727
* Hasn't been changes in a while
* [Update from April 6](https://github.com/rust-lang/rust/issues/74727#issuecomment-814538151) suggests:
* The implementation works but
* Generates suboptimal code owing to ungreat inlining
* Seems ready to stabilize *if we wanted to*
* Minor bikeshed of `#[repr(instruction_set = "...")]` as an alternative spelling
* What would be the plan to get more feedback
### Tracking issue for X.., ..X, and ..=X (#![feature(half_open_range_patterns)]) #67264
* Has a stabilization PR in FCP