Skip to content

Update snapshots to 2016-03-18 (235d774). #32345

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Mar 20, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/libcore/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
authors = ["The Rust Project Developers"]
name = "core"
version = "0.0.0"
build = "build.rs"

[lib]
name = "core"
Expand Down
14 changes: 14 additions & 0 deletions src/libcore/build.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
// Copyright 2016 The Rust Project Developers. See the COPYRIGHT
// file at the top-level directory of this distribution and at
// http://rust-lang.org/COPYRIGHT.
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.

fn main() {
// Remove this whenever snapshots and rustbuild nightlies are synced.
println!("cargo:rustc-cfg=cargobuild");
}
37 changes: 14 additions & 23 deletions src/libcore/intrinsics.rs
Original file line number Diff line number Diff line change
Expand Up @@ -53,53 +53,44 @@ extern "rust-intrinsic" {
// NB: These intrinsics take raw pointers because they mutate aliased
// memory, which is not valid for either `&` or `&mut`.

#[cfg(stage0)]
#[cfg(all(stage0, not(cargobuild)))]
pub fn atomic_cxchg<T>(dst: *mut T, old: T, src: T) -> T;
#[cfg(stage0)]
#[cfg(all(stage0, not(cargobuild)))]
pub fn atomic_cxchg_acq<T>(dst: *mut T, old: T, src: T) -> T;
#[cfg(stage0)]
#[cfg(all(stage0, not(cargobuild)))]
pub fn atomic_cxchg_rel<T>(dst: *mut T, old: T, src: T) -> T;
#[cfg(stage0)]
#[cfg(all(stage0, not(cargobuild)))]
pub fn atomic_cxchg_acqrel<T>(dst: *mut T, old: T, src: T) -> T;
#[cfg(stage0)]
#[cfg(all(stage0, not(cargobuild)))]
pub fn atomic_cxchg_relaxed<T>(dst: *mut T, old: T, src: T) -> T;

#[cfg(not(stage0))]
#[cfg(any(not(stage0), cargobuild))]
pub fn atomic_cxchg<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
#[cfg(any(not(stage0), cargobuild))]
pub fn atomic_cxchg_acq<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
#[cfg(any(not(stage0), cargobuild))]
pub fn atomic_cxchg_rel<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
#[cfg(any(not(stage0), cargobuild))]
pub fn atomic_cxchg_acqrel<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
#[cfg(any(not(stage0), cargobuild))]
pub fn atomic_cxchg_relaxed<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
#[cfg(any(not(stage0), cargobuild))]
pub fn atomic_cxchg_failrelaxed<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
#[cfg(any(not(stage0), cargobuild))]
pub fn atomic_cxchg_failacq<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
#[cfg(any(not(stage0), cargobuild))]
pub fn atomic_cxchg_acq_failrelaxed<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
#[cfg(any(not(stage0), cargobuild))]
pub fn atomic_cxchg_acqrel_failrelaxed<T>(dst: *mut T, old: T, src: T) -> (T, bool);

#[cfg(not(stage0))]
pub fn atomic_cxchgweak<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
pub fn atomic_cxchgweak_acq<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
pub fn atomic_cxchgweak_rel<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
pub fn atomic_cxchgweak_acqrel<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
pub fn atomic_cxchgweak_relaxed<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
pub fn atomic_cxchgweak_failrelaxed<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
pub fn atomic_cxchgweak_failacq<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
pub fn atomic_cxchgweak_acq_failrelaxed<T>(dst: *mut T, old: T, src: T) -> (T, bool);
#[cfg(not(stage0))]
pub fn atomic_cxchgweak_acqrel_failrelaxed<T>(dst: *mut T, old: T, src: T) -> (T, bool);

pub fn atomic_load<T>(src: *const T) -> T;
Expand Down
1 change: 1 addition & 0 deletions src/libcore/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@
#![feature(const_fn)]
#![feature(custom_attribute)]
#![feature(fundamental)]
#![feature(inclusive_range_syntax)]
#![feature(intrinsics)]
#![feature(lang_items)]
#![feature(no_core)]
Expand Down
6 changes: 3 additions & 3 deletions src/libcore/num/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1008,7 +1008,7 @@ macro_rules! int_impl {
/// ```
#[stable(feature = "rust1", since = "1.0.0")]
#[inline]
#[cfg_attr(not(stage0), rustc_no_mir)] // FIXME #29769 MIR overflow checking is TBD.
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
pub fn pow(self, mut exp: u32) -> Self {
let mut base = self;
let mut acc = Self::one();
Expand Down Expand Up @@ -1050,7 +1050,7 @@ macro_rules! int_impl {
/// ```
#[stable(feature = "rust1", since = "1.0.0")]
#[inline]
#[cfg_attr(not(stage0), rustc_no_mir)] // FIXME #29769 MIR overflow checking is TBD.
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
pub fn abs(self) -> Self {
if self.is_negative() {
// Note that the #[inline] above means that the overflow
Expand Down Expand Up @@ -2015,7 +2015,7 @@ macro_rules! uint_impl {
/// ```
#[stable(feature = "rust1", since = "1.0.0")]
#[inline]
#[cfg_attr(not(stage0), rustc_no_mir)] // FIXME #29769 MIR overflow checking is TBD.
#[rustc_no_mir] // FIXME #29769 MIR overflow checking is TBD.
pub fn pow(self, mut exp: u32) -> Self {
let mut base = self;
let mut acc = Self::one();
Expand Down
4 changes: 0 additions & 4 deletions src/libcore/ops.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1448,7 +1448,6 @@ pub trait IndexMut<Idx: ?Sized>: Index<Idx> {

/// An unbounded range.
#[derive(Copy, Clone, PartialEq, Eq)]
#[cfg_attr(stage0, lang = "range_full")] // FIXME remove attribute after next snapshot
#[stable(feature = "rust1", since = "1.0.0")]
pub struct RangeFull;

Expand All @@ -1461,7 +1460,6 @@ impl fmt::Debug for RangeFull {

/// A (half-open) range which is bounded at both ends.
#[derive(Clone, PartialEq, Eq)]
#[cfg_attr(stage0, lang = "range")] // FIXME remove attribute after next snapshot
#[stable(feature = "rust1", since = "1.0.0")]
pub struct Range<Idx> {
/// The lower bound of the range (inclusive).
Expand All @@ -1481,7 +1479,6 @@ impl<Idx: fmt::Debug> fmt::Debug for Range<Idx> {

/// A range which is only bounded below.
#[derive(Clone, PartialEq, Eq)]
#[cfg_attr(stage0, lang = "range_from")] // FIXME remove attribute after next snapshot
#[stable(feature = "rust1", since = "1.0.0")]
pub struct RangeFrom<Idx> {
/// The lower bound of the range (inclusive).
Expand All @@ -1498,7 +1495,6 @@ impl<Idx: fmt::Debug> fmt::Debug for RangeFrom<Idx> {

/// A range which is only bounded above.
#[derive(Copy, Clone, PartialEq, Eq)]
#[cfg_attr(stage0, lang = "range_to")] // FIXME remove attribute after next snapshot
#[stable(feature = "rust1", since = "1.0.0")]
pub struct RangeTo<Idx> {
/// The upper bound of the range (exclusive).
Expand Down
6 changes: 2 additions & 4 deletions src/libcore/slice.rs
Original file line number Diff line number Diff line change
Expand Up @@ -632,8 +632,7 @@ impl<T> ops::Index<ops::RangeToInclusive<usize>> for [T] {

#[inline]
fn index(&self, index: ops::RangeToInclusive<usize>) -> &[T] {
// SNAP 4d3eebf change this to `0...index.end`
self.index(ops::RangeInclusive::NonEmpty { start: 0, end: index.end })
self.index(0...index.end)
}
}

Expand Down Expand Up @@ -723,8 +722,7 @@ impl<T> ops::IndexMut<ops::RangeInclusive<usize>> for [T] {
impl<T> ops::IndexMut<ops::RangeToInclusive<usize>> for [T] {
#[inline]
fn index_mut(&mut self, index: ops::RangeToInclusive<usize>) -> &mut [T] {
// SNAP 4d3eebf change this to `0...index.end`
self.index_mut(ops::RangeInclusive::NonEmpty { start: 0, end: index.end })
self.index_mut(0...index.end)
}
}

Expand Down
6 changes: 2 additions & 4 deletions src/libcore/str/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1524,8 +1524,7 @@ mod traits {

#[inline]
fn index(&self, index: ops::RangeToInclusive<usize>) -> &str {
// SNAP 4d3eebf change this to `0...index.end`
self.index(ops::RangeInclusive::NonEmpty { start: 0, end: index.end })
self.index(0...index.end)
}
}

Expand All @@ -1550,8 +1549,7 @@ mod traits {
impl ops::IndexMut<ops::RangeToInclusive<usize>> for str {
#[inline]
fn index_mut(&mut self, index: ops::RangeToInclusive<usize>) -> &mut str {
// SNAP 4d3eebf change this to `0...index.end`
self.index_mut(ops::RangeInclusive::NonEmpty { start: 0, end: index.end })
self.index_mut(0...index.end)
}
}
}
Expand Down
17 changes: 2 additions & 15 deletions src/libcore/sync/atomic.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1380,7 +1380,7 @@ unsafe fn atomic_sub<T>(dst: *mut T, val: T, order: Ordering) -> T {
}

#[inline]
#[cfg(not(stage0))]
#[cfg(any(not(stage0), cargobuild))]
unsafe fn atomic_compare_exchange<T>(dst: *mut T,
old: T,
new: T,
Expand Down Expand Up @@ -1408,7 +1408,7 @@ unsafe fn atomic_compare_exchange<T>(dst: *mut T,
}

#[inline]
#[cfg(stage0)]
#[cfg(all(stage0, not(cargobuild)))]
unsafe fn atomic_compare_exchange<T>(dst: *mut T,
old: T,
new: T,
Expand All @@ -1431,7 +1431,6 @@ unsafe fn atomic_compare_exchange<T>(dst: *mut T,
}

#[inline]
#[cfg(not(stage0))]
unsafe fn atomic_compare_exchange_weak<T>(dst: *mut T,
old: T,
new: T,
Expand All @@ -1458,18 +1457,6 @@ unsafe fn atomic_compare_exchange_weak<T>(dst: *mut T,
}
}

#[inline]
#[cfg(stage0)]
unsafe fn atomic_compare_exchange_weak<T>(dst: *mut T,
old: T,
new: T,
success: Ordering,
failure: Ordering) -> Result<T, T>
where T: ::cmp::Eq + ::marker::Copy
{
atomic_compare_exchange(dst, old, new, success, failure)
}

#[inline]
unsafe fn atomic_and<T>(dst: *mut T, val: T, order: Ordering) -> T {
match order {
Expand Down
2 changes: 1 addition & 1 deletion src/nightlies.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
rustc: 2016-02-17
rustc: 2016-03-20
cargo: 2016-03-11
8 changes: 8 additions & 0 deletions src/snapshots.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
S 2016-03-18 235d774
linux-i386 0e0e4448b80d0a12b75485795244bb3857a0a7ef
linux-x86_64 1273b6b6aed421c9e40c59f366d0df6092ec0397
macos-i386 9f9c0b4a2db09acbce54b792fb8839a735585565
macos-x86_64 52570f6fd915b0210a9be98cfc933148e16a75f8
winnt-i386 7703869608cc4192b8f1943e51b19ba1a03c0110
winnt-x86_64 8512b5ecc0c53a2cd3552e4f5688577de95cd978

S 2016-02-17 4d3eebf
linux-i386 5f194aa7628c0703f0fd48adc4ec7f3cc64b98c7
linux-x86_64 d29b7607d13d64078b6324aec82926fb493f59ba
Expand Down