]> git.lizzy.rs Git - rust.git/commitdiff
Bump to 1.48 bootstrap compiler
authorMark Rousskov <mark.simulacrum@gmail.com>
Wed, 7 Oct 2020 22:56:26 +0000 (18:56 -0400)
committerMark Rousskov <mark.simulacrum@gmail.com>
Wed, 7 Oct 2020 23:51:36 +0000 (19:51 -0400)
library/core/src/intrinsics.rs
library/core/src/lib.rs
library/core/src/slice/mod.rs
library/core/src/task/wake.rs
library/proc_macro/src/lib.rs
library/std/src/lib.rs
src/stage0.txt

index 426cdb12ec4e40118c91c7749c03d8a84dd8bb1e..b2798ea66250f4b49b310aebd1a3672107fa6dce 100644 (file)
     // NOTE: While this makes the intrinsic const stable, we have some custom code in const fn
     // checks that prevent its use within `const fn`.
     #[rustc_const_stable(feature = "const_transmute", since = "1.46.0")]
-    #[cfg_attr(not(bootstrap), rustc_diagnostic_item = "transmute")]
+    #[rustc_diagnostic_item = "transmute"]
     pub fn transmute<T, U>(e: T) -> U;
 
     /// Returns `true` if the actual type given as `T` requires drop
index 3aa68aa1d8d127ad3242b8354e007d83cae89a5e..960a26fd283291ba5c2b8d422877a15c731b167f 100644 (file)
@@ -84,8 +84,8 @@
 #![feature(const_fn_union)]
 #![feature(const_assume)]
 #![cfg_attr(not(bootstrap), feature(const_impl_trait))]
-#![cfg_attr(not(bootstrap), feature(const_fn_floating_point_arithmetic))]
-#![cfg_attr(not(bootstrap), feature(const_fn_fn_ptr_basics))]
+#![feature(const_fn_floating_point_arithmetic)]
+#![feature(const_fn_fn_ptr_basics)]
 #![feature(const_generics)]
 #![feature(const_option)]
 #![feature(const_precise_live_drops)]
 #![feature(untagged_unions)]
 #![feature(unwind_attributes)]
 #![feature(variant_count)]
-#![cfg_attr(bootstrap, feature(doc_alias))]
 #![feature(tbm_target_feature)]
 #![feature(sse4a_target_feature)]
 #![feature(arm_target_feature)]
index 73d085c3fb29910675ff831380e5c62cffe107db..13d0dda19c7575d6009a3f92710ae2646008724e 100644 (file)
@@ -79,7 +79,6 @@
 #[lang = "slice"]
 #[cfg(not(test))]
 impl<T> [T] {
-    #[cfg(not(bootstrap))] // Unused in bootstrap
     /// The maximum, inclusive, length such that the slice is no larger than `isize::MAX` bytes.
     /// This constant is used in `len` below.
     const MAX_LEN_BOUND: usize = {
@@ -108,15 +107,12 @@ pub const fn len(&self) -> usize {
         // Only `std` can make this guarantee.
         let raw_len = unsafe { crate::ptr::Repr { rust: self }.raw.len };
 
-        #[cfg(not(bootstrap))] // FIXME: executing assume in const eval not supported in bootstrap
         // SAFETY: this assume asserts that `raw_len * size_of::<T>() <= isize::MAX`. All
         // references must point to one allocation with size at most isize::MAX. Note that we the
         // multiplication could appear to overflow until we have assumed the bound. This overflow
         // would make additional values appear 'valid' and then `n > 1` the range of permissible
         // length would no longer be the full or even a single range.
-        unsafe {
-            crate::intrinsics::assume(raw_len <= Self::MAX_LEN_BOUND)
-        };
+        unsafe { crate::intrinsics::assume(raw_len <= Self::MAX_LEN_BOUND) };
 
         raw_len
     }
index ba3fb35caaf9d2a3b8743cc6550b011f711b15bd..8cca9dc904293330fb34d9a55c6c25528492f3a9 100644 (file)
@@ -130,8 +130,7 @@ impl RawWakerVTable {
     #[rustc_promotable]
     #[stable(feature = "futures_api", since = "1.36.0")]
     #[rustc_const_stable(feature = "futures_api", since = "1.36.0")]
-    #[cfg_attr(not(bootstrap), allow_internal_unstable(const_fn_fn_ptr_basics))]
-    #[cfg_attr(bootstrap, rustc_allow_const_fn_ptr)]
+    #[allow_internal_unstable(const_fn_fn_ptr_basics)]
     pub const fn new(
         clone: unsafe fn(*const ()) -> RawWaker,
         wake: unsafe fn(*const ()),
index 93fa1f4e585739971d68cd75e89273e9cb148df5..139b3591206e73df0d2d5a8b7a714e95fb12d0e5 100644 (file)
@@ -21,7 +21,7 @@
 #![feature(nll)]
 #![feature(staged_api)]
 #![feature(const_fn)]
-#![cfg_attr(not(bootstrap), feature(const_fn_fn_ptr_basics))]
+#![feature(const_fn_fn_ptr_basics)]
 #![feature(allow_internal_unstable)]
 #![feature(decl_macro)]
 #![feature(extern_types)]
index b2bd5f4da5012aea5cbc0a3d85ed66e639aef0de..d4cc2cd239bb761c85c3ba42fa05eda35fb8eff8 100644 (file)
 #![feature(clamp)]
 #![feature(concat_idents)]
 #![feature(const_cstr_unchecked)]
-#![cfg_attr(not(bootstrap), feature(const_fn_floating_point_arithmetic))]
+#![feature(const_fn_floating_point_arithmetic)]
 #![feature(const_fn_transmute)]
 #![feature(const_fn)]
-#![cfg_attr(not(bootstrap), feature(const_fn_fn_ptr_basics))]
+#![feature(const_fn_fn_ptr_basics)]
 #![feature(const_ip)]
 #![feature(const_ipv6)]
 #![feature(const_raw_ptr_deref)]
 #![feature(core_intrinsics)]
 #![feature(custom_test_frameworks)]
 #![feature(decl_macro)]
-#![cfg_attr(bootstrap, feature(doc_alias))]
 #![feature(doc_cfg)]
 #![feature(doc_keyword)]
 #![feature(doc_masked)]
index f695b75c24d114e703996b8261cf12543fe53549..98b4dfa9c749b3f44dcf588dd32cb33670a5d013 100644 (file)
@@ -12,7 +12,7 @@
 # source tarball for a stable release you'll likely see `1.x.0` for rustc and
 # `0.(x+1).0` for Cargo where they were released on `date`.
 
-date: 2020-08-26
+date: 2020-10-07
 rustc: beta
 cargo: beta
 
@@ -20,7 +20,7 @@ cargo: beta
 # bootstrapping issues with use of new syntax in this repo. If you're looking at
 # the beta/stable branch, this key should be omitted, as we don't want to depend
 # on rustfmt from nightly there.
-rustfmt: nightly-2020-07-12
+rustfmt: nightly-2020-10-07
 
 # When making a stable release the process currently looks like:
 #