commit | 7474516dd4e33df81002fad4d0f58ccb65c6f13d | [log] [tgz] |
---|---|---|
author | bors <bors@rust-lang.org> | Wed Jul 31 12:56:46 2024 +0000 |
committer | bors <bors@rust-lang.org> | Wed Jul 31 12:56:46 2024 +0000 |
tree | 02b1bcf847b055d1c3a09d50e9365a49fac63523 | |
parent | c1cb96f19a4886db742c01af3c8fdcc53b3e1a16 [diff] | |
parent | ee1e55b8d9c5ad893483d500506757751d46acf8 [diff] |
Auto merge of #127513 - nikic:llvm-19, r=cuviper Update to LLVM 19 The LLVM 19.1.0 final release is planned for Sep 3rd. The rustc 1.82 stable release will be on Oct 17th. The unstable MC/DC coverage support is temporarily broken by this update. It will be restored by https://github.com/rust-lang/rust/pull/126733. The implementation changed substantially in LLVM 19, and there are no plans to support both the LLVM 18 and LLVM 19 implementation at the same time. Compatibility note for wasm: > WebAssembly target support for the `multivalue` target feature has changed when upgrading to LLVM 19. Support for generating functions with multiple returns no longer works and `-Ctarget-feature=+multivalue` has a different meaning than it did in LLVM 18 and prior. The WebAssembly target features `multivalue` and `reference-types` are now both enabled by default, but generated code is not affected by default. These features being enabled are encoded in the `target_features` custom section and may affect downstream tooling such as `wasm-opt` consuming the module, but the actual generated WebAssembly will continue to not use either `multivalue` or `reference-types` by default. There is no longer any supported means to generate a module that has a function with multiple returns. Related changes: * https://github.com/rust-lang/rust/pull/127605 * https://github.com/rust-lang/rust/pull/127613 * https://github.com/rust-lang/rust/pull/127654 * https://github.com/rust-lang/rust/pull/128141 * https://github.com/llvm/llvm-project/pull/98933 Fixes https://github.com/rust-lang/rust/issues/121444. Fixes https://github.com/rust-lang/rust/issues/128212.
rust-analyzer is a modular compiler frontend for the Rust language. It is a part of a larger rls-2.0 effort to create excellent IDE support for Rust.
https://rust-analyzer.github.io/manual.html#installation
If you want to contribute to rust-analyzer check out the CONTRIBUTING.md or if you are just curious about how things work under the hood, check the ./docs/dev folder.
If you want to use rust-analyzer's language server with your editor of choice, check the manual folder. It also contains some tips & tricks to help you be more productive when using rust-analyzer.
See the corresponding sections of the manual.
For usage and troubleshooting requests, please use “IDEs and Editors” category of the Rust forum:
https://users.rust-lang.org/c/ide/14
For questions about development and implementation, join rust-analyzer working group on Zulip:
https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frust-analyzer
rust-analyzer is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT for details.