Skip to content

Commit 13afbda

Browse files
committed
Auto merge of #108862 - Mark-Simulacrum:bootstrap-bump, r=pietroalbini
Bump bootstrap compiler to 1.69 beta r? `@pietroalbini`
2 parents 03b01c5 + df0be2d commit 13afbda

File tree

19 files changed

+457
-481
lines changed

19 files changed

+457
-481
lines changed

compiler/rustc_feature/src/accepted.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ declare_features! (
9191
/// Allows coercing non capturing closures to function pointers.
9292
(accepted, closure_to_fn_coercion, "1.19.0", Some(39817), None),
9393
/// Allows using the CMPXCHG16B target feature.
94-
(accepted, cmpxchg16b_target_feature, "CURRENT_RUSTC_VERSION", Some(44839), None),
94+
(accepted, cmpxchg16b_target_feature, "1.69.0", Some(44839), None),
9595
/// Allows usage of the `compile_error!` macro.
9696
(accepted, compile_error, "1.20.0", Some(40872), None),
9797
/// Allows `impl Trait` in function return types.

compiler/rustc_feature/src/active.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ declare_features! (
161161
/// Allows using `#[lang = ".."]` attribute for linking items to special compiler logic.
162162
(active, lang_items, "1.0.0", None, None),
163163
/// Allows the `multiple_supertrait_upcastable` lint.
164-
(active, multiple_supertrait_upcastable, "CURRENT_RUSTC_VERSION", None, None),
164+
(active, multiple_supertrait_upcastable, "1.69.0", None, None),
165165
/// Allows using `#[omit_gdb_pretty_printer_section]`.
166166
(active, omit_gdb_pretty_printer_section, "1.5.0", None, None),
167167
/// Allows using `#[prelude_import]` on glob `use` items.
@@ -214,7 +214,7 @@ declare_features! (
214214
/// Allows declaring with `#![needs_panic_runtime]` that a panic runtime is needed.
215215
(active, needs_panic_runtime, "1.10.0", Some(32837), None),
216216
/// Allows using `+bundled,+whole-archive` native libs.
217-
(active, packed_bundled_libs, "CURRENT_RUSTC_VERSION", Some(108081), None),
217+
(active, packed_bundled_libs, "1.69.0", Some(108081), None),
218218
/// Allows using the `#![panic_runtime]` attribute.
219219
(active, panic_runtime, "1.10.0", Some(32837), None),
220220
/// Allows using `#[rustc_allow_const_fn_unstable]`.
@@ -468,7 +468,7 @@ declare_features! (
468468
/// Allows using the `non_exhaustive_omitted_patterns` lint.
469469
(active, non_exhaustive_omitted_patterns_lint, "1.57.0", Some(89554), None),
470470
/// Allows `for<T>` binders in where-clauses
471-
(incomplete, non_lifetime_binders, "CURRENT_RUSTC_VERSION", Some(108185), None),
471+
(incomplete, non_lifetime_binders, "1.69.0", Some(108185), None),
472472
/// Allows making `dyn Trait` well-formed even if `Trait` is not object safe.
473473
/// In that case, `dyn Trait: Trait` does not hold. Moreover, coercions and
474474
/// casts in safe Rust to `dyn Trait` for such a `Trait` is also forbidden.

library/alloc/src/lib.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@
8787
#![warn(missing_debug_implementations)]
8888
#![warn(missing_docs)]
8989
#![allow(explicit_outlives_requirements)]
90-
#![cfg_attr(not(bootstrap), warn(multiple_supertrait_upcastable))]
90+
#![warn(multiple_supertrait_upcastable)]
9191
//
9292
// Library features:
9393
#![feature(alloc_layout_extra)]
@@ -195,7 +195,7 @@
195195
#![feature(c_unwind)]
196196
#![feature(with_negative_coherence)]
197197
#![cfg_attr(test, feature(panic_update_hook))]
198-
#![cfg_attr(not(bootstrap), feature(multiple_supertrait_upcastable))]
198+
#![feature(multiple_supertrait_upcastable)]
199199
//
200200
// Rustdoc features:
201201
#![feature(doc_cfg)]

library/core/src/error.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ use crate::fmt::{Debug, Display};
2828
#[stable(feature = "rust1", since = "1.0.0")]
2929
#[cfg_attr(not(test), rustc_diagnostic_item = "Error")]
3030
#[rustc_has_incoherent_inherent_impls]
31-
#[cfg_attr(not(bootstrap), allow(multiple_supertrait_upcastable))]
31+
#[allow(multiple_supertrait_upcastable)]
3232
pub trait Error: Debug + Display {
3333
/// The lower-level source of this error, if any.
3434
///
@@ -489,7 +489,7 @@ impl Error for crate::char::CharTryFromError {
489489
#[stable(feature = "duration_checked_float", since = "1.66.0")]
490490
impl Error for crate::time::TryFromFloatSecsError {}
491491

492-
#[stable(feature = "cstr_from_bytes_until_nul", since = "CURRENT_RUSTC_VERSION")]
492+
#[stable(feature = "cstr_from_bytes_until_nul", since = "1.69.0")]
493493
impl Error for crate::ffi::FromBytesUntilNulError {}
494494

495495
#[unstable(feature = "get_many_mut", issue = "104642")]

library/core/src/ffi/c_str.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -153,10 +153,10 @@ impl Error for FromBytesWithNulError {
153153
/// This error is created by the [`CStr::from_bytes_until_nul`] method.
154154
///
155155
#[derive(Clone, PartialEq, Eq, Debug)]
156-
#[stable(feature = "cstr_from_bytes_until_nul", since = "CURRENT_RUSTC_VERSION")]
156+
#[stable(feature = "cstr_from_bytes_until_nul", since = "1.69.0")]
157157
pub struct FromBytesUntilNulError(());
158158

159-
#[stable(feature = "cstr_from_bytes_until_nul", since = "CURRENT_RUSTC_VERSION")]
159+
#[stable(feature = "cstr_from_bytes_until_nul", since = "1.69.0")]
160160
impl fmt::Display for FromBytesUntilNulError {
161161
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
162162
write!(f, "data provided does not contain a nul")
@@ -324,8 +324,8 @@ impl CStr {
324324
/// ```
325325
///
326326
#[rustc_allow_const_fn_unstable(const_slice_index)]
327-
#[stable(feature = "cstr_from_bytes_until_nul", since = "CURRENT_RUSTC_VERSION")]
328-
#[rustc_const_stable(feature = "cstr_from_bytes_until_nul", since = "CURRENT_RUSTC_VERSION")]
327+
#[stable(feature = "cstr_from_bytes_until_nul", since = "1.69.0")]
328+
#[rustc_const_stable(feature = "cstr_from_bytes_until_nul", since = "1.69.0")]
329329
pub const fn from_bytes_until_nul(bytes: &[u8]) -> Result<&CStr, FromBytesUntilNulError> {
330330
let nul_pos = memchr::memchr(0, bytes);
331331
match nul_pos {

library/core/src/fmt/mod.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,7 @@ extern "C" {
267267
/// family of functions. It contains a function to format the given value. At
268268
/// compile time it is ensured that the function and the value have the correct
269269
/// types, and then this struct is used to canonicalize arguments to one type.
270-
#[cfg_attr(not(bootstrap), lang = "format_argument")]
270+
#[lang = "format_argument"]
271271
#[derive(Copy, Clone)]
272272
#[allow(missing_debug_implementations)]
273273
#[unstable(feature = "fmt_internals", reason = "internal to format_args!", issue = "none")]
@@ -280,7 +280,7 @@ pub struct ArgumentV1<'a> {
280280
/// This struct represents the unsafety of constructing an `Arguments`.
281281
/// It exists, rather than an unsafe function, in order to simplify the expansion
282282
/// of `format_args!(..)` and reduce the scope of the `unsafe` block.
283-
#[cfg_attr(not(bootstrap), lang = "format_unsafe_arg")]
283+
#[lang = "format_unsafe_arg"]
284284
#[allow(missing_debug_implementations)]
285285
#[doc(hidden)]
286286
#[unstable(feature = "fmt_internals", reason = "internal to format_args!", issue = "none")]
@@ -497,7 +497,7 @@ impl<'a> Arguments<'a> {
497497
/// ```
498498
///
499499
/// [`format()`]: ../../std/fmt/fn.format.html
500-
#[cfg_attr(not(bootstrap), lang = "format_arguments")]
500+
#[lang = "format_arguments"]
501501
#[stable(feature = "rust1", since = "1.0.0")]
502502
#[derive(Copy, Clone)]
503503
pub struct Arguments<'a> {

library/core/src/fmt/rt/v1.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
//! these can be statically allocated and are slightly optimized for the runtime
66
#![allow(missing_debug_implementations)]
77

8-
#[cfg_attr(not(bootstrap), lang = "format_placeholder")]
8+
#[lang = "format_placeholder"]
99
#[derive(Copy, Clone)]
1010
// FIXME: Rename this to Placeholder
1111
pub struct Argument {
@@ -37,7 +37,7 @@ impl Argument {
3737
}
3838

3939
/// Possible alignments that can be requested as part of a formatting directive.
40-
#[cfg_attr(not(bootstrap), lang = "format_alignment")]
40+
#[lang = "format_alignment"]
4141
#[derive(Copy, Clone, PartialEq, Eq)]
4242
pub enum Alignment {
4343
/// Indication that contents should be left-aligned.
@@ -51,7 +51,7 @@ pub enum Alignment {
5151
}
5252

5353
/// Used by [width](https://doc.rust-lang.org/std/fmt/#width) and [precision](https://doc.rust-lang.org/std/fmt/#precision) specifiers.
54-
#[cfg_attr(not(bootstrap), lang = "format_count")]
54+
#[lang = "format_count"]
5555
#[derive(Copy, Clone)]
5656
pub enum Count {
5757
/// Specified with a literal number, stores the value

library/core/src/iter/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@
278278
//!
279279
//! ```
280280
//! # #![allow(unused_must_use)]
281-
//! # #![cfg_attr(not(bootstrap), allow(map_unit_fn))]
281+
//! # #![allow(map_unit_fn)]
282282
//! let v = vec![1, 2, 3, 4, 5];
283283
//! v.iter().map(|x| println!("{x}"));
284284
//! ```

library/core/src/iter/traits/iterator.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ fn _assert_is_object_safe(_: &dyn Iterator<Item = ()>) {}
6969
#[doc(notable_trait)]
7070
#[rustc_diagnostic_item = "Iterator"]
7171
#[must_use = "iterators are lazy and do nothing unless consumed"]
72-
#[cfg_attr(not(bootstrap), const_trait)]
72+
#[const_trait]
7373
pub trait Iterator {
7474
/// The type of the elements being iterated over.
7575
#[rustc_diagnostic_item = "IteratorItem"]

library/core/src/lib.rs

+2-3
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@
9595
#![warn(missing_docs)]
9696
#![allow(explicit_outlives_requirements)]
9797
#![allow(incomplete_features)]
98-
#![cfg_attr(not(bootstrap), warn(multiple_supertrait_upcastable))]
98+
#![warn(multiple_supertrait_upcastable)]
9999
//
100100
// Library features:
101101
#![feature(const_align_offset)]
@@ -241,7 +241,7 @@
241241
#![feature(unsized_fn_params)]
242242
#![feature(asm_const)]
243243
#![feature(const_transmute_copy)]
244-
#![cfg_attr(not(bootstrap), feature(multiple_supertrait_upcastable))]
244+
#![feature(multiple_supertrait_upcastable)]
245245
//
246246
// Target features:
247247
#![feature(arm_target_feature)]
@@ -254,7 +254,6 @@
254254
#![feature(sse4a_target_feature)]
255255
#![feature(tbm_target_feature)]
256256
#![feature(wasm_target_feature)]
257-
#![cfg_attr(bootstrap, feature(cmpxchg16b_target_feature))]
258257

259258
// allow using `core::` in intra-doc links
260259
#[allow(unused_extern_crates)]

library/core/src/marker.rs

+2-3
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ unsafe impl<T: Sync + ?Sized> Send for &T {}
9797
#[fundamental] // for Default, for example, which requires that `[T]: !Default` be evaluatable
9898
#[rustc_specialization_trait]
9999
#[rustc_deny_explicit_impl]
100-
#[cfg_attr(not(bootstrap), rustc_coinductive)]
100+
#[rustc_coinductive]
101101
pub trait Sized {
102102
// Empty.
103103
}
@@ -877,8 +877,7 @@ pub trait Tuple {}
877877
/// All types that have the same size and alignment as a `usize` or
878878
/// `*const ()` automatically implement this trait.
879879
#[unstable(feature = "pointer_like_trait", issue = "none")]
880-
#[cfg_attr(bootstrap, lang = "pointer_sized")]
881-
#[cfg_attr(not(bootstrap), lang = "pointer_like")]
880+
#[lang = "pointer_like"]
882881
#[rustc_on_unimplemented(
883882
message = "`{Self}` needs to have the same alignment and size as a pointer",
884883
label = "`{Self}` needs to be a pointer-like type"

library/core/src/net/socket_addr.rs

+13-13
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ impl SocketAddr {
121121
/// ```
122122
#[stable(feature = "ip_addr", since = "1.7.0")]
123123
#[must_use]
124-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
124+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
125125
pub const fn new(ip: IpAddr, port: u16) -> SocketAddr {
126126
match ip {
127127
IpAddr::V4(a) => SocketAddr::V4(SocketAddrV4::new(a, port)),
@@ -141,7 +141,7 @@ impl SocketAddr {
141141
/// ```
142142
#[must_use]
143143
#[stable(feature = "ip_addr", since = "1.7.0")]
144-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
144+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
145145
pub const fn ip(&self) -> IpAddr {
146146
match *self {
147147
SocketAddr::V4(ref a) => IpAddr::V4(*a.ip()),
@@ -182,7 +182,7 @@ impl SocketAddr {
182182
/// ```
183183
#[must_use]
184184
#[stable(feature = "rust1", since = "1.0.0")]
185-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
185+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
186186
pub const fn port(&self) -> u16 {
187187
match *self {
188188
SocketAddr::V4(ref a) => a.port(),
@@ -226,7 +226,7 @@ impl SocketAddr {
226226
/// ```
227227
#[must_use]
228228
#[stable(feature = "sockaddr_checker", since = "1.16.0")]
229-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
229+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
230230
pub const fn is_ipv4(&self) -> bool {
231231
matches!(*self, SocketAddr::V4(_))
232232
}
@@ -248,7 +248,7 @@ impl SocketAddr {
248248
/// ```
249249
#[must_use]
250250
#[stable(feature = "sockaddr_checker", since = "1.16.0")]
251-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
251+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
252252
pub const fn is_ipv6(&self) -> bool {
253253
matches!(*self, SocketAddr::V6(_))
254254
}
@@ -268,7 +268,7 @@ impl SocketAddrV4 {
268268
/// ```
269269
#[stable(feature = "rust1", since = "1.0.0")]
270270
#[must_use]
271-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
271+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
272272
pub const fn new(ip: Ipv4Addr, port: u16) -> SocketAddrV4 {
273273
SocketAddrV4 { ip, port }
274274
}
@@ -285,7 +285,7 @@ impl SocketAddrV4 {
285285
/// ```
286286
#[must_use]
287287
#[stable(feature = "rust1", since = "1.0.0")]
288-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
288+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
289289
pub const fn ip(&self) -> &Ipv4Addr {
290290
&self.ip
291291
}
@@ -318,7 +318,7 @@ impl SocketAddrV4 {
318318
/// ```
319319
#[must_use]
320320
#[stable(feature = "rust1", since = "1.0.0")]
321-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
321+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
322322
pub const fn port(&self) -> u16 {
323323
self.port
324324
}
@@ -359,7 +359,7 @@ impl SocketAddrV6 {
359359
/// ```
360360
#[stable(feature = "rust1", since = "1.0.0")]
361361
#[must_use]
362-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
362+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
363363
pub const fn new(ip: Ipv6Addr, port: u16, flowinfo: u32, scope_id: u32) -> SocketAddrV6 {
364364
SocketAddrV6 { ip, port, flowinfo, scope_id }
365365
}
@@ -376,7 +376,7 @@ impl SocketAddrV6 {
376376
/// ```
377377
#[must_use]
378378
#[stable(feature = "rust1", since = "1.0.0")]
379-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
379+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
380380
pub const fn ip(&self) -> &Ipv6Addr {
381381
&self.ip
382382
}
@@ -409,7 +409,7 @@ impl SocketAddrV6 {
409409
/// ```
410410
#[must_use]
411411
#[stable(feature = "rust1", since = "1.0.0")]
412-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
412+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
413413
pub const fn port(&self) -> u16 {
414414
self.port
415415
}
@@ -452,7 +452,7 @@ impl SocketAddrV6 {
452452
/// ```
453453
#[must_use]
454454
#[stable(feature = "rust1", since = "1.0.0")]
455-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
455+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
456456
pub const fn flowinfo(&self) -> u32 {
457457
self.flowinfo
458458
}
@@ -492,7 +492,7 @@ impl SocketAddrV6 {
492492
/// ```
493493
#[must_use]
494494
#[stable(feature = "rust1", since = "1.0.0")]
495-
#[rustc_const_stable(feature = "const_socketaddr", since = "CURRENT_RUSTC_VERSION")]
495+
#[rustc_const_stable(feature = "const_socketaddr", since = "1.69.0")]
496496
pub const fn scope_id(&self) -> u32 {
497497
self.scope_id
498498
}

library/core/src/ops/try_trait.rs

+1-8
Original file line numberDiff line numberDiff line change
@@ -392,14 +392,7 @@ impl<T> NeverShortCircuit<T> {
392392
pub fn wrap_mut_2<A, B>(
393393
mut f: impl ~const FnMut(A, B) -> T,
394394
) -> impl ~const FnMut(A, B) -> Self {
395-
cfg_if! {
396-
if #[cfg(bootstrap)] {
397-
#[allow(unused_parens)]
398-
(const move |a, b| NeverShortCircuit(f(a, b)))
399-
} else {
400-
const move |a, b| NeverShortCircuit(f(a, b))
401-
}
402-
}
395+
const move |a, b| NeverShortCircuit(f(a, b))
403396
}
404397
}
405398

0 commit comments

Comments
 (0)