authorbors <bors@rust-lang.org> 2026-07-06 00:42:21 UTC
committerbors <bors@rust-lang.org> 2026-07-06 00:42:21 UTC
log6b3fa26749ab40e159b2dd5cf577acaaf5902772
tree33d9f9e33bef6c4120c7e4b2285c575d4b5615c6
parent7148b31956911d5d5496900bf564ca5212bf199b
parentdcab53adb38a2cfd000a1e4449f6346cfa67fc81

Auto merge of #158829 - Mark-Simulacrum:beta-next, r=Mark-Simulacrum

[beta] branch 1.98 beta https://forge.rust-lang.org/release/process.html#beta-pr r? me

24 files changed, 103 insertions(+), 103 deletions(-)

compiler/rustc_feature/src/removed.rs+1-1
......@@ -107,7 +107,7 @@ declare_features! (
107107 /// Allows deriving traits as per `SmartPointer` specification
108108 (removed, derive_smart_pointer, "1.84.0", Some(123430), Some("replaced by `CoercePointee`"), 131284),
109109 /// Allows macros to customize macro argument matcher diagnostics.
110 (removed, diagnostic_on_unmatch_args, "CURRENT_RUSTC_VERSION", Some(155642), Some("renamed to `diagnostic_on_unmatched_args`"), 157887),
110 (removed, diagnostic_on_unmatch_args, "1.98.0", Some(155642), Some("renamed to `diagnostic_on_unmatched_args`"), 157887),
111111 /// Tells rustdoc to automatically generate `#[doc(cfg(...))]`.
112112 (removed, doc_auto_cfg, "1.92.0", Some(43781), Some("merged into `doc_cfg`"), 138907),
113113 /// Allows `#[doc(cfg_hide(...))]`.
compiler/rustc_feature/src/unstable.rs+9-9
......@@ -455,7 +455,7 @@ declare_features! (
455455 /// Allows to use the `#[cfi_encoding = ""]` attribute.
456456 (unstable, cfi_encoding, "1.71.0", Some(89653)),
457457 /// The `clflushopt` target feature on x86.
458 (unstable, clflushopt_target_feature, "CURRENT_RUSTC_VERSION", Some(157096)),
458 (unstable, clflushopt_target_feature, "1.98.0", Some(157096)),
459459 /// Allows `for<...>` on closures and coroutines.
460460 (unstable, closure_lifetime_binder, "1.64.0", Some(97362)),
461461 /// Allows `#[track_caller]` on closures and coroutines.
......@@ -513,7 +513,7 @@ declare_features! (
513513 /// Allows giving on-move borrowck custom diagnostic messages for a type
514514 (unstable, diagnostic_on_move, "1.96.0", Some(154181)),
515515 /// Allows giving custom types diagnostic messages on type errors
516 (unstable, diagnostic_on_type_error, "CURRENT_RUSTC_VERSION", Some(155382)),
516 (unstable, diagnostic_on_type_error, "1.98.0", Some(155382)),
517517 /// Allows giving unresolved imports a custom diagnostic message
518518 (unstable, diagnostic_on_unknown, "1.96.0", Some(152900)),
519519 /// Allows macros to customize macro argument matcher diagnostics.
......@@ -598,7 +598,7 @@ declare_features! (
598598 /// Allows associated types in inherent impls.
599599 (incomplete, inherent_associated_types, "1.52.0", Some(8995)),
600600 /// Enable #[instrument_fn] on function.
601 (unstable, instrument_fn, "CURRENT_RUSTC_VERSION", Some(157081)),
601 (unstable, instrument_fn, "1.98.0", Some(157081)),
602602 /// Allows using `pointer` and `reference` in intra-doc links
603603 (unstable, intra_doc_pointers, "1.51.0", Some(80896)),
604604 /// lahfsahf target feature on x86.
......@@ -613,7 +613,7 @@ declare_features! (
613613 /// Target features on loongarch.
614614 (unstable, loongarch_target_feature, "1.73.0", Some(150252)),
615615 /// Allows use of loop optimization hints via attributes.
616 (unstable, loop_hints, "CURRENT_RUSTC_VERSION", Some(156874)),
616 (unstable, loop_hints, "1.98.0", Some(156874)),
617617 /// Allows fused `loop`/`match` for direct intraprocedural jumps.
618618 (incomplete, loop_match, "1.90.0", Some(132306)),
619619 /// Target features on m68k.
......@@ -657,7 +657,7 @@ declare_features! (
657657 /// Allows `mut ref` and `mut ref mut` identifier patterns.
658658 (incomplete, mut_ref, "1.79.0", Some(123076)),
659659 /// Allows `mut(crate) field: Type` restrictions.
660 (incomplete, mut_restriction, "CURRENT_RUSTC_VERSION", Some(105077)),
660 (incomplete, mut_restriction, "1.98.0", Some(105077)),
661661 /// Allows using `#[naked]` on `extern "Rust"` functions.
662662 (unstable, naked_functions_rustic_abi, "1.88.0", Some(138997)),
663663 /// Allows using `#[target_feature(enable = "...")]` on `#[naked]` on functions.
......@@ -718,7 +718,7 @@ declare_features! (
718718 /// Allows `extern "rust-preserve-none"`.
719719 (unstable, rust_preserve_none_cc, "1.95.0", Some(151401)),
720720 /// Allows `extern "tail"`.
721 (unstable, rust_tail_cc, "CURRENT_RUSTC_VERSION", Some(157427)),
721 (unstable, rust_tail_cc, "1.98.0", Some(157427)),
722722 /// Target features on s390x.
723723 (unstable, s390x_target_feature, "1.82.0", Some(150259)),
724724 /// Allows the use of the `sanitize` attribute.
......@@ -731,7 +731,7 @@ declare_features! (
731731 (incomplete, specialization, "1.7.0", Some(31844)),
732732 /// Experimental "splatting" of function call arguments at the call site.
733733 /// e.g. `foo(a, b, c)` calls `#[splat] fn foo((a: A, b: B, c: C))`.
734 (incomplete, splat, "CURRENT_RUSTC_VERSION", Some(153629)),
734 (incomplete, splat, "1.98.0", Some(153629)),
735735 /// Allows using `#[rustc_align_static(...)]` on static items.
736736 (unstable, static_align, "1.91.0", Some(146177)),
737737 /// Allows attributes on expressions and non-item statements.
......@@ -762,7 +762,7 @@ declare_features! (
762762 /// not changed from prior instances of the same struct (RFC #2528)
763763 (unstable, type_changing_struct_update, "1.58.0", Some(86555)),
764764 /// Allows using `_ = <range-or-int>` enum variants.
765 (incomplete, unnamed_enum_variants, "CURRENT_RUSTC_VERSION", Some(156628)),
765 (incomplete, unnamed_enum_variants, "1.98.0", Some(156628)),
766766 /// Allows using `unsafe<'a> &'a T` unsafe binder types.
767767 (incomplete, unsafe_binders, "1.85.0", Some(130516)),
768768 /// Allows declaring fields `unsafe`.
......@@ -787,7 +787,7 @@ declare_features! (
787787 /// Allows use of the `xop` target-feature
788788 (unstable, xop_target_feature, "1.81.0", Some(127208)),
789789 /// Allows use of the Xtensa target-features
790 (unstable, xtensa_target_feature, "CURRENT_RUSTC_VERSION", Some(157063)),
790 (unstable, xtensa_target_feature, "1.98.0", Some(157063)),
791791 /// Allows `do yeet` expressions
792792 (unstable, yeet_expr, "1.62.0", Some(96373)),
793793 (unstable, yield_expr, "1.87.0", Some(43122)),
library/alloc/src/boxed.rs+2-2
......@@ -1778,7 +1778,7 @@ impl<T: ?Sized, A: Allocator> Box<T, A> {
17781778 /// [`as_ptr`]: Self::as_ptr
17791779 /// [`as_non_null`]: Self::as_non_null
17801780 #[must_use]
1781 #[stable(feature = "box_as_ptr", since = "CURRENT_RUSTC_VERSION")]
1781 #[stable(feature = "box_as_ptr", since = "1.98.0")]
17821782 #[rustc_never_returns_null_ptr]
17831783 #[rustc_as_ptr]
17841784 #[inline]
......@@ -1827,7 +1827,7 @@ impl<T: ?Sized, A: Allocator> Box<T, A> {
18271827 /// [`as_ptr`]: Self::as_ptr
18281828 /// [`as_non_null`]: Self::as_non_null
18291829 #[must_use]
1830 #[stable(feature = "box_as_ptr", since = "CURRENT_RUSTC_VERSION")]
1830 #[stable(feature = "box_as_ptr", since = "1.98.0")]
18311831 #[rustc_never_returns_null_ptr]
18321832 #[rustc_as_ptr]
18331833 #[inline]
library/alloc/src/string.rs+4-4
......@@ -787,7 +787,7 @@ impl String {
787787 /// assert!(String::from_utf16le(v).is_err());
788788 /// ```
789789 #[cfg(not(no_global_oom_handling))]
790 #[stable(feature = "str_from_utf16_endian", since = "CURRENT_RUSTC_VERSION")]
790 #[stable(feature = "str_from_utf16_endian", since = "1.98.0")]
791791 pub fn from_utf16le(v: &[u8]) -> Result<String, FromUtf16Error> {
792792 let (chunks, []) = v.as_chunks::<2>() else {
793793 return Err(FromUtf16Error { kind: FromUtf16ErrorKind::OddBytes });
......@@ -825,7 +825,7 @@ impl String {
825825 /// String::from_utf16le_lossy(v));
826826 /// ```
827827 #[cfg(not(no_global_oom_handling))]
828 #[stable(feature = "str_from_utf16_endian", since = "CURRENT_RUSTC_VERSION")]
828 #[stable(feature = "str_from_utf16_endian", since = "1.98.0")]
829829 pub fn from_utf16le_lossy(v: &[u8]) -> String {
830830 match (cfg!(target_endian = "little"), unsafe { v.align_to::<u16>() }) {
831831 (true, ([], v, [])) => Self::from_utf16_lossy(v),
......@@ -860,7 +860,7 @@ impl String {
860860 /// assert!(String::from_utf16be(v).is_err());
861861 /// ```
862862 #[cfg(not(no_global_oom_handling))]
863 #[stable(feature = "str_from_utf16_endian", since = "CURRENT_RUSTC_VERSION")]
863 #[stable(feature = "str_from_utf16_endian", since = "1.98.0")]
864864 pub fn from_utf16be(v: &[u8]) -> Result<String, FromUtf16Error> {
865865 let (chunks, []) = v.as_chunks::<2>() else {
866866 return Err(FromUtf16Error { kind: FromUtf16ErrorKind::OddBytes });
......@@ -898,7 +898,7 @@ impl String {
898898 /// String::from_utf16be_lossy(v));
899899 /// ```
900900 #[cfg(not(no_global_oom_handling))]
901 #[stable(feature = "str_from_utf16_endian", since = "CURRENT_RUSTC_VERSION")]
901 #[stable(feature = "str_from_utf16_endian", since = "1.98.0")]
902902 pub fn from_utf16be_lossy(v: &[u8]) -> String {
903903 match (cfg!(target_endian = "big"), unsafe { v.align_to::<u16>() }) {
904904 (true, ([], v, [])) => Self::from_utf16_lossy(v),
library/core/src/bool.rs+2-2
......@@ -93,7 +93,7 @@ impl bool {
9393 /// // evaluated eagerly.
9494 /// assert_eq!(a, 2);
9595 /// ```
96 #[stable(feature = "bool_to_result", since = "CURRENT_RUSTC_VERSION")]
96 #[stable(feature = "bool_to_result", since = "1.98.0")]
9797 #[rustc_const_unstable(feature = "const_bool", issue = "151531")]
9898 #[inline]
9999 pub const fn ok_or<E: [const] Destruct>(self, err: E) -> Result<(), E> {
......@@ -120,7 +120,7 @@ impl bool {
120120 /// // `ok_or_else`.
121121 /// assert_eq!(a, 1);
122122 /// ```
123 #[stable(feature = "bool_to_result", since = "CURRENT_RUSTC_VERSION")]
123 #[stable(feature = "bool_to_result", since = "1.98.0")]
124124 #[rustc_const_unstable(feature = "const_bool", issue = "151531")]
125125 #[inline]
126126 pub const fn ok_or_else<E, F: [const] FnOnce() -> E + [const] Destruct>(
library/core/src/fmt/mod.rs+1-1
......@@ -36,7 +36,7 @@ pub enum Alignment {
3636 Center,
3737}
3838
39#[stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
39#[stable(feature = "int_format_into", since = "1.98.0")]
4040pub use num_buffer::NumBuffer;
4141#[unstable(feature = "fmt_internals", issue = "none")]
4242pub use num_buffer::NumBufferTrait;
library/core/src/fmt/num.rs+4-4
......@@ -272,7 +272,7 @@ macro_rules! impl_Display {
272272 #[doc = concat!("let n2 = ", stringify!($Signed::MAX), ";")]
273273 #[doc = concat!("assert_eq!(n2.format_into(&mut buf), ", stringify!($Signed::MAX), ".to_string());")]
274274 /// ```
275 #[stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
275 #[stable(feature = "int_format_into", since = "1.98.0")]
276276 pub fn format_into(self, buf: &mut NumBuffer<Self>) -> &str {
277277 let mut offset;
278278
......@@ -316,7 +316,7 @@ macro_rules! impl_Display {
316316 #[doc = concat!("let n2 = ", stringify!($Unsigned::MAX), ";")]
317317 #[doc = concat!("assert_eq!(n2.format_into(&mut buf), ", stringify!($Unsigned::MAX), ".to_string());")]
318318 /// ```
319 #[stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
319 #[stable(feature = "int_format_into", since = "1.98.0")]
320320 pub fn format_into(self, buf: &mut NumBuffer<Self>) -> &str {
321321 let offset;
322322
......@@ -756,7 +756,7 @@ impl u128 {
756756 /// let mut buf2 = NumBuffer::new();
757757 /// assert_eq!(n2.format_into(&mut buf2), u128::MAX.to_string());
758758 /// ```
759 #[stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
759 #[stable(feature = "int_format_into", since = "1.98.0")]
760760 pub fn format_into(self, buf: &mut NumBuffer<Self>) -> &str {
761761 let diff = buf.buf.len() - U128_MAX_DEC_N;
762762 // FIXME: Once const generics are better, use `NumberBufferTrait::BUF_SIZE` as generic const
......@@ -788,7 +788,7 @@ impl i128 {
788788 /// let n2 = i128::MAX;
789789 /// assert_eq!(n2.format_into(&mut buf), i128::MAX.to_string());
790790 /// ```
791 #[stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
791 #[stable(feature = "int_format_into", since = "1.98.0")]
792792 pub fn format_into(self, buf: &mut NumBuffer<Self>) -> &str {
793793 let diff = buf.buf.len() - U128_MAX_DEC_N;
794794 // FIXME: Once const generics are better, use `NumberBufferTrait::BUF_SIZE` as generic const
library/core/src/fmt/num_buffer.rs+7-7
......@@ -14,13 +14,13 @@ pub trait NumBufferTrait {
1414macro_rules! impl_NumBufferTrait {
1515 ($($signed:ident, $unsigned:ident,)*) => {
1616 $(
17 #[stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
17 #[stable(feature = "int_format_into", since = "1.98.0")]
1818 impl NumBufferTrait for $signed {
1919 // `+ 2` and not `+ 1` to include the `-` character.
2020 const DEFAULT: Self::Buf = [MaybeUninit::<u8>::uninit(); $signed::MAX.ilog10() as usize + 2];
2121 type Buf = [MaybeUninit<u8>; $signed::MAX.ilog10() as usize + 2];
2222 }
23 #[stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
23 #[stable(feature = "int_format_into", since = "1.98.0")]
2424 impl NumBufferTrait for $unsigned {
2525 const DEFAULT: Self::Buf = [MaybeUninit::<u8>::uninit(); $unsigned::MAX.ilog10() as usize + 1];
2626 type Buf = [MaybeUninit<u8>; $unsigned::MAX.ilog10() as usize + 1];
......@@ -55,24 +55,24 @@ impl_NumBufferTrait! {
5555/// let n2 = -1972i32;
5656/// assert_eq!(n2.format_into(&mut buf), "-1972");
5757/// ```
58#[stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
58#[stable(feature = "int_format_into", since = "1.98.0")]
5959pub struct NumBuffer<T: NumBufferTrait> {
6060 pub(crate) buf: T::Buf,
6161 phantom: core::marker::PhantomData<T>,
6262}
6363
64#[stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
64#[stable(feature = "int_format_into", since = "1.98.0")]
6565impl<T: NumBufferTrait> core::fmt::Debug for NumBuffer<T> {
6666 fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
6767 f.debug_struct("NumBuffer").finish()
6868 }
6969}
7070
71#[stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
71#[stable(feature = "int_format_into", since = "1.98.0")]
7272impl<T: NumBufferTrait> NumBuffer<T> {
7373 /// Initializes internal buffer.
74 #[stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
75 #[rustc_const_stable(feature = "int_format_into", since = "CURRENT_RUSTC_VERSION")]
74 #[stable(feature = "int_format_into", since = "1.98.0")]
75 #[rustc_const_stable(feature = "int_format_into", since = "1.98.0")]
7676 pub const fn new() -> Self {
7777 NumBuffer { buf: T::DEFAULT, phantom: core::marker::PhantomData }
7878 }
library/core/src/num/f32.rs+10-10
......@@ -1694,8 +1694,8 @@ impl f32 {
16941694 ///
16951695 /// See [algebraic operators](primitive@f32#algebraic-operators) for more info.
16961696 #[must_use = "method returns a new number and does not mutate the original value"]
1697 #[stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1698 #[rustc_const_stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1697 #[stable(feature = "float_algebraic", since = "1.98.0")]
1698 #[rustc_const_stable(feature = "float_algebraic", since = "1.98.0")]
16991699 #[inline]
17001700 pub const fn algebraic_add(self, rhs: f32) -> f32 {
17011701 intrinsics::fadd_algebraic(self, rhs)
......@@ -1705,8 +1705,8 @@ impl f32 {
17051705 ///
17061706 /// See [algebraic operators](primitive@f32#algebraic-operators) for more info.
17071707 #[must_use = "method returns a new number and does not mutate the original value"]
1708 #[stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1709 #[rustc_const_stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1708 #[stable(feature = "float_algebraic", since = "1.98.0")]
1709 #[rustc_const_stable(feature = "float_algebraic", since = "1.98.0")]
17101710 #[inline]
17111711 pub const fn algebraic_sub(self, rhs: f32) -> f32 {
17121712 intrinsics::fsub_algebraic(self, rhs)
......@@ -1716,8 +1716,8 @@ impl f32 {
17161716 ///
17171717 /// See [algebraic operators](primitive@f32#algebraic-operators) for more info.
17181718 #[must_use = "method returns a new number and does not mutate the original value"]
1719 #[stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1720 #[rustc_const_stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1719 #[stable(feature = "float_algebraic", since = "1.98.0")]
1720 #[rustc_const_stable(feature = "float_algebraic", since = "1.98.0")]
17211721 #[inline]
17221722 pub const fn algebraic_mul(self, rhs: f32) -> f32 {
17231723 intrinsics::fmul_algebraic(self, rhs)
......@@ -1727,8 +1727,8 @@ impl f32 {
17271727 ///
17281728 /// See [algebraic operators](primitive@f32#algebraic-operators) for more info.
17291729 #[must_use = "method returns a new number and does not mutate the original value"]
1730 #[stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1731 #[rustc_const_stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1730 #[stable(feature = "float_algebraic", since = "1.98.0")]
1731 #[rustc_const_stable(feature = "float_algebraic", since = "1.98.0")]
17321732 #[inline]
17331733 pub const fn algebraic_div(self, rhs: f32) -> f32 {
17341734 intrinsics::fdiv_algebraic(self, rhs)
......@@ -1738,8 +1738,8 @@ impl f32 {
17381738 ///
17391739 /// See [algebraic operators](primitive@f32#algebraic-operators) for more info.
17401740 #[must_use = "method returns a new number and does not mutate the original value"]
1741 #[stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1742 #[rustc_const_stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1741 #[stable(feature = "float_algebraic", since = "1.98.0")]
1742 #[rustc_const_stable(feature = "float_algebraic", since = "1.98.0")]
17431743 #[inline]
17441744 pub const fn algebraic_rem(self, rhs: f32) -> f32 {
17451745 intrinsics::frem_algebraic(self, rhs)
library/core/src/num/f64.rs+10-10
......@@ -1674,8 +1674,8 @@ impl f64 {
16741674 ///
16751675 /// See [algebraic operators](primitive@f32#algebraic-operators) for more info.
16761676 #[must_use = "method returns a new number and does not mutate the original value"]
1677 #[stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1678 #[rustc_const_stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1677 #[stable(feature = "float_algebraic", since = "1.98.0")]
1678 #[rustc_const_stable(feature = "float_algebraic", since = "1.98.0")]
16791679 #[inline]
16801680 pub const fn algebraic_add(self, rhs: f64) -> f64 {
16811681 intrinsics::fadd_algebraic(self, rhs)
......@@ -1685,8 +1685,8 @@ impl f64 {
16851685 ///
16861686 /// See [algebraic operators](primitive@f32#algebraic-operators) for more info.
16871687 #[must_use = "method returns a new number and does not mutate the original value"]
1688 #[stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1689 #[rustc_const_stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1688 #[stable(feature = "float_algebraic", since = "1.98.0")]
1689 #[rustc_const_stable(feature = "float_algebraic", since = "1.98.0")]
16901690 #[inline]
16911691 pub const fn algebraic_sub(self, rhs: f64) -> f64 {
16921692 intrinsics::fsub_algebraic(self, rhs)
......@@ -1696,8 +1696,8 @@ impl f64 {
16961696 ///
16971697 /// See [algebraic operators](primitive@f32#algebraic-operators) for more info.
16981698 #[must_use = "method returns a new number and does not mutate the original value"]
1699 #[stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1700 #[rustc_const_stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1699 #[stable(feature = "float_algebraic", since = "1.98.0")]
1700 #[rustc_const_stable(feature = "float_algebraic", since = "1.98.0")]
17011701 #[inline]
17021702 pub const fn algebraic_mul(self, rhs: f64) -> f64 {
17031703 intrinsics::fmul_algebraic(self, rhs)
......@@ -1707,8 +1707,8 @@ impl f64 {
17071707 ///
17081708 /// See [algebraic operators](primitive@f32#algebraic-operators) for more info.
17091709 #[must_use = "method returns a new number and does not mutate the original value"]
1710 #[stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1711 #[rustc_const_stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1710 #[stable(feature = "float_algebraic", since = "1.98.0")]
1711 #[rustc_const_stable(feature = "float_algebraic", since = "1.98.0")]
17121712 #[inline]
17131713 pub const fn algebraic_div(self, rhs: f64) -> f64 {
17141714 intrinsics::fdiv_algebraic(self, rhs)
......@@ -1718,8 +1718,8 @@ impl f64 {
17181718 ///
17191719 /// See [algebraic operators](primitive@f32#algebraic-operators) for more info.
17201720 #[must_use = "method returns a new number and does not mutate the original value"]
1721 #[stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1722 #[rustc_const_stable(feature = "float_algebraic", since = "CURRENT_RUSTC_VERSION")]
1721 #[stable(feature = "float_algebraic", since = "1.98.0")]
1722 #[rustc_const_stable(feature = "float_algebraic", since = "1.98.0")]
17231723 #[inline]
17241724 pub const fn algebraic_rem(self, rhs: f64) -> f64 {
17251725 intrinsics::frem_algebraic(self, rhs)
library/core/src/num/nonzero.rs+2-2
......@@ -1390,8 +1390,8 @@ macro_rules! nonzero_integer {
13901390 /// #
13911391 #[doc = concat!("assert!(NonZero::<", stringify!($Int), ">::from_str_radix(\"1 \", 10).is_err());")]
13921392 /// ```
1393 #[stable(feature = "nonzero_from_str_radix", since = "CURRENT_RUSTC_VERSION")]
1394 #[rustc_const_stable(feature = "nonzero_from_str_radix", since = "CURRENT_RUSTC_VERSION")]
1393 #[stable(feature = "nonzero_from_str_radix", since = "1.98.0")]
1394 #[rustc_const_stable(feature = "nonzero_from_str_radix", since = "1.98.0")]
13951395 #[inline]
13961396 pub const fn from_str_radix(src: &str, radix: u32) -> Result<Self, ParseIntError> {
13971397 Self::from_ascii_radix(src.as_bytes(), radix)
library/core/src/option.rs+1-1
......@@ -1293,7 +1293,7 @@ impl<T> Option<T> {
12931293 ///
12941294 /// [default value]: Default::default
12951295 #[inline]
1296 #[stable(feature = "result_option_map_or_default", since = "CURRENT_RUSTC_VERSION")]
1296 #[stable(feature = "result_option_map_or_default", since = "1.98.0")]
12971297 #[rustc_const_unstable(feature = "const_option_ops", issue = "143956")]
12981298 pub const fn map_or_default<U, F>(self, f: F) -> U
12991299 where
library/core/src/range.rs+2-2
......@@ -20,7 +20,7 @@ use crate::hash::Hash;
2020
2121mod iter;
2222
23#[stable(feature = "new_range_api_legacy", since = "CURRENT_RUSTC_VERSION")]
23#[stable(feature = "new_range_api_legacy", since = "1.98.0")]
2424pub mod legacy;
2525
2626use core::ops::Bound::{self, Excluded, Included, Unbounded};
......@@ -40,7 +40,7 @@ use crate::iter::Step;
4040// FIXME(range_into_bounds): Ditto. Also consider re-exporting `RangeBounds` and related.
4141use crate::ops::{IntoBounds, OneSidedRange, OneSidedRangeBound, RangeBounds};
4242#[doc(inline)]
43#[stable(feature = "new_range_api_exports", since = "CURRENT_RUSTC_VERSION")]
43#[stable(feature = "new_range_api_exports", since = "1.98.0")]
4444pub use crate::ops::{RangeFull, RangeTo};
4545
4646/// A (half-open) range bounded inclusively below and exclusively above.
library/core/src/range/legacy.rs+1-1
......@@ -7,5 +7,5 @@
77//! The types here are equivalent to those in [`core::ops`].
88
99#[doc(inline)]
10#[stable(feature = "new_range_api_legacy", since = "CURRENT_RUSTC_VERSION")]
10#[stable(feature = "new_range_api_legacy", since = "1.98.0")]
1111pub use crate::ops::{Range, RangeFrom, RangeInclusive, RangeToInclusive};
library/core/src/result.rs+1-1
......@@ -921,7 +921,7 @@ impl<T, E> Result<T, E> {
921921 ///
922922 /// [default value]: Default::default
923923 #[inline]
924 #[stable(feature = "result_option_map_or_default", since = "CURRENT_RUSTC_VERSION")]
924 #[stable(feature = "result_option_map_or_default", since = "1.98.0")]
925925 #[rustc_const_unstable(feature = "const_result_trait_fn", issue = "144211")]
926926 pub const fn map_or_default<U, F>(self, f: F) -> U
927927 where
library/core/src/slice/mod.rs+2-2
......@@ -2759,7 +2759,7 @@ impl<T> [T] {
27592759 /// assert_eq!(v.strip_circumfix(&[10, 50, 40], &[50, 40, 30]), None);
27602760 /// ```
27612761 #[must_use = "returns the subslice without modifying the original"]
2762 #[stable(feature = "strip_circumfix", since = "CURRENT_RUSTC_VERSION")]
2762 #[stable(feature = "strip_circumfix", since = "1.98.0")]
27632763 pub fn strip_circumfix<S, P>(&self, prefix: &P, suffix: &S) -> Option<&[T]>
27642764 where
27652765 T: PartialEq,
......@@ -5317,7 +5317,7 @@ impl<T> [T] {
53175317 /// assert_eq!(iter.next(), Some(Range { start: 5, end: 6 }));
53185318 /// ```
53195319 #[must_use]
5320 #[stable(feature = "substr_range", since = "CURRENT_RUSTC_VERSION")]
5320 #[stable(feature = "substr_range", since = "1.98.0")]
53215321 pub fn subslice_range(&self, subslice: &[T]) -> Option<core::range::Range<usize>> {
53225322 if T::IS_ZST {
53235323 panic!("elements are zero-sized");
library/core/src/str/mod.rs+2-2
......@@ -2519,7 +2519,7 @@ impl str {
25192519 /// ```
25202520 #[must_use = "this returns the remaining substring as a new slice, \
25212521 without modifying the original"]
2522 #[stable(feature = "strip_circumfix", since = "CURRENT_RUSTC_VERSION")]
2522 #[stable(feature = "strip_circumfix", since = "1.98.0")]
25232523 pub fn strip_circumfix<P: Pattern, S: Pattern>(&self, prefix: P, suffix: S) -> Option<&str>
25242524 where
25252525 for<'a> S::Searcher<'a>: ReverseSearcher<'a>,
......@@ -3207,7 +3207,7 @@ impl str {
32073207 /// assert_eq!(iter.next(), Some(Range { start: 9, end: 10 }));
32083208 /// ```
32093209 #[must_use]
3210 #[stable(feature = "substr_range", since = "CURRENT_RUSTC_VERSION")]
3210 #[stable(feature = "substr_range", since = "1.98.0")]
32113211 pub fn substr_range(&self, substr: &str) -> Option<Range<usize>> {
32123212 self.as_bytes().subslice_range(substr.as_bytes())
32133213 }
library/core/src/sync/atomic.rs+9-9
......@@ -617,7 +617,7 @@ impl AtomicBool {
617617 /// ```
618618 #[inline]
619619 #[cfg(target_has_atomic_primitive_alignment = "8")]
620 #[stable(feature = "atomic_from_mut", since = "CURRENT_RUSTC_VERSION")]
620 #[stable(feature = "atomic_from_mut", since = "1.98.0")]
621621 pub fn from_mut(v: &mut bool) -> &mut Self {
622622 // SAFETY: the mutable reference guarantees unique ownership, and
623623 // alignment of both `bool` and `Self` is 1.
......@@ -651,7 +651,7 @@ impl AtomicBool {
651651 /// });
652652 /// ```
653653 #[inline]
654 #[stable(feature = "atomic_from_mut", since = "CURRENT_RUSTC_VERSION")]
654 #[stable(feature = "atomic_from_mut", since = "1.98.0")]
655655 pub fn get_mut_slice(this: &mut [Self]) -> &mut [bool] {
656656 // SAFETY: the mutable reference guarantees unique ownership.
657657 unsafe { &mut *(this as *mut [Self] as *mut [bool]) }
......@@ -675,7 +675,7 @@ impl AtomicBool {
675675 /// ```
676676 #[inline]
677677 #[cfg(target_has_atomic_primitive_alignment = "8")]
678 #[stable(feature = "atomic_from_mut", since = "CURRENT_RUSTC_VERSION")]
678 #[stable(feature = "atomic_from_mut", since = "1.98.0")]
679679 pub fn from_mut_slice(v: &mut [bool]) -> &mut [Self] {
680680 // SAFETY: the mutable reference guarantees unique ownership, and
681681 // alignment of both `bool` and `Self` is 1.
......@@ -1585,7 +1585,7 @@ impl<T> AtomicPtr<T> {
15851585 /// ```
15861586 #[inline]
15871587 #[cfg(target_has_atomic_primitive_alignment = "ptr")]
1588 #[stable(feature = "atomic_from_mut", since = "CURRENT_RUSTC_VERSION")]
1588 #[stable(feature = "atomic_from_mut", since = "1.98.0")]
15891589 pub fn from_mut(v: &mut *mut T) -> &mut Self {
15901590 let [] = [(); align_of::<AtomicPtr<()>>() - align_of::<*mut ()>()];
15911591 // SAFETY:
......@@ -1628,7 +1628,7 @@ impl<T> AtomicPtr<T> {
16281628 /// });
16291629 /// ```
16301630 #[inline]
1631 #[stable(feature = "atomic_from_mut", since = "CURRENT_RUSTC_VERSION")]
1631 #[stable(feature = "atomic_from_mut", since = "1.98.0")]
16321632 pub fn get_mut_slice(this: &mut [Self]) -> &mut [*mut T] {
16331633 // SAFETY: the mutable reference guarantees unique ownership.
16341634 unsafe { &mut *(this as *mut [Self] as *mut [*mut T]) }
......@@ -1662,7 +1662,7 @@ impl<T> AtomicPtr<T> {
16621662 /// ```
16631663 #[inline]
16641664 #[cfg(target_has_atomic_primitive_alignment = "ptr")]
1665 #[stable(feature = "atomic_from_mut", since = "CURRENT_RUSTC_VERSION")]
1665 #[stable(feature = "atomic_from_mut", since = "1.98.0")]
16661666 pub fn from_mut_slice(v: &mut [*mut T]) -> &mut [Self] {
16671667 // SAFETY:
16681668 // - the mutable reference guarantees unique ownership.
......@@ -2725,7 +2725,7 @@ macro_rules! atomic_int {
27252725 ///
27262726 #[inline]
27272727 #[$cfg_align]
2728 #[stable(feature = "atomic_from_mut", since = "CURRENT_RUSTC_VERSION")]
2728 #[stable(feature = "atomic_from_mut", since = "1.98.0")]
27292729 pub fn from_mut(v: &mut $int_type) -> &mut Self {
27302730 let [] = [(); align_of::<Self>() - align_of::<$int_type>()];
27312731 // SAFETY:
......@@ -2764,7 +2764,7 @@ macro_rules! atomic_int {
27642764 /// });
27652765 /// ```
27662766 #[inline]
2767 #[stable(feature = "atomic_from_mut", since = "CURRENT_RUSTC_VERSION")]
2767 #[stable(feature = "atomic_from_mut", since = "1.98.0")]
27682768 pub fn get_mut_slice(this: &mut [Self]) -> &mut [$int_type] {
27692769 // SAFETY: the mutable reference guarantees unique ownership.
27702770 unsafe { &mut *(this as *mut [Self] as *mut [$int_type]) }
......@@ -2798,7 +2798,7 @@ macro_rules! atomic_int {
27982798 /// ```
27992799 #[inline]
28002800 #[$cfg_align]
2801 #[stable(feature = "atomic_from_mut", since = "CURRENT_RUSTC_VERSION")]
2801 #[stable(feature = "atomic_from_mut", since = "1.98.0")]
28022802 pub fn from_mut_slice(v: &mut [$int_type]) -> &mut [Self] {
28032803 let [] = [(); align_of::<Self>() - align_of::<$int_type>()];
28042804 // SAFETY:
library/std/src/env.rs+2-2
......@@ -101,10 +101,10 @@ pub struct VarsOs {
101101 inner: env_imp::Env,
102102}
103103
104#[stable(feature = "env_vars_unimpl_send_sync", since = "CURRENT_RUSTC_VERSION")]
104#[stable(feature = "env_vars_unimpl_send_sync", since = "1.98.0")]
105105impl !Send for VarsOs {}
106106
107#[stable(feature = "env_vars_unimpl_send_sync", since = "CURRENT_RUSTC_VERSION")]
107#[stable(feature = "env_vars_unimpl_send_sync", since = "1.98.0")]
108108impl !Sync for VarsOs {}
109109
110110/// Returns an iterator of (variable, value) pairs of strings, for all the
library/std/src/path.rs+2-2
......@@ -1809,7 +1809,7 @@ impl PathBuf {
18091809 /// let string = path_buf.into_string();
18101810 /// assert_eq!(string, Ok(String::from("foo")));
18111811 /// ```
1812 #[stable(feature = "pathbuf_into_string", since = "CURRENT_RUSTC_VERSION")]
1812 #[stable(feature = "pathbuf_into_string", since = "1.98.0")]
18131813 pub fn into_string(self) -> Result<String, PathBuf> {
18141814 self.into_os_string().into_string().map_err(PathBuf::from)
18151815 }
......@@ -2864,7 +2864,7 @@ impl Path {
28642864 /// let path = Path::new(".");
28652865 /// assert!(!path.is_empty());
28662866 /// ```
2867 #[stable(feature = "path_is_empty", since = "CURRENT_RUSTC_VERSION")]
2867 #[stable(feature = "path_is_empty", since = "1.98.0")]
28682868 pub fn is_empty(&self) -> bool {
28692869 self.as_os_str().is_empty()
28702870 }
library/stdarch/crates/core_arch/src/arm_shared/neon/generated.rs+16-16
......@@ -9597,7 +9597,7 @@ pub fn vcvtq_u32_f32(a: float32x4_t) -> uint32x4_t {
95979597#[rustc_legacy_const_generics(3)]
95989598#[cfg_attr(
95999599 not(target_arch = "arm"),
9600 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9600 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
96019601)]
96029602#[cfg_attr(
96039603 target_arch = "arm",
......@@ -9622,7 +9622,7 @@ pub fn vdot_lane_s32<const LANE: i32>(a: int32x2_t, b: int8x8_t, c: int8x8_t) ->
96229622#[rustc_legacy_const_generics(3)]
96239623#[cfg_attr(
96249624 not(target_arch = "arm"),
9625 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9625 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
96269626)]
96279627#[cfg_attr(
96289628 target_arch = "arm",
......@@ -9647,7 +9647,7 @@ pub fn vdotq_lane_s32<const LANE: i32>(a: int32x4_t, b: int8x16_t, c: int8x8_t)
96479647#[rustc_legacy_const_generics(3)]
96489648#[cfg_attr(
96499649 not(target_arch = "arm"),
9650 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9650 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
96519651)]
96529652#[cfg_attr(
96539653 target_arch = "arm",
......@@ -9672,7 +9672,7 @@ pub fn vdot_lane_u32<const LANE: i32>(a: uint32x2_t, b: uint8x8_t, c: uint8x8_t)
96729672#[rustc_legacy_const_generics(3)]
96739673#[cfg_attr(
96749674 not(target_arch = "arm"),
9675 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9675 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
96769676)]
96779677#[cfg_attr(
96789678 target_arch = "arm",
......@@ -9697,7 +9697,7 @@ pub fn vdotq_lane_u32<const LANE: i32>(a: uint32x4_t, b: uint8x16_t, c: uint8x8_
96979697#[rustc_legacy_const_generics(3)]
96989698#[cfg_attr(
96999699 not(target_arch = "arm"),
9700 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9700 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
97019701)]
97029702#[cfg_attr(
97039703 target_arch = "arm",
......@@ -9722,7 +9722,7 @@ pub fn vdot_laneq_s32<const LANE: i32>(a: int32x2_t, b: int8x8_t, c: int8x16_t)
97229722#[rustc_legacy_const_generics(3)]
97239723#[cfg_attr(
97249724 not(target_arch = "arm"),
9725 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9725 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
97269726)]
97279727#[cfg_attr(
97289728 target_arch = "arm",
......@@ -9747,7 +9747,7 @@ pub fn vdotq_laneq_s32<const LANE: i32>(a: int32x4_t, b: int8x16_t, c: int8x16_t
97479747#[rustc_legacy_const_generics(3)]
97489748#[cfg_attr(
97499749 not(target_arch = "arm"),
9750 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9750 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
97519751)]
97529752#[cfg_attr(
97539753 target_arch = "arm",
......@@ -9772,7 +9772,7 @@ pub fn vdot_laneq_u32<const LANE: i32>(a: uint32x2_t, b: uint8x8_t, c: uint8x16_
97729772#[rustc_legacy_const_generics(3)]
97739773#[cfg_attr(
97749774 not(target_arch = "arm"),
9775 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9775 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
97769776)]
97779777#[cfg_attr(
97789778 target_arch = "arm",
......@@ -9797,7 +9797,7 @@ pub fn vdotq_laneq_u32<const LANE: i32>(a: uint32x4_t, b: uint8x16_t, c: uint8x1
97979797)]
97989798#[cfg_attr(
97999799 not(target_arch = "arm"),
9800 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9800 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
98019801)]
98029802#[cfg_attr(
98039803 target_arch = "arm",
......@@ -9827,7 +9827,7 @@ pub fn vdot_s32(a: int32x2_t, b: int8x8_t, c: int8x8_t) -> int32x2_t {
98279827)]
98289828#[cfg_attr(
98299829 not(target_arch = "arm"),
9830 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9830 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
98319831)]
98329832#[cfg_attr(
98339833 target_arch = "arm",
......@@ -9863,7 +9863,7 @@ pub fn vdot_s32(a: int32x2_t, b: int8x8_t, c: int8x8_t) -> int32x2_t {
98639863)]
98649864#[cfg_attr(
98659865 not(target_arch = "arm"),
9866 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9866 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
98679867)]
98689868#[cfg_attr(
98699869 target_arch = "arm",
......@@ -9893,7 +9893,7 @@ pub fn vdotq_s32(a: int32x4_t, b: int8x16_t, c: int8x16_t) -> int32x4_t {
98939893)]
98949894#[cfg_attr(
98959895 not(target_arch = "arm"),
9896 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9896 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
98979897)]
98989898#[cfg_attr(
98999899 target_arch = "arm",
......@@ -9931,7 +9931,7 @@ pub fn vdotq_s32(a: int32x4_t, b: int8x16_t, c: int8x16_t) -> int32x4_t {
99319931)]
99329932#[cfg_attr(
99339933 not(target_arch = "arm"),
9934 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9934 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
99359935)]
99369936#[cfg_attr(
99379937 target_arch = "arm",
......@@ -9961,7 +9961,7 @@ pub fn vdot_u32(a: uint32x2_t, b: uint8x8_t, c: uint8x8_t) -> uint32x2_t {
99619961)]
99629962#[cfg_attr(
99639963 not(target_arch = "arm"),
9964 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
9964 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
99659965)]
99669966#[cfg_attr(
99679967 target_arch = "arm",
......@@ -9997,7 +9997,7 @@ pub fn vdot_u32(a: uint32x2_t, b: uint8x8_t, c: uint8x8_t) -> uint32x2_t {
99979997)]
99989998#[cfg_attr(
99999999 not(target_arch = "arm"),
10000 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
10000 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
1000110001)]
1000210002#[cfg_attr(
1000310003 target_arch = "arm",
......@@ -10027,7 +10027,7 @@ pub fn vdotq_u32(a: uint32x4_t, b: uint8x16_t, c: uint8x16_t) -> uint32x4_t {
1002710027)]
1002810028#[cfg_attr(
1002910029 not(target_arch = "arm"),
10030 stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")
10030 stable(feature = "stdarch_neon_dotprod", since = "1.98.0")
1003110031)]
1003210032#[cfg_attr(
1003310033 target_arch = "arm",
library/stdarch/crates/core_arch/src/loongarch64/mod.rs+8-8
......@@ -62,56 +62,56 @@ unsafe extern "unadjusted" {
6262
6363/// Calculate the CRC value using the IEEE 802.3 polynomial (0xEDB88320)
6464#[inline(always)]
65#[stable(feature = "stdarch_loongarch_crc", since = "CURRENT_RUSTC_VERSION")]
65#[stable(feature = "stdarch_loongarch_crc", since = "1.98.0")]
6666pub fn crc_w_b_w(a: i8, b: i32) -> i32 {
6767 unsafe { __crc_w_b_w(a as i32, b) }
6868}
6969
7070/// Calculate the CRC value using the IEEE 802.3 polynomial (0xEDB88320)
7171#[inline(always)]
72#[stable(feature = "stdarch_loongarch_crc", since = "CURRENT_RUSTC_VERSION")]
72#[stable(feature = "stdarch_loongarch_crc", since = "1.98.0")]
7373pub fn crc_w_h_w(a: i16, b: i32) -> i32 {
7474 unsafe { __crc_w_h_w(a as i32, b) }
7575}
7676
7777/// Calculate the CRC value using the IEEE 802.3 polynomial (0xEDB88320)
7878#[inline(always)]
79#[stable(feature = "stdarch_loongarch_crc", since = "CURRENT_RUSTC_VERSION")]
79#[stable(feature = "stdarch_loongarch_crc", since = "1.98.0")]
8080pub fn crc_w_w_w(a: i32, b: i32) -> i32 {
8181 unsafe { __crc_w_w_w(a, b) }
8282}
8383
8484/// Calculate the CRC value using the IEEE 802.3 polynomial (0xEDB88320)
8585#[inline(always)]
86#[stable(feature = "stdarch_loongarch_crc", since = "CURRENT_RUSTC_VERSION")]
86#[stable(feature = "stdarch_loongarch_crc", since = "1.98.0")]
8787pub fn crc_w_d_w(a: i64, b: i32) -> i32 {
8888 unsafe { __crc_w_d_w(a, b) }
8989}
9090
9191/// Calculate the CRC value using the Castagnoli polynomial (0x82F63B78)
9292#[inline(always)]
93#[stable(feature = "stdarch_loongarch_crc", since = "CURRENT_RUSTC_VERSION")]
93#[stable(feature = "stdarch_loongarch_crc", since = "1.98.0")]
9494pub fn crcc_w_b_w(a: i8, b: i32) -> i32 {
9595 unsafe { __crcc_w_b_w(a as i32, b) }
9696}
9797
9898/// Calculate the CRC value using the Castagnoli polynomial (0x82F63B78)
9999#[inline(always)]
100#[stable(feature = "stdarch_loongarch_crc", since = "CURRENT_RUSTC_VERSION")]
100#[stable(feature = "stdarch_loongarch_crc", since = "1.98.0")]
101101pub fn crcc_w_h_w(a: i16, b: i32) -> i32 {
102102 unsafe { __crcc_w_h_w(a as i32, b) }
103103}
104104
105105/// Calculate the CRC value using the Castagnoli polynomial (0x82F63B78)
106106#[inline(always)]
107#[stable(feature = "stdarch_loongarch_crc", since = "CURRENT_RUSTC_VERSION")]
107#[stable(feature = "stdarch_loongarch_crc", since = "1.98.0")]
108108pub fn crcc_w_w_w(a: i32, b: i32) -> i32 {
109109 unsafe { __crcc_w_w_w(a, b) }
110110}
111111
112112/// Calculate the CRC value using the Castagnoli polynomial (0x82F63B78)
113113#[inline(always)]
114#[stable(feature = "stdarch_loongarch_crc", since = "CURRENT_RUSTC_VERSION")]
114#[stable(feature = "stdarch_loongarch_crc", since = "1.98.0")]
115115pub fn crcc_w_d_w(a: i64, b: i32) -> i32 {
116116 unsafe { __crcc_w_d_w(a, b) }
117117}
library/stdarch/crates/stdarch-gen-arm/spec/neon/arm_shared.spec.yml+4-4
......@@ -14,9 +14,9 @@ neon-stable: &neon-stable
1414neon-stable-fp16: &neon-stable-fp16
1515 FnCall: [stable, ['feature = "stdarch_neon_fp16"', 'since = "1.94.0"']]
1616
17# #[stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION")]
17# #[stable(feature = "stdarch_neon_dotprod", since = "1.98.0")]
1818neon-stable-dotprod: &neon-stable-dotprod
19 FnCall: [stable, ['feature = "stdarch_neon_dotprod"', 'since = "CURRENT_RUSTC_VERSION"']]
19 FnCall: [stable, ['feature = "stdarch_neon_dotprod"', 'since = "1.98.0"']]
2020
2121# #[cfg_attr(target_arch = "arm", unstable(feature = "stdarch_arm_neon_intrinsics", issue = "111800"))]
2222neon-cfg-arm-unstable: &neon-cfg-arm-unstable
......@@ -63,9 +63,9 @@ neon-not-arm-stable: &neon-not-arm-stable
6363neon-not-arm-stable-fp16: &neon-not-arm-stable-fp16
6464 FnCall: [cfg_attr, [{ FnCall: [not, ['target_arch = "arm"']]}, {FnCall: [stable, ['feature = "stdarch_neon_fp16"', 'since = "1.94.0"']]}]]
6565
66# #[cfg_attr(not(target_arch = "arm"), stable(feature = "stdarch_neon_dotprod", since = "CURRENT_RUSTC_VERSION"))]
66# #[cfg_attr(not(target_arch = "arm"), stable(feature = "stdarch_neon_dotprod", since = "1.98.0"))]
6767neon-not-arm-stable-dotprod: &neon-not-arm-stable-dotprod
68 FnCall: [cfg_attr, [{ FnCall: [not, ['target_arch = "arm"']]}, {FnCall: [stable, ['feature = "stdarch_neon_dotprod"', 'since = "CURRENT_RUSTC_VERSION"']]}]]
68 FnCall: [cfg_attr, [{ FnCall: [not, ['target_arch = "arm"']]}, {FnCall: [stable, ['feature = "stdarch_neon_dotprod"', 'since = "1.98.0"']]}]]
6969
7070# #[cfg_attr(all(test, not(target_env = "msvc"))]
7171msvc-disabled: &msvc-disabled
src/ci/channel+1-1
......@@ -1 +1 @@
1nightly
1beta