Auto merge of #126273 - pietroalbini:pa-bootstrap-update, r=Mark-Simu… · model-checking/verify-rust-std@17c90d8 (original) (raw)

`@@ -145,8 +145,7 @@

`

145

145

`` //! to into_iter() for boxed slices will defer to the slice implementation on editions before

``

146

146

`//! 2024:

`

147

147

`//!

`

148

``


#![cfg_attr(bootstrap, doc = "```rust,edition2021,ignore")]

149

``


#![cfg_attr(not(bootstrap), doc = "```rust,edition2021")]

``

148


//! ```rust,edition2021

150

149

`//! // Rust 2015, 2018, and 2021:

`

151

150

`//!

`

152

151

`` //! # #![allow(boxed_slice_into_iter)] // override our deny(warnings)

``

`@@ -2123,23 +2122,23 @@ impl FromIterator for Box<[I]> {

`

2123

2122

``

2124

2123

`` /// This implementation is required to make sure that the Box<[I]>: IntoIterator

``

2125

2124

`` /// implementation doesn't overlap with IntoIterator for T where T: Iterator blanket.

``

2126

``

`-

#[stable(feature = "boxed_slice_into_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2125

`+

#[stable(feature = "boxed_slice_into_iter", since = "1.80.0")]

`

2127

2126

`impl<I, A: Allocator> !Iterator for Box<[I], A> {}

`

2128

2127

``

2129

2128

`` /// This implementation is required to make sure that the &Box<[I]>: IntoIterator

``

2130

2129

`` /// implementation doesn't overlap with IntoIterator for T where T: Iterator blanket.

``

2131

``

`-

#[stable(feature = "boxed_slice_into_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2130

`+

#[stable(feature = "boxed_slice_into_iter", since = "1.80.0")]

`

2132

2131

`impl<'a, I, A: Allocator> !Iterator for &'a Box<[I], A> {}

`

2133

2132

``

2134

2133

`` /// This implementation is required to make sure that the &mut Box<[I]>: IntoIterator

``

2135

2134

`` /// implementation doesn't overlap with IntoIterator for T where T: Iterator blanket.

``

2136

``

`-

#[stable(feature = "boxed_slice_into_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2135

`+

#[stable(feature = "boxed_slice_into_iter", since = "1.80.0")]

`

2137

2136

`impl<'a, I, A: Allocator> !Iterator for &'a mut Box<[I], A> {}

`

2138

2137

``

2139

2138

`` // Note: the #[rustc_skip_during_method_dispatch(boxed_slice)] on trait IntoIterator

``

2140

2139

`` // hides this implementation from explicit .into_iter() calls on editions < 2024,

``

2141

2140

`// so those calls will still resolve to the slice implementation, by reference.

`

2142

``

`-

#[stable(feature = "boxed_slice_into_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2141

`+

#[stable(feature = "boxed_slice_into_iter", since = "1.80.0")]

`

2143

2142

`impl<I, A: Allocator> IntoIterator for Box<[I], A> {

`

2144

2143

`type IntoIter = vec::IntoIter<I, A>;

`

2145

2144

`type Item = I;

`

`@@ -2148,7 +2147,7 @@ impl<I, A: Allocator> IntoIterator for Box<[I], A> {

`

2148

2147

`}

`

2149

2148

`}

`

2150

2149

``

2151

``

`-

#[stable(feature = "boxed_slice_into_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2150

`+

#[stable(feature = "boxed_slice_into_iter", since = "1.80.0")]

`

2152

2151

`impl<'a, I, A: Allocator> IntoIterator for &'a Box<[I], A> {

`

2153

2152

`type IntoIter = slice::Iter<'a, I>;

`

2154

2153

`type Item = &'a I;

`

`@@ -2157,7 +2156,7 @@ impl<'a, I, A: Allocator> IntoIterator for &'a Box<[I], A> {

`

2157

2156

`}

`

2158

2157

`}

`

2159

2158

``

2160

``

`-

#[stable(feature = "boxed_slice_into_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2159

