Skip to content

Commit 5337b6c

Browse files
committed
---
yaml --- r: 171039 b: refs/heads/try c: 29ff43b h: refs/heads/master i: 171037: e453e66 171035: 297315f 171031: 0b2daca 171023: 1f35636 171007: 8bb96f0 v: v3
1 parent 91a559c commit 5337b6c

File tree

139 files changed

+1161
-1741
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

139 files changed

+1161
-1741
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
refs/heads/master: 73a25f55ad748b4d3516417c711b99ce446591af
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 5b3cd3900ceda838f5798c30ab96ceb41f962534
5-
refs/heads/try: f25784899209f5c97bc32cbb4abf9ba57f1b12b8
5+
refs/heads/try: 29ff43bbbb1fe1c694dd78f86b8800baf8a1ffa5
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
88
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596

branches/try/configure

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -599,18 +599,6 @@ then
599599
fi
600600
putvar CFG_RELEASE_CHANNEL
601601

602-
# A magic value that allows the compiler to use unstable features
603-
# during the bootstrap even when doing so would normally be an error
604-
# because of feature staging or because the build turns on
605-
# warnings-as-errors and unstable features default to warnings. The
606-
# build has to match this key in an env var. Meant to be a mild
607-
# deterrent from users just turning on unstable features on the stable
608-
# channel.
609-
# Basing CFG_BOOTSTRAP_KEY on CFG_BOOTSTRAP_KEY lets it get picked up
610-
# during a Makefile reconfig.
611-
CFG_BOOTSTRAP_KEY="${CFG_BOOTSTRAP_KEY-`date +%N`}"
612-
putvar CFG_BOOTSTRAP_KEY
613-
614602
step_msg "looking for build programs"
615603

616604
probe_need CFG_PERL perl

branches/try/mk/main.mk

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,11 @@ ifeq ($(CFG_RELEASE_CHANNEL),stable)
2525
CFG_RELEASE=$(CFG_RELEASE_NUM)
2626
# This is the string used in dist artifact file names, e.g. "0.12.0", "nightly"
2727
CFG_PACKAGE_VERS=$(CFG_RELEASE_NUM)
28-
CFG_DISABLE_UNSTABLE_FEATURES=1
2928
endif
3029
ifeq ($(CFG_RELEASE_CHANNEL),beta)
3130
# The beta channel is temporarily called 'alpha'
3231
CFG_RELEASE=$(CFG_RELEASE_NUM)-alpha$(CFG_BETA_CYCLE)
3332
CFG_PACKAGE_VERS=$(CFG_RELEASE_NUM)-alpha$(CFG_BETA_CYCLE)
34-
CFG_DISABLE_UNSTABLE_FEATURES=1
3533
endif
3634
ifeq ($(CFG_RELEASE_CHANNEL),nightly)
3735
CFG_RELEASE=$(CFG_RELEASE_NUM)-nightly
@@ -321,20 +319,11 @@ export CFG_VERSION_WIN
321319
export CFG_RELEASE
322320
export CFG_PACKAGE_NAME
323321
export CFG_BUILD
324-
export CFG_RELEASE_CHANNEL
325322
export CFG_LLVM_ROOT
326323
export CFG_PREFIX
327324
export CFG_LIBDIR
328325
export CFG_LIBDIR_RELATIVE
329326
export CFG_DISABLE_INJECT_STD_VERSION
330-
ifdef CFG_DISABLE_UNSTABLE_FEATURES
331-
CFG_INFO := $(info cfg: disabling unstable features (CFG_DISABLE_UNSTABLE_FEATURES))
332-
# Turn on feature-staging
333-
export CFG_DISABLE_UNSTABLE_FEATURES
334-
endif
335-
# Subvert unstable feature lints to do the self-build
336-
export CFG_BOOTSTRAP_KEY
337-
export RUSTC_BOOTSTRAP_KEY:=$(CFG_BOOTSTRAP_KEY)
338327

339328
######################################################################
340329
# Per-stage targets and runner

branches/try/src/compiletest/compiletest.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
// except according to those terms.
1010

1111
#![crate_type = "bin"]
12-
#![feature(slicing_syntax)]
12+
#![feature(slicing_syntax, unboxed_closures)]
1313

1414
#![deny(warnings)]
1515

branches/try/src/doc/footer.inc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<footer><p>
2-
Copyright &copy; 2011-2015 The Rust Project Developers. Licensed under the
2+
Copyright &copy; 2011-2014 The Rust Project Developers. Licensed under the
33
<a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>
44
or the <a href="http://opensource.org/licenses/MIT">MIT license</a>, at your option.
55
</p><p>

