Rust

Rust: Swift ABI Support and Compiler Optimizations

The Rust compiler gained experimental Swift function call support and several performance improvements, with 20 pull requests merged including new ABIs, documentation fixes, and testing infrastructure updates.

Duration: PT1M51S

https://podlog.io/listen/rust-ffe93d3a/episode/rust-swift-abi-support-and-compiler-optimizations-fb91b7dd

Transcript

Good morning. This is your Rust development update for May 14th, 2026.

Twenty pull requests were merged yesterday, led by significant compiler enhancements. djc merged experimental Swift function call ABI support behind the `abi_swift` feature gate, mapping to LLVM's swiftcc calling convention for Darwin platforms only. This addresses issue 64582 and required changes across 23 files in the codegen pipeline.

fmease delivered major rustdoc improvements, rewriting type-dependent path resolution to fix internal compiler errors and boost performance by caching TypeckResults instead of repeatedly calling typeck_body. The changes span 8 files and resolve several linked issues.

oli-obk merged a substantial refactor splitting the node_id_to_def_id table into per-owner tables, advancing goals for parallelized AST lowering. Zalathar removed the dummy PreCodegen mir-opt pass, streamlining the compilation pipeline by using runtime-optimized phases instead.

Testing infrastructure saw updates with Zalathar renaming the ignore-pass directive to no-pass-override for clarity, and enforcing consistent colon usage in compiletest directives. The Clippy subtree received its regular update from flip1995.

Additional merges included privacy system improvements moving macro handling to earlier compilation stages, unused assignment detection fixes in diverging branches, and standard library additions like ChildExt::kill_process_group for Unix process management.

What's next: Swift ABI support remains experimental pending further testing. The per-owner table work continues toward fully parallelized AST lowering.

That's your Rust update. Back tomorrow.