Rust 1.92 enables unwind tables by default, refines lints & attribute checks, and more

Rust 1.92 enables unwind tables by default, refines lints & attribute checks, and more

Rust 1.92 ships as the latest version of the general-purpose programming language, introducing key changes for developers. Notably, unwind tables are now emitted by default even when the -Cpanic=abort flag is set, ensuring backtraces reliably function in panic-abort scenarios. Users who do not want unwind tables can now explicitly disable them with -Cforce-unwind-tables=no.

Following ongoing improvements to the type system, this release continues stabilization efforts for the never type. Two future compatibility lints, never_type_fallback_flowing_into_unsafe and dependency_on_unit_never_type_fallback, are now deny-by-default, meaning any violations will result in compilation errors rather than warnings or silent allowance.

On the linting front, the unused_must_use lint no longer warns when functions return a Result or a ControlFlow, such as Result. This reflects the fact that these error types cannot actually occur, reducing unnecessary checks during development.

These core updates are accompanied by wide-ranging changes to Rust's built-in attribute handling. The compiler now processes attributes more strictly and reports clearer, more consistent diagnostics. For example, incorrect macro_export arguments in dependencies are upgraded to deny-by-default lints, making such issues more visible during compilation.

by Paul

na
cz
du
nabbisen found this interesting
Rust iconRust
  149
  • ...

Rust is a multi-paradigm, general-purpose programming language known for its focus on performance, type safety, and concurrency. It ensures memory safety by guaranteeing that all references point to valid memory, all without relying on a garbage collector. Key features include type safety, compiler explanations, and static typing. Rust is highly rated at 4.4, with top alternatives being C++, Go, and Swift.

No comments so far, maybe you want to be first?
Gu