]> git.lizzy.rs Git - rust.git/commitdiff
Auto merge of #51717 - Mark-Simulacrum:snap, r=alexcrichton
authorbors <bors@rust-lang.org>
Sat, 30 Jun 2018 21:01:05 +0000 (21:01 +0000)
committerbors <bors@rust-lang.org>
Sat, 30 Jun 2018 21:01:05 +0000 (21:01 +0000)
Bootstrap from 1.28.0 beta

1  2 
src/liballoc/lib.rs
src/libcore/slice/mod.rs
src/librustc/lib.rs
src/librustc_save_analysis/lib.rs

diff --combined src/liballoc/lib.rs
index c054042d5a1848a957c9dbb907c43e280d457eeb,42fc716bae26c30964459162a53a66aac5707d0d..493448eaf88fa9b0704191d82994e52d951e4526
  //! This library provides smart pointers and collections for managing
  //! heap-allocated values.
  //!
 -//! This library, like libcore, is not intended for general usage, but rather as
 -//! a building block of other libraries. The types and interfaces in this
 -//! library are re-exported through the [standard library](../std/index.html),
 -//! and should not be used through this library.
 +//! This library, like libcore, normally doesn’t need to be used directly
 +//! since its contents are re-exported in the [`std` crate](../std/index.html).
 +//! Crates that use the `#![no_std]` attribute however will typically
 +//! not depend on `std`, so they’d use this crate instead.
  //!
  //! ## Boxed values
  //!
@@@ -40,7 -40,7 +40,7 @@@
  //!
  //! ## Atomically reference counted pointers
  //!
 -//! The [`Arc`](arc/index.html) type is the threadsafe equivalent of the `Rc`
 +//! The [`Arc`](sync/index.html) type is the threadsafe equivalent of the `Rc`
  //! type. It provides all the same functionality of `Rc`, except it requires
  //! that the contained type `T` is shareable. Additionally, `Arc<T>` is itself
  //! sendable while `Rc<T>` is not.
  #![feature(pin)]
  #![feature(ptr_internals)]
  #![feature(ptr_offset_from)]
- #![cfg_attr(stage0, feature(repr_transparent))]
  #![feature(rustc_attrs)]
  #![feature(specialization)]
  #![feature(split_ascii_whitespace)]
@@@ -141,6 -140,13 +140,6 @@@ extern crate rand
  #[macro_use]
  mod macros;
  
 -#[rustc_deprecated(since = "1.27.0", reason = "use the heap module in core, alloc, or std instead")]
 -#[unstable(feature = "allocator_api", issue = "32838")]
 -/// Use the `alloc` module instead.
 -pub mod allocator {
 -    pub use alloc::*;
 -}
 -
  // Heaps provided for low-level allocation strategies
  
  pub mod alloc;
@@@ -162,20 -168,60 +161,20 @@@ mod boxed 
  }
  #[cfg(test)]
  mod boxed_test;
 +pub mod collections;
  #[cfg(target_has_atomic = "ptr")]
 -pub mod arc;
 +pub mod sync;
  pub mod rc;
  pub mod raw_vec;
  
 -// collections modules
 -pub mod binary_heap;
 -mod btree;
  pub mod borrow;
  pub mod fmt;
 -pub mod linked_list;
  pub mod slice;
  pub mod str;
  pub mod string;
  pub mod vec;
 -pub mod vec_deque;
 -
 -#[stable(feature = "rust1", since = "1.0.0")]
 -pub mod btree_map {
 -    //! A map based on a B-Tree.
 -    #[stable(feature = "rust1", since = "1.0.0")]
 -    pub use btree::map::*;
 -}
 -
 -#[stable(feature = "rust1", since = "1.0.0")]
 -pub mod btree_set {
 -    //! A set based on a B-Tree.
 -    #[stable(feature = "rust1", since = "1.0.0")]
 -    pub use btree::set::*;
 -}
  
  #[cfg(not(test))]
  mod std {
      pub use core::ops;      // RangeFull
  }
 -
 -/// An intermediate trait for specialization of `Extend`.
 -#[doc(hidden)]
 -trait SpecExtend<I: IntoIterator> {
 -    /// Extends `self` with the contents of the given iterator.
 -    fn spec_extend(&mut self, iter: I);
 -}
 -
 -#[doc(no_inline)]
 -pub use binary_heap::BinaryHeap;
 -#[doc(no_inline)]
 -pub use btree_map::BTreeMap;
 -#[doc(no_inline)]
 -pub use btree_set::BTreeSet;
 -#[doc(no_inline)]
 -pub use linked_list::LinkedList;
 -#[doc(no_inline)]
 -pub use vec_deque::VecDeque;
 -#[doc(no_inline)]
 -pub use string::String;
 -#[doc(no_inline)]
 -pub use vec::Vec;
