1.77.0
版本发布时间: 2024-03-21 20:57:12
rust-lang/rust最新发布版本:1.83.0(2024-11-28 22:02:00)
Language
- Reveal opaque types within the defining body for exhaustiveness checking.
- Stabilize C-string literals.
- Stabilize THIR unsafeck.
-
Add lint
static_mut_refs
to warn on references to mutable statics. - Support async recursive calls (as long as they have indirection).
-
Undeprecate lint
unstable_features
and make use of it in the compiler. - Make inductive cycles in coherence ambiguous always.
- Get rid of type-driven traversal in const-eval interning, only as a future compatiblity lint for now.
- Deny braced macro invocations in let-else.
Compiler
-
Include lint
soft_unstable
in future breakage reports. -
Make
i128
andu128
16-byte aligned on x86-based targets. -
Use
--verbose
in diagnostic output. - Improve spacing between printed tokens.
-
Merge the
unused_tuple_struct_fields
lint intodead_code
. - Error on incorrect implied bounds in well-formedness check, with a temporary exception for Bevy.
- Fix coverage instrumentation/reports for non-ASCII source code.
-
Fix
fn
/const
items implied bounds and well-formedness check. -
Promote
riscv32{im|imafc}-unknown-none-elf
targets to tier 2. - Add several new tier 3 targets:
Refer to Rust's platform support page for more information on Rust's tiered platform support.
Libraries
Stabilized APIs
-
array::each_ref
-
array::each_mut
-
core::net
-
f32::round_ties_even
-
f64::round_ties_even
-
mem::offset_of!
-
slice::first_chunk
-
slice::first_chunk_mut
-
slice::split_first_chunk
-
slice::split_first_chunk_mut
-
slice::last_chunk
-
slice::last_chunk_mut
-
slice::split_last_chunk
-
slice::split_last_chunk_mut
-
slice::chunk_by
-
slice::chunk_by_mut
-
Bound::map
-
File::create_new
-
Mutex::clear_poison
-
RwLock::clear_poison
Cargo
-
Extend the build directive syntax with
cargo::
. -
Stabilize metadata
id
format asPackageIDSpec
. -
Pull out
cargo-util-schemas
as a crate. - Strip all debuginfo when debuginfo is not requested.
- Inherit jobserver from env for all kinds of runners.
- Deprecate rustc plugin support in cargo.
Rustdoc
- Allows links in markdown headings.
-
Search for tuples and unit by type with
()
. - Clean up the source sidebar's hide button.
-
Prevent JS injection from
localStorage
.
Misc
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.