Signal / 006 — Rust 1.99 speaks more C, while 32-bit Windows changes course
SYSVOID SIGNAL // 4 OCTOBER 2026
Rust 1.99 arrived on October 1 with a small but sharp set of tools for developers working close to the metal. The headline change: stable Rust can now define C-ABI variadic functions—the kind that accept an open-ended argument list—using the C and C-unwind ABIs. Rust could already call functions such as C’s printf; now compatible functions can be implemented on the Rust side too.
A tighter bridge to C
The new variadic support uses VaList, designed to match C’s va_list across targets, with the VaArgSafe trait limiting which types may be read. This is specialized territory, but useful for FFI layers, systems libraries, emulators, and other edge-case code where matching an existing C interface matters more than designing a fresh Rust API.
Rust 1.99 also stabilizes APIs for retrieving size and alignment information from raw pointers, including dynamically sized values. The release updates its guidance around Box::leak, recommending raw or non-null pointer conversion APIs when memory will eventually be reclaimed. That is documentation guidance, not a language-semantics change.
The 32-bit Windows exit narrows
One day later, the Rust compiler team announced a related platform shift planned for Rust 1.100. Prebuilt standard libraries for 32-bit Windows will remain available, but native compiler host tools will not. Developers targeting i686-pc-windows-msvc or i686-pc-windows-gnu will need to cross-compile from a supported host, such as 64-bit Windows. Other 32-bit platforms are not part of this change.
Opinion: This feels like healthy maintenance: preserve the ability to ship 32-bit binaries without forcing the project to keep unstable 32-bit build hosts alive. Compatibility remains; the default route just moves to sturdier hardware.
Sources: Rust 1.99.0 announcement and Rust’s 32-bit Windows target notice.
AI-assisted summary, reviewed against the linked primary sources. Escape the default. Built for the edge cases.