--- title: "Lang/RfL meeting 2025-05-21" tags: ["T-lang", "design-meeting", "minutes"] date: 2025-05-21 discussion: https://rust-lang.zulipchat.com/#narrow/channel/410673-t-lang.2Fmeetings/topic/RfL.20meeting.202025-05-21 url: https://hackmd.io/stIBR5AzTGC2iKFUg5sJug --- # Lang/RfL meeting 2025-05-21 ## Attendance People: TC, Miguel Ojeda, Boqun Feng, Benno Lossin, Gary Guo, tmandry ## Outcomes from the All Hands ### Predictions of the future At the All Hands, we asked people what percentage of the kernel will be written in Rust in 2035. Right now it's about 0.1% of the kernel is in Rust. There are about 35M lines of C (40M lines total). ### Movement on AFIDT / RPITIDT, placement Alice has a new proposal for this. https://rust-lang.zulipchat.com/#narrow/channel/486433-all-hands-2025/topic/Placement.20new.20in.20Rust/near/518803523 ### Field projections The new idea here is to reuse the borrow checker logic, to extend what we do for `&` and `&mut` to custom types. It'd still use the `->` syntax. Benno is working on this. ## Tracking [Tracking issue](https://github.com/rust-lang/rust-project-goals/issues/116) ### Stabilize `derive(CoercePointee)` No updates. There was this issue: - https://github.com/rust-lang/rust/issues/136702 We made something a hard error in: - https://github.com/rust-lang/rust/pull/136764 Then there's the one outstanding: - https://github.com/rust-lang/rust/pull/136776 Here we also decided to make this a hard error; this is waiting on a diagnostic that we wanted to add with it. ### Stabilize arbitrary self types v2 Ding is working on this. One thing we could do is to split the feature gate and allow arbitrary self types only for types that implement `Deref`. This covers the use case in the kernel. ### ABI-modifying compiler flags The MCPs for `-Zharden-sls` and `-Zretpoline*` (plus `-Zindirect-branch-cs-prefix`?) were accepted earlier today: - https://github.com/rust-lang/compiler-team/issues/868 - https://github.com/rust-lang/compiler-team/issues/869 https://github.com/rust-lang/rust/pull/135927 (`-Zretpoline*`) is still marked as waiting on author, but it's no longer waiting on the MCP. We've pinged the author to see if this is ready. When that one lands, we can land as well (since it was covered by the MCP): https://github.com/rust-lang/rust/pull/140740 (plus `-Zindirect-branch-cs-prefix`?). There's another one, but this one needs a rebase. https://github.com/rust-lang/rust/pull/136597 (`-Zharden-sls`) This one is marked as blocked on the other one. ### Configure no-std externally, build-std They discussed build-std at the all hands. These were the notes for that: https://hackmd.io/@davidtwco/SyW2C0SZge There was maybe some consensus between the libs team and the compiler team, but the Cargo team wasn't really in the discussion. ### Rustdoc features to extract doc tests All-Hands: 3 items starting from https://hackmd.io/7Zk724EkRHWuMdxuuZ5J5Q#doctest-extraction-for-rust4linux ### Clippy configuration Miguel will talk to Philipp. ### `-Zsanitize-kcfi-arity` No update. ### Retroactive MCP for the RFL job https://github.com/rust-lang/compiler-team/issues/874