Skip to content

Delete stuff that should have been deleted in 1.12.1 #37451

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

Closed
wants to merge 60 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
8e1f792
Bump boostrap compilers
brson Aug 16, 2016
822166b
Merge pull request #35723 from brson/beta-next
alexcrichton Aug 16, 2016
4ce3c86
std: Stabilize APIs for the 1.12 release
alexcrichton Aug 11, 2016
66788cc
Make `vec::IntoIter` covariant again
apasel422 Aug 17, 2016
0180c43
1.11 changelog
brson Aug 16, 2016
ed3a5b2
Properly invalidate the early exit cache
nagisa Aug 17, 2016
346b768
Nice graphs
nagisa Aug 17, 2016
7bac1cb
mk: Bump the beta version to .2
alexcrichton Aug 23, 2016
389dad7
Merge pull request #35914 from alexcrichton/beta-next
brson Aug 24, 2016
93a2fac
typeck: use NoExpectation to check return type of diverging fn
Aug 21, 2016
2e1b8d3
rustc_trans: do not generate allocas for unused locals.
eddyb Aug 23, 2016
3ca48fe
memrchr: Correct aligned offset computation
bluss Aug 24, 2016
f79ab4f
memrchr: Use a conditional instead of subtracting a complicated min
bluss Aug 24, 2016
74cf38c
llvm: backport "[SimplifyCFG] Hoisting invalidates metadata".
eddyb Aug 29, 2016
0f7ea2a
Merge pull request #36433 from alexcrichton/beta-next
brson Sep 16, 2016
b81c0a2
Bump beta to .3
brson Sep 16, 2016
bf91022
Merge pull request #36517 from brson/beta-bump
alexcrichton Sep 16, 2016
7611709
Fix issue #36036.
pnkfelix Sep 5, 2016
ca42e0d
Make `private_in_public` compatibility lint warn-by-default again
petrochenkov Aug 26, 2016
341bfe4
Merge pull request #36538 from brson/beta-next
brson Sep 16, 2016
faa280c
Up the LLVM
nagisa Sep 15, 2016
0a268d4
Default RUST_MIN_STACK to 16MiB for now
nagisa Sep 15, 2016
d18dc01
Remove data structure specialization for .zip() iterator
bluss Sep 15, 2016
34622fb
Merge pull request #36591 from brson/beta-next
brson Sep 20, 2016
9c0e132
Bump to beta.4
brson Sep 20, 2016
03b24f9
Merge pull request #36602 from brson/beta-next
brson Sep 20, 2016
9ebf047
Fix build error
brson Sep 20, 2016
4c02a97
Merge pull request #36606 from brson/beta-next
brson Sep 20, 2016
6436a6e
Update rust-installer. Fixes #35840
brson Aug 23, 2016
f1376ce
Merge pull request #36608 from brson/beta-next
brson Sep 21, 2016
9e54321
use `adt::trans_const` when translating constant closures and tuples
arielb1 Sep 11, 2016
0129358
invoke drop glue with a ptr to (data, meta)
nikomatsakis Sep 13, 2016
b31e845
add missing test
nikomatsakis Sep 13, 2016
f0d4add
fix PR 36459 post backport to beta.
pnkfelix Sep 21, 2016
7504d2a
Merge pull request #36620 from pnkfelix/beta-next
nikomatsakis Sep 21, 2016
3264a86
Workaround #34427 by using memset of 0 on ARM to set the discriminant.
pnkfelix Sep 15, 2016
27c7782
Bump to 1.12.0-beta.5
brson Sep 21, 2016
0b458c1
Merge pull request #36630 from brson/beta-next
brson Sep 21, 2016
7b49840
Merge pull request #36628 from nikomatsakis/backport-issue-36496
brson Sep 21, 2016
30884cd
Add changelog for 1.12
brson Sep 21, 2016
c6f7c2a
Merge pull request #36633 from brson/beta-next
brson Sep 21, 2016
56b1a07
Fix optimization regressions for operations on [x; n]-initialized arr…
eddyb Aug 31, 2016
aec8364
Merge pull request #36634 from brson/beta-next
brson Sep 21, 2016
cfb29db
Revert "implement `From<Vec<char>>` and `From<&'a [char]>` for `String`"
brson Sep 23, 2016
aaf78d8
Bump beta to .6
brson Sep 23, 2016
d3eb33e
Merge pull request #36686 from brson/beta-next
brson Sep 23, 2016
f5b4a55
Remove reverted feature from relnotes
brson Sep 23, 2016
3191fba
Merge pull request #36687 from brson/beta-next
brson Sep 23, 2016
f223537
loosen assertion against proj in collector
nikomatsakis Sep 30, 2016
ca1b124
force `i1` booleans to `i8` when comparing
nikomatsakis Oct 4, 2016
566df6c
LLVM: Backport "[SimplifyCFG] Correctly test for unconditional branch…
michaelwoerister Oct 10, 2016
580cbd8
stop having identity casts be lexprs
arielb1 Oct 3, 2016
d0374d0
Temporary fix for metadata decoding for struct constructors
petrochenkov Sep 14, 2016
70107c8
Bump version to 1.12.1
brson Oct 14, 2016
3361f13
Fix ICE by injecting bitcasts if types mismatch when building invokes…
pnkfelix Oct 12, 2016
45d365a
Inject bitcast if types mismatch when building a store instruction.
pnkfelix Oct 12, 2016
f6859b0
Some tests to check that lifetime parametric fn's do not trip up LLVM.
pnkfelix Oct 12, 2016
2d49342
debuginfo: Create debuginfo for re-aggregated spread_arg instead of f…
michaelwoerister Oct 13, 2016
d4f3940
Merge pull request #37173 from brson/stable-next
brson Oct 19, 2016
405f146
Delete stuff that should have been deleted in 1.12.1
infinity0 Oct 28, 2016
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
436 changes: 436 additions & 0 deletions RELEASES.md

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions mk/main.mk
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@
######################################################################

