Skip to content

r3 0.2.3

Compare
Choose a tag to compare
@yvt yvt released this 16 Aug 13:40
· 166 commits to 🦆 since this release

This release includes compatibility fixes as well as improvements enabled by the latest nightly toolchain.

All packages

Changed

  • Breaking (semver-exempt): Change the target compiler version to nightly-2022-08-11

[email protected]

Changed

  • Removed trait bounds in items and item documentations that have been made redundant by the supertraits of r3_core::kernel::traits::Cfg* traits, which now include ~const.

[email protected]

Added

  • The new blanket-implemented CfgStatic trait can be used to simplify some trait bounds of configuration functions.
  • The Cfg* traits now include ~const in their supertraits (rust-lang/rust#93429), making ~const CfgBase trait bound unnecessary if it's implied by others.

[email protected]

Fixed

  • Fixed an unexposed soundness bug in Timeout's destructor in which the destructor started unwinding instead of aborting on precondition violation. This could only be triggered by a bug in internal code, and we are not aware of any instances of such bugs. Triggering the bug also requires the unwind panic strategy, which is not supported by bare-metal targets.

[email protected]

Fixed

  • Fixed a typo in an error message.

[email protected]

Changed

  • Breaking: use_rt! is now gated behind riscv-rt Cargo feature.

Fixed

  • This crate no longer exports symbol names like 0 and 1, which are prone to name collision.

[email protected]

Fixed

  • Implemented a work-around for ICE caused by mentioning a reference type in inline assembly sym operands (rust-lang/rust#96304).