branches/try/src/doc/intro.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -542,7 +542,7 @@ use std::thread::Thread;
542542
fn main() {
543543
let vec = vec![1i, 2, 3];
544544
545-
for i in range(0u, 3) {
545+
for i in range(1u, 3) {
546546
Thread::spawn(move || {
547547
println!("{}", vec[i]);
548548
}).detach();
@@ -558,7 +558,7 @@ a vector:
558558
```{rust}
559559
let vec = vec![1i, 2, 3];
560560
561-
for i in range(0u, vec.len()) {
561+
for i in range(1u, vec.len()) {
562562
println!("{}", vec[i]);
563563
}
564564
```

branches/try/src/liballoc/arc.rs

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -67,20 +67,21 @@
6767
//! }
6868
//! ```
6969
70-
use core::prelude::*;
71-
7270
use core::atomic;
7371
use core::atomic::Ordering::{Relaxed, Release, Acquire, SeqCst};
7472
use core::borrow::BorrowFrom;
73+
use core::clone::Clone;
7574
use core::fmt::{self, Show};
76-
use core::cmp::{Ordering};
75+
use core::cmp::{Eq, Ord, PartialEq, PartialOrd, Ordering};
7776
use core::default::Default;
78-
use core::mem::{min_align_of, size_of};
77+
use core::marker::{Sync, Send};
78+
use core::mem::{min_align_of, size_of, drop};
7979
use core::mem;
8080
use core::nonzero::NonZero;
81-
use core::ops::Deref;
82-
use core::ptr;
83-
use core::hash::{Hash, Hasher};
81+
use core::ops::{Drop, Deref};
82+
use core::option::Option;
83+
use core::option::Option::{Some, None};
84+
use core::ptr::{self, PtrExt};
8485
use heap::deallocate;
8586

8687
/// An atomically reference counted wrapper for shared state.
@@ -590,12 +591,6 @@ impl<T: Default + Sync + Send> Default for Arc<T> {
590591
fn default() -> Arc<T> { Arc::new(Default::default()) }
591592
}
592593

593-
impl<H: Hasher, T: Hash<H>> Hash<H> for Arc<T> {
594-
fn hash(&self, state: &mut H) {
595-
(**self).hash(state)
596-
}
597-
}
598-
599594
#[cfg(test)]
600595
#[allow(experimental)]
601596
mod tests {

branches/try/src/liballoc/boxed.rs

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -106,20 +106,12 @@ impl<T: ?Sized + Ord> Ord for Box<T> {
106106
#[stable]}
107107
impl<T: ?Sized + Eq> Eq for Box<T> {}
108108

109-
#[cfg(stage0)]
110109
impl<S: hash::Writer, T: ?Sized + Hash<S>> Hash<S> for Box<T> {
111110
#[inline]
112111
fn hash(&self, state: &mut S) {
113112
(**self).hash(state);
114113
}
115114
}
116-
#[cfg(not(stage0))]
117-
impl<S: hash::Hasher, T: ?Sized + Hash<S>> Hash<S> for Box<T> {
118-
#[inline]
119-
fn hash(&self, state: &mut S) {
120-
(**self).hash(state);
121-
}
122-
}
123115

124116
/// Extension methods for an owning `Any` trait object.
125117
#[unstable = "post-DST and coherence changes, this will not be a trait but \

branches/try/src/liballoc/heap.rs

Lines changed: 16 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -115,20 +115,16 @@ unsafe fn exchange_free(ptr: *mut u8, old_size: uint, align: uint) {
115115
// The minimum alignment guaranteed by the architecture. This value is used to
116116
// add fast paths for low alignment values. In practice, the alignment is a
117117
// constant at the call site and the branch will be optimized out.
118-
#[cfg(all(not(feature = "external_funcs"),
119-
not(feature = "external_crate"),
120-
any(target_arch = "arm",
121-
target_arch = "mips",
122-
target_arch = "mipsel")))]
118+
#[cfg(any(target_arch = "arm",
119+
target_arch = "mips",
120+
target_arch = "mipsel"))]
123121
const MIN_ALIGN: uint = 8;
124-
#[cfg(all(not(feature = "external_funcs"),
125-
not(feature = "external_crate"),
126-
any(target_arch = "x86",
127-
target_arch = "x86_64",
128-
target_arch = "aarch64"))]
122+
#[cfg(any(target_arch = "x86",
123+
target_arch = "x86_64",
124+
target_arch = "aarch64"))]
129125
const MIN_ALIGN: uint = 16;
130126

