diff options
| author | bors <bors@rust-lang.org> | 2021-08-02 02:33:16 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2021-08-02 02:33:16 +0000 |
| commit | effea9a2a0d501db5722d507690a1a66236933bf (patch) | |
| tree | e504e13021242bcf417a32729de4f8101471d6bf /library/core/src | |
| parent | 24bbf7ac2fd6f5e71f5a4873baa4456e45bd648d (diff) | |
| parent | 0851841970f3bcc7616ff7f9c837e19d52c5e0dd (diff) | |
| download | rust-effea9a2a0d501db5722d507690a1a66236933bf.tar.gz rust-effea9a2a0d501db5722d507690a1a66236933bf.zip | |
Auto merge of #87689 - JohnTitor:rollup-ns38b56, r=JohnTitor
Rollup of 13 pull requests Successful merges: - #86183 (Change environment variable getters to error recoverably) - #86439 (Remove `Ipv4Addr::is_ietf_protocol_assignment`) - #86509 (Move `os_str_bytes` to `sys::unix`) - #86593 (Partially stabilize `const_slice_first_last`) - #86936 (Add documentation for `Ipv6MulticastScope`) - #87282 (Ensure `./x.py dist` adheres to `build.tools`) - #87468 (Update rustfmt) - #87504 (Update mdbook.) - #87608 (Remove unused field `Session.system_library_path`) - #87629 (Consistent spelling of "adapter" in the standard library) - #87633 (Update compiler_builtins to fix i128 shift/mul on thumbv6m) - #87644 (Recommend `swap_remove` in `Vec::remove` docs) - #87653 (mark a UB doctest as no_run) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'library/core/src')
| -rw-r--r-- | library/core/src/alloc/mod.rs | 4 | ||||
| -rw-r--r-- | library/core/src/iter/traits/iterator.rs | 6 | ||||
| -rw-r--r-- | library/core/src/ptr/non_null.rs | 8 | ||||
| -rw-r--r-- | library/core/src/slice/mod.rs | 8 |
4 files changed, 16 insertions, 10 deletions
diff --git a/library/core/src/alloc/mod.rs b/library/core/src/alloc/mod.rs index 06a761531b6..1f1033b0437 100644 --- a/library/core/src/alloc/mod.rs +++ b/library/core/src/alloc/mod.rs @@ -338,9 +338,9 @@ pub unsafe trait Allocator { Ok(new_ptr) } - /// Creates a "by reference" adaptor for this instance of `Allocator`. + /// Creates a "by reference" adapter for this instance of `Allocator`. /// - /// The returned adaptor also implements `Allocator` and will simply borrow this. + /// The returned adapter also implements `Allocator` and will simply borrow this. #[inline(always)] fn by_ref(&self) -> &Self where diff --git a/library/core/src/iter/traits/iterator.rs b/library/core/src/iter/traits/iterator.rs index f34adb878c4..537e42f66de 100644 --- a/library/core/src/iter/traits/iterator.rs +++ b/library/core/src/iter/traits/iterator.rs @@ -694,7 +694,7 @@ pub trait Iterator { /// more idiomatic to use a `for` loop, but `for_each` may be more legible /// when processing items at the end of longer iterator chains. In some /// cases `for_each` may also be faster than a loop, because it will use - /// internal iteration on adaptors like `Chain`. + /// internal iteration on adapters like `Chain`. /// /// [`for`]: ../../book/ch03-05-control-flow.html#looping-through-a-collection-with-for /// @@ -1293,7 +1293,7 @@ pub trait Iterator { Take::new(self, n) } - /// An iterator adaptor similar to [`fold`] that holds internal state and + /// An iterator adapter similar to [`fold`] that holds internal state and /// produces a new iterator. /// /// [`fold`]: Iterator::fold @@ -1604,7 +1604,7 @@ pub trait Iterator { /// Borrows an iterator, rather than consuming it. /// - /// This is useful to allow applying iterator adaptors while still + /// This is useful to allow applying iterator adapters while still /// retaining ownership of the original iterator. /// /// # Examples diff --git a/library/core/src/ptr/non_null.rs b/library/core/src/ptr/non_null.rs index 032df7f5a80..87c8674af0d 100644 --- a/library/core/src/ptr/non_null.rs +++ b/library/core/src/ptr/non_null.rs @@ -173,8 +173,14 @@ impl<T: ?Sized> NonNull<T> { /// /// let mut x = 0u32; /// let ptr = unsafe { NonNull::new_unchecked(&mut x as *mut _) }; + /// ``` + /// + /// *Incorrect* usage of this function: + /// + /// ```rust,no_run + /// use std::ptr::NonNull; /// - /// // NEVER DO THAT!!! + /// // NEVER DO THAT!!! This is undefined behavior. ⚠️ /// let ptr = unsafe { NonNull::<u32>::new_unchecked(std::ptr::null_mut()) }; /// ``` #[stable(feature = "nonnull", since = "1.25.0")] diff --git a/library/core/src/slice/mod.rs b/library/core/src/slice/mod.rs index 261b9a3feb7..67eecab99d8 100644 --- a/library/core/src/slice/mod.rs +++ b/library/core/src/slice/mod.rs @@ -139,7 +139,7 @@ impl<T> [T] { /// assert_eq!(None, w.first()); /// ``` #[stable(feature = "rust1", since = "1.0.0")] - #[rustc_const_unstable(feature = "const_slice_first_last", issue = "83570")] + #[rustc_const_stable(feature = "const_slice_first_last_not_mut", since = "1.56.0")] #[inline] pub const fn first(&self) -> Option<&T> { if let [first, ..] = self { Some(first) } else { None } @@ -177,7 +177,7 @@ impl<T> [T] { /// } /// ``` #[stable(feature = "slice_splits", since = "1.5.0")] - #[rustc_const_unstable(feature = "const_slice_first_last", issue = "83570")] + #[rustc_const_stable(feature = "const_slice_first_last_not_mut", since = "1.56.0")] #[inline] pub const fn split_first(&self) -> Option<(&T, &[T])> { if let [first, tail @ ..] = self { Some((first, tail)) } else { None } @@ -217,7 +217,7 @@ impl<T> [T] { /// } /// ``` #[stable(feature = "slice_splits", since = "1.5.0")] - #[rustc_const_unstable(feature = "const_slice_first_last", issue = "83570")] + #[rustc_const_stable(feature = "const_slice_first_last_not_mut", since = "1.56.0")] #[inline] pub const fn split_last(&self) -> Option<(&T, &[T])> { if let [init @ .., last] = self { Some((last, init)) } else { None } @@ -256,7 +256,7 @@ impl<T> [T] { /// assert_eq!(None, w.last()); /// ``` #[stable(feature = "rust1", since = "1.0.0")] - #[rustc_const_unstable(feature = "const_slice_first_last", issue = "83570")] + #[rustc_const_stable(feature = "const_slice_first_last_not_mut", since = "1.56.0")] #[inline] pub const fn last(&self) -> Option<&T> { if let [.., last] = self { Some(last) } else { None } |