diff --combined src/libcore/slice/mod.rs
index 0cbdbc4ad663af99c47a7838c2c66ff44e628641,bcac9322ae80c779d28d9999cbe55c5c6cae4625..87b7ae39cfd05f1baee657deea3adc74102eebea
@@@ -1642,8 -1642,8 +1642,8 @@@ impl<T> [T] 
      /// [`split_at_mut`]: #method.split_at_mut
      #[stable(feature = "copy_from_slice", since = "1.9.0")]
      pub fn copy_from_slice(&mut self, src: &[T]) where T: Copy {
 -        assert!(self.len() == src.len(),
 -                "destination and source slices have different lengths");
 +        assert_eq!(self.len(), src.len(),
 +                   "destination and source slices have different lengths");
          unsafe {
              ptr::copy_nonoverlapping(
                  src.as_ptr(), self.as_mut_ptr(), self.len());
      }
  
      /// Function to calculate lenghts of the middle and trailing slice for `align_to{,_mut}`.
-     #[cfg(not(stage0))]
      fn align_to_offsets<U>(&self) -> (usize, usize) {
          // What we gonna do about `rest` is figure out what multiple of `U`s we can put in a
          // lowest number of `T`s. And how many `T`s we need for each such "multiple".
      /// }
      /// ```
      #[unstable(feature = "slice_align_to", issue = "44488")]
-     #[cfg(not(stage0))]
      pub unsafe fn align_to<U>(&self) -> (&[T], &[U], &[T]) {
          // Note that most of this function will be constant-evaluated,
          if ::mem::size_of::<U>() == 0 || ::mem::size_of::<T>() == 0 {
      /// }
      /// ```
      #[unstable(feature = "slice_align_to", issue = "44488")]
-     #[cfg(not(stage0))]
      pub unsafe fn align_to_mut<U>(&mut self) -> (&mut [T], &mut [U], &mut [T]) {
          // Note that most of this function will be constant-evaluated,
          if ::mem::size_of::<U>() == 0 || ::mem::size_of::<T>() == 0 {
diff --combined src/librustc/lib.rs
index c500800a30f9cd9717788a492b6e4f7e664b7ff7,95e2d0e2edbb57a315bfbe9ab3b03118e44e0ab8..d8efb582eaa8b8d6c783a724c1f471bf5ca9f877
@@@ -49,7 -49,6 +49,6 @@@
  #![feature(fs_read_write)]
  #![feature(iterator_find_map)]
  #![cfg_attr(windows, feature(libc))]
- #![cfg_attr(stage0, feature(macro_lifetime_matcher))]
  #![feature(macro_vis_matcher)]
  #![feature(never_type)]
  #![feature(exhaustive_patterns)]
@@@ -132,6 -131,7 +131,6 @@@ pub mod middle 
      pub mod allocator;
      pub mod borrowck;
      pub mod expr_use_visitor;
 -    pub mod const_val;
      pub mod cstore;
      pub mod dataflow;
      pub mod dead;
index c07db44b36ccfd9e0001225890a8244bdddc7be6,4c9cdc1e6d35b68076733c9e25310e39fa566379..685c86029b668a278e4c663b3ebf2d8f5b5e4a0f
@@@ -12,7 -12,6 +12,6 @@@
         html_favicon_url = "https://doc.rust-lang.org/favicon.ico",
         html_root_url = "https://doc.rust-lang.org/nightly/")]
  #![feature(custom_attribute)]
- #![cfg_attr(stage0, feature(macro_lifetime_matcher))]
  #![allow(unused_attributes)]
  
  #![recursion_limit="256"]
@@@ -1157,7 -1156,7 +1156,7 @@@ fn escape(s: String) -> String 
  // Helper function to determine if a span came from a
  // macro expansion or syntax extension.
  fn generated_code(span: Span) -> bool {
 -    span.ctxt() != NO_EXPANSION || span == DUMMY_SP
 +    span.ctxt() != NO_EXPANSION || span.is_dummy()
  }
  
  // DefId::index is a newtype and so the JSON serialisation is ugly. Therefore