mirror of https://github.com/rust-lang/rust.git
Remove `feature(effects)` from the standard library
This commit is contained in:
parent
e32ea4822b
commit
3b14b756d8
|
@ -175,7 +175,6 @@
|
||||||
#![feature(const_mut_refs)]
|
#![feature(const_mut_refs)]
|
||||||
#![feature(const_precise_live_drops)]
|
#![feature(const_precise_live_drops)]
|
||||||
#![feature(const_ptr_write)]
|
#![feature(const_ptr_write)]
|
||||||
#![feature(const_trait_impl)]
|
|
||||||
#![feature(const_try)]
|
#![feature(const_try)]
|
||||||
#![feature(decl_macro)]
|
#![feature(decl_macro)]
|
||||||
#![feature(dropck_eyepatch)]
|
#![feature(dropck_eyepatch)]
|
||||||
|
|
|
@ -245,7 +245,6 @@ use self::Ordering::*;
|
||||||
append_const_msg
|
append_const_msg
|
||||||
)]
|
)]
|
||||||
#[rustc_diagnostic_item = "PartialEq"]
|
#[rustc_diagnostic_item = "PartialEq"]
|
||||||
#[const_trait]
|
|
||||||
pub trait PartialEq<Rhs: ?Sized = Self> {
|
pub trait PartialEq<Rhs: ?Sized = Self> {
|
||||||
/// This method tests for `self` and `other` values to be equal, and is used
|
/// This method tests for `self` and `other` values to be equal, and is used
|
||||||
/// by `==`.
|
/// by `==`.
|
||||||
|
@ -1475,8 +1474,7 @@ mod impls {
|
||||||
macro_rules! partial_eq_impl {
|
macro_rules! partial_eq_impl {
|
||||||
($($t:ty)*) => ($(
|
($($t:ty)*) => ($(
|
||||||
#[stable(feature = "rust1", since = "1.0.0")]
|
#[stable(feature = "rust1", since = "1.0.0")]
|
||||||
#[rustc_const_unstable(feature = "const_cmp", issue = "92391")]
|
impl PartialEq for $t {
|
||||||
impl const PartialEq for $t {
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn eq(&self, other: &$t) -> bool { (*self) == (*other) }
|
fn eq(&self, other: &$t) -> bool { (*self) == (*other) }
|
||||||
#[inline]
|
#[inline]
|
||||||
|
|
|
@ -60,7 +60,7 @@ const fn escape_ascii<const N: usize>(byte: u8) -> ([ascii::Char; N], Range<u8>)
|
||||||
const fn escape_unicode<const N: usize>(c: char) -> ([ascii::Char; N], Range<u8>) {
|
const fn escape_unicode<const N: usize>(c: char) -> ([ascii::Char; N], Range<u8>) {
|
||||||
const { assert!(N >= 10 && N < u8::MAX as usize) };
|
const { assert!(N >= 10 && N < u8::MAX as usize) };
|
||||||
|
|
||||||
let c = u32::from(c);
|
let c = c as u32;
|
||||||
|
|
||||||
// OR-ing `1` ensures that for `c == 0` the code computes that
|
// OR-ing `1` ensures that for `c == 0` the code computes that
|
||||||
// one digit should be printed.
|
// one digit should be printed.
|
||||||
|
|
|
@ -515,7 +515,9 @@ impl CStr {
|
||||||
#[inline]
|
#[inline]
|
||||||
#[must_use]
|
#[must_use]
|
||||||
const fn as_non_null_ptr(&self) -> NonNull<c_char> {
|
const fn as_non_null_ptr(&self) -> NonNull<c_char> {
|
||||||
NonNull::from(&self.inner).as_non_null_ptr()
|
// FIXME(effects) replace with `NonNull::from`
|
||||||
|
// SAFETY: a reference is never null
|
||||||
|
unsafe { NonNull::new_unchecked(&self.inner as *const [c_char] as *mut [c_char]) }.as_non_null_ptr()
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Returns the length of `self`. Like C's `strlen`, this does not include the nul terminator.
|
/// Returns the length of `self`. Like C's `strlen`, this does not include the nul terminator.
|
||||||
|
|
|
@ -214,13 +214,11 @@
|
||||||
#![feature(const_mut_refs)]
|
#![feature(const_mut_refs)]
|
||||||
#![feature(const_precise_live_drops)]
|
#![feature(const_precise_live_drops)]
|
||||||
#![feature(const_refs_to_cell)]
|
#![feature(const_refs_to_cell)]
|
||||||
#![feature(const_trait_impl)]
|
|
||||||
#![feature(decl_macro)]
|
#![feature(decl_macro)]
|
||||||
#![feature(deprecated_suggestion)]
|
#![feature(deprecated_suggestion)]
|
||||||
#![feature(doc_cfg)]
|
#![feature(doc_cfg)]
|
||||||
#![feature(doc_cfg_hide)]
|
#![feature(doc_cfg_hide)]
|
||||||
#![feature(doc_notable_trait)]
|
#![feature(doc_notable_trait)]
|
||||||
#![feature(effects)]
|
|
||||||
#![feature(extern_types)]
|
#![feature(extern_types)]
|
||||||
#![feature(f128)]
|
#![feature(f128)]
|
||||||
#![feature(f16)]
|
#![feature(f16)]
|
||||||
|
|
|
@ -944,7 +944,6 @@ marker_impls! {
|
||||||
#[lang = "destruct"]
|
#[lang = "destruct"]
|
||||||
#[rustc_on_unimplemented(message = "can't drop `{Self}`", append_const_msg)]
|
#[rustc_on_unimplemented(message = "can't drop `{Self}`", append_const_msg)]
|
||||||
#[rustc_deny_explicit_impl(implement_via_object = false)]
|
#[rustc_deny_explicit_impl(implement_via_object = false)]
|
||||||
#[const_trait]
|
|
||||||
pub trait Destruct {}
|
pub trait Destruct {}
|
||||||
|
|
||||||
/// A marker for tuple types.
|
/// A marker for tuple types.
|
||||||
|
|
|
@ -33,7 +33,6 @@ use super::{IntErrorKind, ParseIntError};
|
||||||
reason = "implementation detail which may disappear or be replaced at any time",
|
reason = "implementation detail which may disappear or be replaced at any time",
|
||||||
issue = "none"
|
issue = "none"
|
||||||
)]
|
)]
|
||||||
#[const_trait]
|
|
||||||
pub unsafe trait ZeroablePrimitive: Sized + Copy + private::Sealed {
|
pub unsafe trait ZeroablePrimitive: Sized + Copy + private::Sealed {
|
||||||
#[doc(hidden)]
|
#[doc(hidden)]
|
||||||
type NonZeroInner: Sized + Copy;
|
type NonZeroInner: Sized + Copy;
|
||||||
|
@ -47,7 +46,6 @@ macro_rules! impl_zeroable_primitive {
|
||||||
reason = "implementation detail which may disappear or be replaced at any time",
|
reason = "implementation detail which may disappear or be replaced at any time",
|
||||||
issue = "none"
|
issue = "none"
|
||||||
)]
|
)]
|
||||||
#[const_trait]
|
|
||||||
pub trait Sealed {}
|
pub trait Sealed {}
|
||||||
|
|
||||||
$(
|
$(
|
||||||
|
@ -70,14 +68,14 @@ macro_rules! impl_zeroable_primitive {
|
||||||
reason = "implementation detail which may disappear or be replaced at any time",
|
reason = "implementation detail which may disappear or be replaced at any time",
|
||||||
issue = "none"
|
issue = "none"
|
||||||
)]
|
)]
|
||||||
impl const private::Sealed for $primitive {}
|
impl private::Sealed for $primitive {}
|
||||||
|
|
||||||
#[unstable(
|
#[unstable(
|
||||||
feature = "nonzero_internals",
|
feature = "nonzero_internals",
|
||||||
reason = "implementation detail which may disappear or be replaced at any time",
|
reason = "implementation detail which may disappear or be replaced at any time",
|
||||||
issue = "none"
|
issue = "none"
|
||||||
)]
|
)]
|
||||||
unsafe impl const ZeroablePrimitive for $primitive {
|
unsafe impl ZeroablePrimitive for $primitive {
|
||||||
type NonZeroInner = private::$NonZeroInner;
|
type NonZeroInner = private::$NonZeroInner;
|
||||||
}
|
}
|
||||||
)+
|
)+
|
||||||
|
|
|
@ -73,7 +73,6 @@
|
||||||
append_const_msg
|
append_const_msg
|
||||||
)]
|
)]
|
||||||
#[doc(alias = "+")]
|
#[doc(alias = "+")]
|
||||||
#[const_trait]
|
|
||||||
pub trait Add<Rhs = Self> {
|
pub trait Add<Rhs = Self> {
|
||||||
/// The resulting type after applying the `+` operator.
|
/// The resulting type after applying the `+` operator.
|
||||||
#[stable(feature = "rust1", since = "1.0.0")]
|
#[stable(feature = "rust1", since = "1.0.0")]
|
||||||
|
@ -95,8 +94,7 @@ pub trait Add<Rhs = Self> {
|
||||||
macro_rules! add_impl {
|
macro_rules! add_impl {
|
||||||
($($t:ty)*) => ($(
|
($($t:ty)*) => ($(
|
||||||
#[stable(feature = "rust1", since = "1.0.0")]
|
#[stable(feature = "rust1", since = "1.0.0")]
|
||||||
#[rustc_const_unstable(feature = "const_ops", issue = "90080")]
|
impl Add for $t {
|
||||||
impl const Add for $t {
|
|
||||||
type Output = $t;
|
type Output = $t;
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
|
|
|
@ -282,7 +282,7 @@ impl<'a> Context<'a> {
|
||||||
pub const fn ext(&mut self) -> &mut dyn Any {
|
pub const fn ext(&mut self) -> &mut dyn Any {
|
||||||
// FIXME: this field makes Context extra-weird about unwind safety
|
// FIXME: this field makes Context extra-weird about unwind safety
|
||||||
// can we justify AssertUnwindSafe if we stabilize this? do we care?
|
// can we justify AssertUnwindSafe if we stabilize this? do we care?
|
||||||
match &mut *self.ext {
|
match &mut self.ext.0 {
|
||||||
ExtData::Some(data) => *data,
|
ExtData::Some(data) => *data,
|
||||||
ExtData::None(unit) => unit,
|
ExtData::None(unit) => unit,
|
||||||
}
|
}
|
||||||
|
@ -356,7 +356,7 @@ impl<'a> ContextBuilder<'a> {
|
||||||
#[rustc_const_unstable(feature = "const_waker", issue = "102012")]
|
#[rustc_const_unstable(feature = "const_waker", issue = "102012")]
|
||||||
#[unstable(feature = "context_ext", issue = "123392")]
|
#[unstable(feature = "context_ext", issue = "123392")]
|
||||||
pub const fn from(cx: &'a mut Context<'_>) -> Self {
|
pub const fn from(cx: &'a mut Context<'_>) -> Self {
|
||||||
let ext = match &mut *cx.ext {
|
let ext = match &mut cx.ext.0 {
|
||||||
ExtData::Some(ext) => ExtData::Some(*ext),
|
ExtData::Some(ext) => ExtData::Some(*ext),
|
||||||
ExtData::None(()) => ExtData::None(()),
|
ExtData::None(()) => ExtData::None(()),
|
||||||
};
|
};
|
||||||
|
|
|
@ -284,7 +284,6 @@
|
||||||
#![feature(cfi_encoding)]
|
#![feature(cfi_encoding)]
|
||||||
#![feature(concat_idents)]
|
#![feature(concat_idents)]
|
||||||
#![feature(const_mut_refs)]
|
#![feature(const_mut_refs)]
|
||||||
#![feature(const_trait_impl)]
|
|
||||||
#![feature(decl_macro)]
|
#![feature(decl_macro)]
|
||||||
#![feature(deprecated_suggestion)]
|
#![feature(deprecated_suggestion)]
|
||||||
#![feature(doc_cfg)]
|
#![feature(doc_cfg)]
|
||||||
|
|
Loading…
Reference in New Issue