131-
#[cfg(feature = "external_funcs")]
127+
#[cfg(external_funcs)]
132128
mod imp {
133129
extern {
134130
fn rust_allocate(size: uint, align: uint) -> *mut u8;
@@ -146,13 +142,14 @@ mod imp {
146142
}
147143

148144
#[inline]
149-
pub unsafe fn deallocate(ptr: *mut u8, old_size: uint, align: uint) {
150-
rust_deallocate(ptr, old_size, align)
145+
pub unsafe fn reallocate_inplace(ptr: *mut u8, old_size: uint, size: uint,
146+
align: uint) -> uint {
147+
rust_reallocate_inplace(ptr, old_size, size, align)
151148
}
152149

153150
#[inline]
154-
pub unsafe fn reallocate(ptr: *mut u8, old_size: uint, size: uint, align: uint) -> *mut u8 {
155-
rust_reallocate(ptr, old_size, size, align)
151+
pub unsafe fn deallocate(ptr: *mut u8, old_size: uint, align: uint) {
152+
rust_deallocate(ptr, old_size, align)
156153
}
157154

158155
#[inline]
@@ -172,16 +169,14 @@ mod imp {
172169
}
173170
}
174171

175-
#[cfg(feature = "external_crate")]
172+
#[cfg(external_crate)]
176173
mod imp {
177174
extern crate external;
178175
pub use self::external::{allocate, deallocate, reallocate_inplace, reallocate};
179176
pub use self::external::{usable_size, stats_print};
180177
}
181178

182-
#[cfg(all(not(feature = "external_funcs"),
183-
not(feature = "external_crate"),
184-
jemalloc))]
179+
#[cfg(all(not(external_funcs), not(external_crate), jemalloc))]
185180
mod imp {
186181
use core::option::Option;
187182
use core::option::Option::None;
@@ -258,10 +253,7 @@ mod imp {
258253
}
259254
}
260255