`+

#[stable(feature = "boxed_slice_into_iter", since = "1.80.0")]

`

2161

2160

`impl<'a, I, A: Allocator> IntoIterator for &'a mut Box<[I], A> {

`

2162

2161

`type IntoIter = slice::IterMut<'a, I>;

`

2163

2162

`type Item = &'a mut I;

`

`@@ -2167,47 +2166,47 @@ impl<'a, I, A: Allocator> IntoIterator for &'a mut Box<[I], A> {

`

2167

2166

`}

`

2168

2167

``

2169

2168

`#[cfg(not(no_global_oom_handling))]

`

2170

``

`-

#[stable(feature = "boxed_str_from_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2169

`+

#[stable(feature = "boxed_str_from_iter", since = "1.80.0")]

`

2171

2170

`impl FromIterator for Box {

`

2172

2171

`fn from_iter<T: IntoIterator<Item = char>>(iter: T) -> Self {

`

2173

2172

`String::from_iter(iter).into_boxed_str()

`

2174

2173

`}

`

2175

2174

`}

`

2176

2175

``

2177

2176

`#[cfg(not(no_global_oom_handling))]

`

2178

``

`-

#[stable(feature = "boxed_str_from_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2177

`+

#[stable(feature = "boxed_str_from_iter", since = "1.80.0")]

`

2179

2178

`impl<'a> FromIterator<&'a char> for Box {

`

2180

2179

`fn from_iter<T: IntoIterator<Item = &'a char>>(iter: T) -> Self {

`

2181

2180

`String::from_iter(iter).into_boxed_str()

`

2182

2181

`}

`

2183

2182

`}

`

2184

2183

``

2185

2184

`#[cfg(not(no_global_oom_handling))]

`

2186

``

`-

#[stable(feature = "boxed_str_from_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2185

`+

#[stable(feature = "boxed_str_from_iter", since = "1.80.0")]

`

2187

2186

`impl<'a> FromIterator<&'a str> for Box {

`

2188

2187

`fn from_iter<T: IntoIterator<Item = &'a str>>(iter: T) -> Self {

`

2189

2188

`String::from_iter(iter).into_boxed_str()

`

2190

2189

`}

`

2191

2190

`}

`

2192

2191

``

2193

2192

`#[cfg(not(no_global_oom_handling))]

`

2194

``

`-

#[stable(feature = "boxed_str_from_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2193

`+

#[stable(feature = "boxed_str_from_iter", since = "1.80.0")]

`

2195

2194

`impl FromIterator for Box {

`

2196

2195

`fn from_iter<T: IntoIterator<Item = String>>(iter: T) -> Self {

`

2197

2196

`String::from_iter(iter).into_boxed_str()

`

2198

2197

`}

`

2199

2198

`}

`

2200

2199

``

2201

2200

`#[cfg(not(no_global_oom_handling))]

`

2202

``

`-

#[stable(feature = "boxed_str_from_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2201

`+

#[stable(feature = "boxed_str_from_iter", since = "1.80.0")]

`

2203

2202

`impl<A: Allocator> FromIterator<Box<str, A>> for Box {

`

2204

2203

`fn from_iter<T: IntoIterator<Item = Box<str, A>>>(iter: T) -> Self {

`

2205

2204

`String::from_iter(iter).into_boxed_str()

`

2206

2205

`}

`

2207

2206

`}

`

2208

2207

``

2209

2208

`#[cfg(not(no_global_oom_handling))]

`

2210

``

`-

#[stable(feature = "boxed_str_from_iter", since = "CURRENT_RUSTC_VERSION")]

`

``

2209

`+

#[stable(feature = "boxed_str_from_iter", since = "1.80.0")]

`

2211

2210

`impl<'a> FromIterator<Cow<'a, str>> for Box {

`

2212

2211

`fn from_iter<T: IntoIterator<Item = Cow<'a, str>>>(iter: T) -> Self {

`

2213

2212

`String::from_iter(iter).into_boxed_str()

`