@@ -795,7 +795,6 @@ pub fn discriminant<T>(v: &T) -> Discriminant<T> {
795
795
/// the type:
796
796
///
797
797
/// ```rust
798
- /// # #![feature(manually_drop)]
799
798
/// use std::mem::ManuallyDrop;
800
799
/// struct Peach;
801
800
/// struct Banana;
@@ -821,7 +820,7 @@ pub fn discriminant<T>(v: &T) -> Discriminant<T> {
821
820
/// }
822
821
/// }
823
822
/// ```
824
- #[ unstable ( feature = "manually_drop" , issue = "40673 " ) ]
823
+ #[ stable ( feature = "manually_drop" , since = "1.20.0 " ) ]
825
824
#[ allow( unions_with_drop_fields) ]
826
825
pub union ManuallyDrop < T > { value : T }
827
826
@@ -831,11 +830,10 @@ impl<T> ManuallyDrop<T> {
831
830
/// # Examples
832
831
///
833
832
/// ```rust
834
- /// # #![feature(manually_drop)]
835
833
/// use std::mem::ManuallyDrop;
836
834
/// ManuallyDrop::new(Box::new(()));
837
835
/// ```
838
- #[ unstable ( feature = "manually_drop" , issue = "40673 " ) ]
836
+ #[ stable ( feature = "manually_drop" , since = "1.20.0 " ) ]
839
837
#[ inline]
840
838
pub fn new ( value : T ) -> ManuallyDrop < T > {
841
839
ManuallyDrop { value : value }
@@ -846,12 +844,11 @@ impl<T> ManuallyDrop<T> {
846
844
/// # Examples
847
845
///
848
846
/// ```rust
849
- /// # #![feature(manually_drop)]
850
847
/// use std::mem::ManuallyDrop;
851
848
/// let x = ManuallyDrop::new(Box::new(()));
852
849
/// let _: Box<()> = ManuallyDrop::into_inner(x);
853
850
/// ```
854
- #[ unstable ( feature = "manually_drop" , issue = "40673 " ) ]
851
+ #[ stable ( feature = "manually_drop" , since = "1.20.0 " ) ]
855
852
#[ inline]
856
853
pub fn into_inner ( slot : ManuallyDrop < T > ) -> T {
857
854
unsafe {
@@ -866,14 +863,14 @@ impl<T> ManuallyDrop<T> {
866
863
/// This function runs the destructor of the contained value and thus the wrapped value
867
864
/// now represents uninitialized data. It is up to the user of this method to ensure the
868
865
/// uninitialized data is not actually used.
869
- #[ unstable ( feature = "manually_drop" , issue = "40673 " ) ]
866
+ #[ stable ( feature = "manually_drop" , since = "1.20.0 " ) ]
870
867
#[ inline]
871
868
pub unsafe fn drop ( slot : & mut ManuallyDrop < T > ) {
872
869
ptr:: drop_in_place ( & mut slot. value )
873
870
}
874
871
}
875
872
876
- #[ unstable ( feature = "manually_drop" , issue = "40673 " ) ]
873
+ #[ stable ( feature = "manually_drop" , since = "1.20.0 " ) ]
877
874
impl < T > :: ops:: Deref for ManuallyDrop < T > {
878
875
type Target = T ;
879
876
#[ inline]
@@ -884,7 +881,7 @@ impl<T> ::ops::Deref for ManuallyDrop<T> {
884
881
}
885
882
}
886
883
887
- #[ unstable ( feature = "manually_drop" , issue = "40673 " ) ]
884
+ #[ stable ( feature = "manually_drop" , since = "1.20.0 " ) ]
888
885
impl < T > :: ops:: DerefMut for ManuallyDrop < T > {
889
886
#[ inline]
890
887
fn deref_mut ( & mut self ) -> & mut Self :: Target {
@@ -894,7 +891,7 @@ impl<T> ::ops::DerefMut for ManuallyDrop<T> {
894
891
}
895
892
}
896
893
897
- #[ unstable ( feature = "manually_drop" , issue = "40673 " ) ]
894
+ #[ stable ( feature = "manually_drop" , since = "1.20.0 " ) ]
898
895
impl < T : :: fmt:: Debug > :: fmt:: Debug for ManuallyDrop < T > {
899
896
fn fmt ( & self , fmt : & mut :: fmt:: Formatter ) -> :: fmt:: Result {
900
897
unsafe {
0 commit comments