# The version number
CFG_RELEASE_NUM=1.12.0
CFG_RELEASE_NUM=1.12.1

# An optional number to put after the label, e.g. '.2' -> '-beta.2'
# NB Make sure it starts with a dot to conform to semver pre-release
# versions (section 9)
CFG_PRERELEASE_VERSION=.1
CFG_PRERELEASE_VERSION=.6

ifeq ($(CFG_RELEASE_CHANNEL),stable)
# This is the normal semver version string, e.g. "0.12.0", "0.12.0-nightly"
Expand Down
11 changes: 5 additions & 6 deletions src/libcollections/binary_heap.rs
Original file line number Diff line number Diff line change
Expand Up @@ -223,27 +223,27 @@ pub struct BinaryHeap<T> {
/// on `BinaryHeap`. See its documentation for details.
///
/// [`peek_mut()`]: struct.BinaryHeap.html#method.peek_mut
#[unstable(feature = "binary_heap_peek_mut", issue = "34392")]
#[stable(feature = "binary_heap_peek_mut", since = "1.12.0")]
pub struct PeekMut<'a, T: 'a + Ord> {
heap: &'a mut BinaryHeap<T>
}

#[unstable(feature = "binary_heap_peek_mut", issue = "34392")]
#[stable(feature = "binary_heap_peek_mut", since = "1.12.0")]
impl<'a, T: Ord> Drop for PeekMut<'a, T> {
fn drop(&mut self) {
self.heap.sift_down(0);
}
}

#[unstable(feature = "binary_heap_peek_mut", issue = "34392")]
#[stable(feature = "binary_heap_peek_mut", since = "1.12.0")]
impl<'a, T: Ord> Deref for PeekMut<'a, T> {
type Target = T;
fn deref(&self) -> &T {
&self.heap.data[0]
}
}

#[unstable(feature = "binary_heap_peek_mut", issue = "34392")]
#[stable(feature = "binary_heap_peek_mut", since = "1.12.0")]
impl<'a, T: Ord> DerefMut for PeekMut<'a, T> {
fn deref_mut(&mut self) -> &mut T {
&mut self.heap.data[0]
Expand Down Expand Up @@ -366,7 +366,6 @@ impl<T: Ord> BinaryHeap<T> {
/// Basic usage:
///
/// ```
/// #![feature(binary_heap_peek_mut)]
/// use std::collections::BinaryHeap;
/// let mut heap = BinaryHeap::new();
/// assert!(heap.peek_mut().is_none());
Expand All @@ -380,7 +379,7 @@ impl<T: Ord> BinaryHeap<T> {
/// }
/// assert_eq!(heap.peek(), Some(&2));
/// ```
#[unstable(feature = "binary_heap_peek_mut", issue = "34392")]
#[stable(feature = "binary_heap_peek_mut", since = "1.12.0")]
pub fn peek_mut(&mut self) -> Option<PeekMut<T>> {
if self.is_empty() {
None
Expand Down
19 changes: 11 additions & 8 deletions src/libcollections/btree/map.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1981,8 +1981,6 @@ impl<'a, K: Ord, V> VacantEntry<'a, K, V> {
/// # Examples
///
/// ```
/// #![feature(map_entry_recover_keys)]
///
/// use std::collections::BTreeMap;
/// use std::collections::btree_map::Entry;
///
Expand All @@ -1992,7 +1990,7 @@ impl<'a, K: Ord, V> VacantEntry<'a, K, V> {
/// v.into_key();
/// }
/// ```
#[unstable(feature = "map_entry_recover_keys", issue = "34285")]
#[stable(feature = "map_entry_recover_keys2", since = "1.12.0")]
pub fn into_key(self) -> K {
self.key
}
Expand Down Expand Up @@ -2074,13 +2072,18 @@ impl<'a, K: Ord, V> OccupiedEntry<'a, K, V> {
self.handle.reborrow().into_kv().0
}

/// Deprecated, renamed to `remove_entry`
#[unstable(feature = "map_entry_recover_keys", issue = "34285")]
#[rustc_deprecated(since = "1.12.0", reason = "renamed to `remove_entry`")]
pub fn remove_pair(self) -> (K, V) {
self.remove_entry()
}

/// Take ownership of the key and value from the map.
///
/// # Examples
///
/// ```
/// #![feature(map_entry_recover_keys)]
///
/// use std::collections::BTreeMap;
/// use std::collections::btree_map::Entry;
///
Expand All @@ -2089,14 +2092,14 @@ impl<'a, K: Ord, V> OccupiedEntry<'a, K, V> {
///
/// if let Entry::Occupied(o) = map.entry("poneyland") {
/// // We delete the entry from the map.
/// o.remove_pair();
/// o.remove_entry();
/// }
///
/// // If now try to get the value, it will panic:
/// // println!("{}", map["poneyland"]);
/// ```
#[unstable(feature = "map_entry_recover_keys", issue = "34285")]
pub fn remove_pair(self) -> (K, V) {
#[stable(feature = "map_entry_recover_keys2", since = "1.12.0")]
pub fn remove_entry(self) -> (K, V) {
self.remove_kv()
}

Expand Down
5 changes: 1 addition & 4 deletions src/libcollections/linked_list.rs
Original file line number Diff line number Diff line change
Expand Up @@ -379,8 +379,6 @@ impl<T> LinkedList<T> {
/// # Examples
///
/// ```
/// #![feature(linked_list_contains)]
///
/// use std::collections::LinkedList;
///
/// let mut list: LinkedList<u32> = LinkedList::new();
Expand All @@ -392,8 +390,7 @@ impl<T> LinkedList<T> {
/// assert_eq!(list.contains(&0), true);
/// assert_eq!(list.contains(&10), false);
/// ```
#[unstable(feature = "linked_list_contains", reason = "recently added",
issue = "32630")]
#[stable(feature = "linked_list_contains", since = "1.12.0")]
pub fn contains(&self, x: &T) -> bool
where T: PartialEq<T>
{
Expand Down
20 changes: 0 additions & 20 deletions src/libcollections/string.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1901,26 +1901,6 @@ impl Into<Vec<u8>> for String {
}
}

#[stable(feature = "stringfromchars", since = "1.12.0")]
impl<'a> From<&'a [char]> for String {
#[inline]
fn from(v: &'a [char]) -> String {
let mut s = String::with_capacity(v.len());
for c in v {
s.push(*c);
}
s
}
}

#[stable(feature = "stringfromchars", since = "1.12.0")]
impl From<Vec<char>> for String {
#[inline]
fn from(v: Vec<char>) -> String {
String::from(v.as_slice())
}
}

#[stable(feature = "rust1", since = "1.0.0")]
impl fmt::Write for String {
#[inline]
Expand Down
15 changes: 9 additions & 6 deletions src/libcollections/vec.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1453,10 +1453,11 @@ impl<T> IntoIterator for Vec<T> {
} else {
begin.offset(self.len() as isize) as *const T
};
let buf = ptr::read(&self.buf);
let cap = self.buf.cap();
mem::forget(self);
IntoIter {
_buf: buf,
buf: Shared::new(begin),
cap: cap,
ptr: begin,
end: end,
}
Expand Down Expand Up @@ -1708,8 +1709,9 @@ impl<'a, T> FromIterator<T> for Cow<'a, [T]> where T: Clone {
/// [`IntoIterator`]: ../../std/iter/trait.IntoIterator.html
#[stable(feature = "rust1", since = "1.0.0")]
pub struct IntoIter<T> {
_buf: RawVec<T>,
ptr: *mut T,
buf: Shared<T>,
cap: usize,
ptr: *const T,
end: *const T,
}

Expand Down Expand Up @@ -1750,7 +1752,7 @@ impl<T> IntoIter<T> {
#[unstable(feature = "vec_into_iter_as_slice", issue = "35601")]
pub fn as_mut_slice(&self) -> &mut [T] {
unsafe {
slice::from_raw_parts_mut(self.ptr, self.len())
slice::from_raw_parts_mut(self.ptr as *mut T, self.len())
}
}
}
Expand Down Expand Up @@ -1846,9 +1848,10 @@ impl<T> Drop for IntoIter<T> {
#[unsafe_destructor_blind_to_params]
fn drop(&mut self) {
// destroy the remaining elements
for _x in self {}
for _x in self.by_ref() {}

// RawVec handles deallocation
let _ = unsafe { RawVec::from_raw_parts(*self.buf, self.cap) };
}
}

Expand Down
5 changes: 1 addition & 4 deletions src/libcollections/vec_deque.rs
Original file line number Diff line number Diff line change
Expand Up @@ -938,8 +938,6 @@ impl<T> VecDeque<T> {
/// # Examples
///
/// ```
/// #![feature(vec_deque_contains)]
///
/// use std::collections::VecDeque;
///
/// let mut vector: VecDeque<u32> = VecDeque::new();
Expand All @@ -950,8 +948,7 @@ impl<T> VecDeque<T> {
/// assert_eq!(vector.contains(&1), true);
/// assert_eq!(vector.contains(&10), false);
/// ```
#[unstable(feature = "vec_deque_contains", reason = "recently added",
issue = "32630")]
#[stable(feature = "vec_deque_contains", since = "1.12.0")]
pub fn contains(&self, x: &T) -> bool
where T: PartialEq<T>
{
Expand Down
3 changes: 0 additions & 3 deletions src/libcollectionstest/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,23 +11,20 @@
#![deny(warnings)]

#![feature(binary_heap_extras)]
#![feature(binary_heap_peek_mut)]
#![feature(box_syntax)]
#![feature(btree_range)]
#![feature(collections)]
#![feature(collections_bound)]
#![feature(const_fn)]
#![feature(fn_traits)]
#![feature(enumset)]
#![feature(linked_list_contains)]
#![feature(pattern)]
#![feature(rand)]
#![feature(step_by)]
#![feature(str_escape)]
#![feature(test)]
#![feature(unboxed_closures)]
#![feature(unicode)]
#![feature(vec_deque_contains)]
#![feature(vec_into_iter_as_slice)]

extern crate collections;
Expand Down
3 changes: 2 additions & 1 deletion src/libcollectionstest/vec.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
use std::borrow::Cow;
use std::iter::{FromIterator, repeat};
use std::mem::size_of;
use std::vec::Drain;
use std::vec::{Drain, IntoIter};

use test::Bencher;

Expand Down Expand Up @@ -537,6 +537,7 @@ fn test_cow_from() {
#[allow(dead_code)]
fn assert_covariance() {
fn drain<'new>(d: Drain<'static, &'static str>) -> Drain<'new, &'new str> { d }
fn into_iter<'new>(i: IntoIter<&'static str>) -> IntoIter<&'new str> { i }
}

#[bench]
Expand Down
36 changes: 36 additions & 0 deletions src/libcore/cell.rs
Original file line number Diff line number Diff line change
Expand Up @@ -233,10 +233,28 @@ impl<T:Copy> Cell<T> {
/// ```
#[inline]
#[unstable(feature = "as_unsafe_cell", issue = "27708")]
#[rustc_deprecated(since = "1.12.0", reason = "renamed to as_ptr")]
pub fn as_unsafe_cell(&self) -> &UnsafeCell<T> {
&self.value
}

/// Returns a raw pointer to the underlying data in this cell.
///
/// # Examples
///
/// ```
/// use std::cell::Cell;
///
/// let c = Cell::new(5);
///
/// let ptr = c.as_ptr();
/// ```
#[inline]
#[stable(feature = "cell_as_ptr", since = "1.12.0")]
pub fn as_ptr(&self) -> *mut T {
self.value.get()
}

/// Returns a mutable reference to the underlying data.
///
/// This call borrows `Cell` mutably (at compile-time) which guarantees
Expand Down Expand Up @@ -653,10 +671,28 @@ impl<T: ?Sized> RefCell<T> {
/// ```
#[inline]
#[unstable(feature = "as_unsafe_cell", issue = "27708")]
#[rustc_deprecated(since = "1.12.0", reason = "renamed to as_ptr")]
pub unsafe fn as_unsafe_cell(&self) -> &UnsafeCell<T> {
&self.value
}

/// Returns a raw pointer to the underlying data in this cell.
///
/// # Examples
///
/// ```
/// use std::cell::RefCell;
///
/// let c = RefCell::new(5);
///
/// let ptr = c.as_ptr();
/// ```
#[inline]
#[stable(feature = "cell_as_ptr", since = "1.12.0")]
pub fn as_ptr(&self) -> *mut T {
self.value.get()
}

/// Returns a mutable reference to the underlying data.
///
/// This call borrows `RefCell` mutably (at compile-time) so there is no
Expand Down
Loading