261-
#[cfg(all(not(feature = "external_funcs"),
262-
not(feature = "external_crate"),
263-
not(jemalloc),
264-
unix))]
256+
#[cfg(all(not(external_funcs), not(external_crate), not(jemalloc), unix))]
265257
mod imp {
266258
use core::cmp;
267259
use core::ptr;
@@ -322,10 +314,7 @@ mod imp {
322314
pub fn stats_print() {}
323315
}
324316

325-
#[cfg(all(not(feature = "external_funcs"),
326-
not(feature = "external_crate"),
327-
not(jemalloc),
328-
windows))]
317+
#[cfg(all(not(external_funcs), not(external_crate), not(jemalloc), windows))]
329318
mod imp {
330319
use libc::{c_void, size_t};
331320
use libc;

branches/try/src/liballoc/lib.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,6 @@
5858
5959
#![crate_name = "alloc"]
6060
#![experimental]
61-
#![staged_api]
6261
#![crate_type = "rlib"]
6362
#![doc(html_logo_url = "http://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",
6463
html_favicon_url = "http://www.rust-lang.org/favicon.ico",
@@ -70,8 +69,6 @@
7069

7170
#[macro_use]
7271
extern crate core;
73-
74-
#[cfg(all(not(feature = "external_funcs"), not(feature = "external_crate")))]
7572
extern crate libc;
7673

7774
// Allow testing this library

branches/try/src/liballoc/rc.rs

Lines changed: 12 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -10,26 +10,23 @@
1010

1111
//! Thread-local reference-counted boxes (the `Rc<T>` type).
1212
//!
13-
//! The `Rc<T>` type provides shared ownership of an immutable value.
14-
//! Destruction is deterministic, and will occur as soon as the last owner is
15-
//! gone. It is marked as non-sendable because it avoids the overhead of atomic
16-
//! reference counting.
13+
//! The `Rc<T>` type provides shared ownership of an immutable value. Destruction is deterministic,
14+
//! and will occur as soon as the last owner is gone. It is marked as non-sendable because it
15+
//! avoids the overhead of atomic reference counting.
1716
//!
18-
//! The `downgrade` method can be used to create a non-owning `Weak<T>` pointer
19-
//! to the box. A `Weak<T>` pointer can be upgraded to an `Rc<T>` pointer, but
20-
//! will return `None` if the value has already been dropped.
17+
//! The `downgrade` method can be used to create a non-owning `Weak<T>` pointer to the box. A
18+
//! `Weak<T>` pointer can be upgraded to an `Rc<T>` pointer, but will return `None` if the value
19+
//! has already been dropped.
2120
//!
22-
//! For example, a tree with parent pointers can be represented by putting the
23-
//! nodes behind strong `Rc<T>` pointers, and then storing the parent pointers
24-
//! as `Weak<T>` pointers.
21+
//! For example, a tree with parent pointers can be represented by putting the nodes behind strong
22+
//! `Rc<T>` pointers, and then storing the parent pointers as `Weak<T>` pointers.
2523
//!
2624
//! # Examples
2725
//!
28-
//! Consider a scenario where a set of `Gadget`s are owned by a given `Owner`.
29-
//! We want to have our `Gadget`s point to their `Owner`. We can't do this with
30-
//! unique ownership, because more than one gadget may belong to the same
31-
//! `Owner`. `Rc<T>` allows us to share an `Owner` between multiple `Gadget`s,
32-
//! and have the `Owner` remain allocated as long as any `Gadget` points at it.
26+
//! Consider a scenario where a set of `Gadget`s are owned by a given `Owner`. We want to have our
27+
//! `Gadget`s point to their `Owner`. We can't do this with unique ownership, because more than one
28+
//! gadget may belong to the same `Owner`. `Rc<T>` allows us to share an `Owner` between multiple
29+
//! `Gadget`s, and have the `Owner` remain allocated as long as any `Gadget` points at it.
3330
//!
3431
//! ```rust
3532
//! use std::rc::Rc;
@@ -600,20 +597,12 @@ impl<T: Ord> Ord for Rc<T> {
600597
}
601598

602599
// FIXME (#18248) Make `T` `Sized?`
603-
#[cfg(stage0)]
604600
impl<S: hash::Writer, T: Hash<S>> Hash<S> for Rc<T> {
605601
#[inline]
606602
fn hash(&self, state: &mut S) {
607603
(**self).hash(state);
608604
}
609605
}
610-
#[cfg(not(stage0))]
611-
impl<S: hash::Hasher, T: Hash<S>> Hash<S> for Rc<T> {
612-
#[inline]
613-
fn hash(&self, state: &mut S) {
614-
(**self).hash(state);
615-
}
616-
}
617606

618607
#[experimental = "Show is experimental."]
619608
impl<T: fmt::Show> fmt::Show for Rc<T> {

branches/try/src/libarena/lib.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
2222
#![crate_name = "arena"]
2323
#![experimental]
24-
#![staged_api]
2524
#![crate_type = "rlib"]
2625
#![crate_type = "dylib"]
2726
#![doc(html_logo_url = "http://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",

branches/try/src/libcollections/bit.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -982,7 +982,7 @@ impl fmt::Show for Bitv {
982982
}
983983

984984
#[stable]
985-
impl<S: hash::Writer + hash::Hasher> hash::Hash<S> for Bitv {
985+
impl<S: hash::Writer> hash::Hash<S> for Bitv {
986986
fn hash(&self, state: &mut S) {
987987
self.nbits.hash(state);
988988
for elem in self.blocks() {
@@ -1742,7 +1742,7 @@ impl fmt::Show for BitvSet {
17421742
}
17431743
}
17441744

1745-
impl<S: hash::Writer + hash::Hasher> hash::Hash<S> for BitvSet {
1745+
impl<S: hash::Writer> hash::Hash<S> for BitvSet {
17461746
fn hash(&self, state: &mut S) {
17471747
for pos in self.iter() {
17481748
pos.hash(state);

branches/try/src/libcollections/btree/map.rs

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,7 @@ use core::borrow::BorrowFrom;
2323
use core::cmp::Ordering;
2424
use core::default::Default;
2525
use core::fmt::Show;
26-
use core::hash::{Hash, Hasher};
27-
#[cfg(stage0)]
28-
use core::hash::Writer;
26+
use core::hash::{Writer, Hash};
2927
use core::iter::{Map, FromIterator};
3028
use core::ops::{Index, IndexMut};
3129
use core::{iter, fmt, mem};
@@ -822,23 +820,13 @@ impl<K: Ord, V> Extend<(K, V)> for BTreeMap<K, V> {
822820
}
823821

824822
#[stable]
825-
#[cfg(stage0)]
826823
impl<S: Writer, K: Hash<S>, V: Hash<S>> Hash<S> for BTreeMap<K, V> {
827824
fn hash(&self, state: &mut S) {
828825
for elt in self.iter() {
829826
elt.hash(state);
830827
}
831828
}
832829
}
833-
#[stable]
834-
#[cfg(not(stage0))]
835-
impl<S: Hasher, K: Hash<S>, V: Hash<S>> Hash<S> for BTreeMap<K, V> {
836-
fn hash(&self, state: &mut S) {
837-
for elt in self.iter() {
838-
elt.hash(state);
839-
}
840-
}
841-
}
842830

843831
#[stable]
844832
impl<K: Ord, V> Default for BTreeMap<K, V> {

0 commit comments

Comments
 (0)