Popular: Data updated October 27, 2026

Categories

Internet1,356
Communication321
Audio & video898
Graphics & design539
Office & productivity1,124
Developer tools3,134
AI tools529
Security & privacy385
System tools3,114
Games523
Education & science239
Network & IT284

Rust (GNU LLVM) 1.95.0 download

A language empowering everyone to build reliable and efficient software.

This is an older version. The current version is 1.99.1. Rust (GNU LLVM) 1.99.1 · Released:

Installer files 1.95.0

ArchitectureTypeScopeFile sizeDownloadSHA256
64-bit MSI — — static.rust-lang.org VirusTotal
ARM64 MSI — — static.rust-lang.org VirusTotal

Link and SHA256 come from the Windows Package Manager community manifest. Compare the hash of the downloaded file before running it.

Release notes

Language
- Stabilize if let guards on match arms
- irrefutable_let_patterns lint no longer lints on let chains
- Support importing path-segment keywords with renaming
- Stabilize inline assembly for PowerPC and PowerPC64
- const-eval: be more consistent in the behavior of padding during typed copies
- Const blocks are no longer evaluated to determine if expressions involving fallible operations can implicitly be constant-promoted.. Expressions whose ability to implicitly be promoted would depend on the result of a const block are no longer implicitly promoted.
- Make operational semantics of pattern matching independent of crate and module

Compiler
- Stabilize --remap-path-scope for controlling the scoping of how paths get remapped in the resulting binary

Platform Support
- Promote powerpc64-unknown-linux-musl to Tier 2 with host tools
- Promote aarch64-apple-tvos to Tier 2
- Promote aarch64-apple-tvos-sim to Tier 2
- Promote aarch64-apple-watchos to Tier 2
- Promote aarch64-apple-watchos-sim to Tier 2
- Promote aarch64-apple-visionos to Tier 2
- Promote aarch64-apple-visionos-sim to Tier 2
Refer to Rust's platform support page for more information on Rust's tiered platform support.

Libraries
- thread::scope: document how join interacts with TLS destructors
- Speed up str::contains on aarch64 targets with neon target feature enabled by default

Stabilized APIs
- MaybeUninit<[T; N]>: From<[MaybeUninit<T>; N]>
- MaybeUninit<[T; N]>: AsRef<[MaybeUninit<T>; N]>
- MaybeUninit<[T; N]>: AsRef<[MaybeUninit<T>]>
- MaybeUninit<[T; N]>: AsMut<[MaybeUninit<T>; N]>
- MaybeUninit<[T; N]>: AsMut<[MaybeUninit<T>]>
- [MaybeUninit<T>; N]: From<MaybeUninit<[T; N]>>
- Cell<[T; N]>: AsRef<[Cell<T>; N]>
- Cell<[T; N]>: AsRef<[Cell<T>]>
- Cell<[T]>: AsRef<[Cell<T>]>
- bool: TryFrom<{integer}>
- AtomicPtr::update
- AtomicPtr::try_update
- AtomicBool::update
- AtomicBool::try_update
- AtomicIn::update
- AtomicIn::try_update
- AtomicUn::update
- AtomicUn::try_update
- cfg_select!
- mod core::range
- core::range::RangeInclusive
- core::range::RangeInclusiveIter
- core::hint::cold_path
- <*const T>::as_ref_unchecked
- <*mut T>::as_ref_unchecked
- <*mut T>::as_mut_unchecked
These previously stable APIs are now stable in const contexts:
- fmt::from_fn
- ControlFlow::is_break
- ControlFlow::is_continue

Cargo
- docs(report): enhance man pages for cargo report *

Rustdoc
- In search results, rank unstable items lower
- Add new "hide deprecated items" setting in rustdoc

Compatibility Notes
- Array coercions may now result in less inference constraints than before
- Importing $crate without renaming, i.e. use $crate::{self};, is now no longer permitted due to stricter error checking for self imports.
- const-eval: be more consistent in the behavior of padding during typed copies. In very rare cases, this may cause compilation errors due to bytes from parts of a pointer ending up in the padding bytes of a const or static.
- A future-incompatibility warning lint ambiguous_glob_imported_traits is now reported when using an ambiguously glob imported trait
- Check lifetime bounds of types mentioning only type parameters
- Report more visibility-related ambiguous import errors
- Deprecate Eq::assert_receiver_is_total_eq and emit future compatibility warnings on manual impls
- powerpc64: Use the ELF ABI version set in target spec instead of guessing (fixes the ELF ABI used by the OpenBSD target)
- Matching on a #[non_exhaustive] enum now reads the discriminant, even if the enum has only one variant. This can cause closures to capture values that they previously wouldn't.
- mut ref and mut ref mut patterns, part of the unstable Match Ergonomics 2024 RFC, were accidentally allowed on stable within struct pattern field shorthand. These patterns are now correctly feature-gated as unstable in this position.
- Add future-compatibility warning for derive helper attributes which conflict with built-in attributes
- JSON target specs have been destabilized and now require -Z unstable-options to use. Previously, they could not be used without the standard library, which has no stable build mechanism. In preparation for the build-std project adding that support, JSON target specs are being proactively gated to ensure they remain unstable even if build-std is stabilized. Cargo now includes the -Z json-target-spec CLI flag to automatically pass -Z unstable-options to the compiler when needed. See #150151, #151534, and rust-lang/cargo#16557.
- The arguments of #[feature] attributes on invalid targets are now checked

Internal Changes
These changes do not affect any public interfaces of Rust, but they represent significant improvements to the performance or internals of rustc and related tools.
- Update to LLVM 22

https://github.com/rust-lang/rust/releases/tag/1.95.0

Most popular in Languages & SDKs

See all
  1. Go Programming LanguageAn open source programming language that makes it simple to build secure, scalable systems.
  2. LLVMA collection of modular and reusable compiler and toolchain technologies.
  3. DenoA modern runtime for JavaScript and TypeScript
  4. CMakeCMake is a cross-platform, open-source build system generator.
  5. YarnYarn is a package manager that doubles down as project manager. Whether you work on one-shot projects or large monorepos, as a hobbyist or an enterprise user, we've got you covered.
  6. CcacheCcache is a compiler cache. It speeds up recompilation by caching previous compilations and detecting when the same compilation is being done again.
  7. sbtA build tool for Scala, Java, and more
  8. BOINCOpen-source software for volunteer computing and grid computing.
  9. Dart SDKA set of tools and libraries for the Dart programming language.
  10. NVM for WindowsA node.js version management utility for Windows. Ironically written in Go.

More from The Rust Project Developers

See all
  • rust-analyzerrust-analyzer is a language server that provides IDE functionality for writing Rust programs. You can use it with any editor that supports the Language Server Protocol (VS Code, Vim, Emacs, Zed, etc).
  • Rust (GNU)A language empowering everyone to build reliable and efficient software.
  • Rust (MSVC)A language empowering everyone to build reliable and efficient software.

Tags

Share