@@ -1580,7 +1580,7 @@ impl<T: ?Sized + fmt::Display> fmt::Display for RefMut<'_, T> {
1580
1580
/// `&UnsafeCell<_>` reference); there is no magic whatsoever when dealing with _exclusive_
1581
1581
/// accesses (_e.g._, through an `&mut UnsafeCell<_>`): neither the cell nor the wrapped value
1582
1582
/// may be aliased for the duration of that `&mut` borrow.
1583
- /// This is showcased by the [`.get_mut()`] accessor, which is a non-`unsafe` getter that yields
1583
+ /// This is showcased by the [`.get_mut()`] accessor, which is a _safe_ getter that yields
1584
1584
/// a `&mut T`.
1585
1585
///
1586
1586
/// [`.get_mut()`]: `UnsafeCell::get_mut`
@@ -1618,7 +1618,6 @@ impl<T: ?Sized + fmt::Display> fmt::Display for RefMut<'_, T> {
1618
1618
/// implies exclusive access to its `T`:
1619
1619
///
1620
1620
/// ```rust
1621
- /// #![feature(unsafe_cell_get_mut)]
1622
1621
/// #![forbid(unsafe_code)] // with exclusive accesses,
1623
1622
/// // `UnsafeCell` is a transparent no-op wrapper,
1624
1623
/// // so no need for `unsafe` here.
@@ -1722,7 +1721,6 @@ impl<T: ?Sized> UnsafeCell<T> {
1722
1721
/// # Examples
1723
1722
///
1724
1723
/// ```
1725
- /// #![feature(unsafe_cell_get_mut)]
1726
1724
/// use std::cell::UnsafeCell;
1727
1725
///
1728
1726
/// let mut c = UnsafeCell::new(5);
@@ -1731,7 +1729,7 @@ impl<T: ?Sized> UnsafeCell<T> {
1731
1729
/// assert_eq!(*c.get_mut(), 6);
1732
1730
/// ```
1733
1731
#[ inline]
1734
- #[ unstable ( feature = "unsafe_cell_get_mut" , issue = "76943 " ) ]
1732
+ #[ stable ( feature = "unsafe_cell_get_mut" , since = "1.50.0 " ) ]
1735
1733
pub fn get_mut ( & mut self ) -> & mut T {
1736
1734
& mut self . value
1737
1735
}
0 commit comments