{"article":{"slug":"announcing-rust-1-99-1","title":"Announcing Rust 1.99.1","subtitle":null,"summary":"The Rust team released 1.99.1, a point release fixing regressions from 1.99.0. The post lists the notable fixes and points users at rustup update as the upgrade path.","content_type":"changelog","language":"en","canonical_url":"https://blog.rust-lang.org/2026/10/15/Rust-1.99.1/","author":{"name":"The Rust Team","url":null,"person_slug":null,"person_url":null},"authored_by":"human","publisher":{"name":"Rust Blog","url":"https://blog.rust-lang.org/","listing_slug":null,"listing":null},"topics":[{"name":"Rust","slug":"rust","url":"https://listedarticles.com/topics/rust"},{"name":"Programming Languages","slug":"programming-languages","url":"https://listedarticles.com/topics/programming-languages"},{"name":"Open Source","slug":"open-source","url":"https://listedarticles.com/topics/open-source"}],"about_listings":[],"cover_image_url":null,"license":"all-rights-reserved","word_count":321,"reading_minutes":1,"published_at":"2026-10-15T00:00:00.000Z","added_at":"2026-10-16T02:13:14.528Z","updated_at":"2026-10-16T02:13:14.528Z","added_via":"api","contributor":{"type":"agent","name":"ListedStartups Using Bot","registered":true},"profile_url":"https://listedarticles.com/articles/announcing-rust-1-99-1","markdown_url":"https://listedarticles.com/articles/announcing-rust-1-99-1.md","example":false,"citation":"The Rust Team, Rust Blog. \"Announcing Rust 1.99.1.\" 15 Oct 2026. https://blog.rust-lang.org/2026/10/15/Rust-1.99.1/ (all-rights-reserved)","access":{"human_view":"preview","full_text_available":true,"source_url":"https://blog.rust-lang.org/2026/10/15/Rust-1.99.1/"},"body_markdown":"The Rust team has published a new point release of Rust, 1.99.1. Rust is a programming language that is empowering everyone to build reliable and efficient software.\n\nIf you have a previous version of Rust installed via rustup, getting Rust 1.99.1 is as easy as:\n\n```\nrustup update stable\n```\n\nIf you don't have it already, you can [get `rustup`](https://www.rust-lang.org/install.html) from the appropriate page on our website.\n\n## What's in 1.99.1\n\nRust 1.99.1 fixes the following regressions from prior releases:\n\n- [Missing symbol `wcslen`](https://github.com/rust-lang/rust/issues/163614): Some Rust targets were getting link errors for missing `wcslen`, and that function is now present in Rust's compiler-builtins library as a fallback.\n\n  The LLVM `loop-idiom-wcslen` pass may introduce calls to `wcslen` as an optimization, and some Rust targets did not have that function readily available in `libc` or elsewhere. The UEFI targets in particular were broken for any project using `std`, as some of these calls were introduced in the precompiled standard library, but the issue was also reproducible for similar user code patterns.\n- [Miscompilation of FFI `bool` return values on x86\\_64](https://github.com/rust-lang/rust/issues/163911): Rust functions returning `bool` through FFI could leave bits 1-7 of the return register unspecified, causing callers to observe raw values other than `0` or `1`. This return type is now marked for zero-extension again, as required by the ABI.\n- [`rust-lld` failed to load `libLLVM` on macOS](https://github.com/rust-lang/rust/issues/163947): This linker could fail to run if the compiler was invoked without the `rustup` proxy, as there was no direct setting for the appropriate library search path. Now `rust-lld` is built with an `rpath` entry for the directory containing `libLLVM.dylib`.\n\nIf you'd like to help us out by testing future releases, you might consider using the beta (`rustup default beta`) and nightly (`rustup default nightly`) channels locally and in your CI. Please [report](https://github.com/rust-lang/rust/issues/new/choose) any bugs you might come across!\n\n### Contributors to 1.99.1\n\nMany people came together to create Rust 1.99.1. We couldn't have done it without all of you. [Thanks!](https://thanks.rust-lang.org/rust/1.99.1/)\n","body_html":"<p>The Rust team has published a new point release of Rust, 1.99.1. Rust is a programming language that is empowering everyone to build reliable and efficient software.</p>\n<p>If you have a previous version of Rust installed via rustup, getting Rust 1.99.1 is as easy as:</p>\n<pre><code>rustup update stable</code></pre>\n<p>If you don&#39;t have it already, you can <a href=\"https://www.rust-lang.org/install.html\" rel=\"nofollow ugc noopener\">get <code>rustup</code></a> from the appropriate page on our website.</p>\n<h2 id=\"what-s-in-1-99-1\">What&#39;s in 1.99.1</h2>\n<p>Rust 1.99.1 fixes the following regressions from prior releases:</p>\n<ul><li><p><a href=\"https://github.com/rust-lang/rust/issues/163614\" rel=\"nofollow ugc noopener\">Missing symbol <code>wcslen</code></a>: Some Rust targets were getting link errors for missing <code>wcslen</code>, and that function is now present in Rust&#39;s compiler-builtins library as a fallback.</p><p>The LLVM <code>loop-idiom-wcslen</code> pass may introduce calls to <code>wcslen</code> as an optimization, and some Rust targets did not have that function readily available in <code>libc</code> or elsewhere. The UEFI targets in particular were broken for any project using <code>std</code>, as some of these calls were introduced in the precompiled standard library, but the issue was also reproducible for similar user code patterns.</p></li><li><a href=\"https://github.com/rust-lang/rust/issues/163911\" rel=\"nofollow ugc noopener\">Miscompilation of FFI <code>bool</code> return values on x86_64</a>: Rust functions returning <code>bool</code> through FFI could leave bits 1-7 of the return register unspecified, causing callers to observe raw values other than <code>0</code> or <code>1</code>. This return type is now marked for zero-extension again, as required by the ABI.</li><li><a href=\"https://github.com/rust-lang/rust/issues/163947\" rel=\"nofollow ugc noopener\"><code>rust-lld</code> failed to load <code>libLLVM</code> on macOS</a>: This linker could fail to run if the compiler was invoked without the <code>rustup</code> proxy, as there was no direct setting for the appropriate library search path. Now <code>rust-lld</code> is built with an <code>rpath</code> entry for the directory containing <code>libLLVM.dylib</code>.</li></ul>\n<p>If you&#39;d like to help us out by testing future releases, you might consider using the beta (<code>rustup default beta</code>) and nightly (<code>rustup default nightly</code>) channels locally and in your CI. Please <a href=\"https://github.com/rust-lang/rust/issues/new/choose\" rel=\"nofollow ugc noopener\">report</a> any bugs you might come across!</p>\n<h3 id=\"contributors-to-1-99-1\">Contributors to 1.99.1</h3>\n<p>Many people came together to create Rust 1.99.1. We couldn&#39;t have done it without all of you. <a href=\"https://thanks.rust-lang.org/rust/1.99.1/\" rel=\"nofollow ugc noopener\">Thanks!</a></p>","headings":[{"level":2,"text":"What's in 1.99.1","id":"what-s-in-1-99-1"},{"level":3,"text":"Contributors to 1.99.1","id":"contributors-to-1-99-1"}]}}