Skip to content

Commit 21cd78e

Browse files
committed
---
yaml --- r: 210375 b: refs/heads/try c: 8227db8 h: refs/heads/master i: 210373: cc0fa6a 210371: 5643a9f 210367: b5f6e50 v: v3
1 parent d41dd0d commit 21cd78e

Some content is hidden

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

78 files changed

+388
-1492
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: 3e561f05c00cd180ec02db4ccab2840a4aba93d2
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: ba0e1cd8147d452c356aacb29fb87568ca26f111
5-
refs/heads/try: 42212bb44a3abb76b145238866ad1dc1f9589b8f
5+
refs/heads/try: 8227db86eb8c9497ba81da35c012f23ece7a1ac0
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
88
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596

branches/try/mk/crates.mk

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ RUSTC_CRATES := rustc rustc_typeck rustc_borrowck rustc_resolve rustc_driver \
5858
rustc_data_structures
5959
HOST_CRATES := syntax $(RUSTC_CRATES) rustdoc fmt_macros
6060
CRATES := $(TARGET_CRATES) $(HOST_CRATES)
61-
TOOLS := compiletest rustdoc rustc rustbook error-index-generator
61+
TOOLS := compiletest rustdoc rustc rustbook
6262

6363
DEPS_core :=
6464
DEPS_libc := core
@@ -107,12 +107,10 @@ TOOL_DEPS_compiletest := test getopts
107107
TOOL_DEPS_rustdoc := rustdoc
108108
TOOL_DEPS_rustc := rustc_driver
109109
TOOL_DEPS_rustbook := std rustdoc
110-
TOOL_DEPS_error-index-generator := rustdoc syntax serialize
111110
TOOL_SOURCE_compiletest := $(S)src/compiletest/compiletest.rs
112111
TOOL_SOURCE_rustdoc := $(S)src/driver/driver.rs
113112
TOOL_SOURCE_rustc := $(S)src/driver/driver.rs
114113
TOOL_SOURCE_rustbook := $(S)src/rustbook/main.rs
115-
TOOL_SOURCE_error-index-generator := $(S)src/error-index-generator/main.rs
116114

117115
ONLY_RLIB_core := 1
118116
ONLY_RLIB_libc := 1

branches/try/mk/docs.mk

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -71,13 +71,9 @@ RUSTBOOK_EXE = $(HBIN2_H_$(CFG_BUILD))/rustbook$(X_$(CFG_BUILD))
7171
# ./configure
7272
RUSTBOOK = $(RPATH_VAR2_T_$(CFG_BUILD)_H_$(CFG_BUILD)) $(RUSTBOOK_EXE)
7373

74-
# The error-index-generator executable...
75-
ERR_IDX_GEN_EXE = $(HBIN2_H_$(CFG_BUILD))/error-index-generator$(X_$(CFG_BUILD))
76-
ERR_IDX_GEN = $(RPATH_VAR2_T_$(CFG_BUILD)_H_$(CFG_BUILD)) $(ERR_IDX_GEN_EXE)
77-
7874
D := $(S)src/doc
7975

80-
DOC_TARGETS := trpl style error-index
76+
DOC_TARGETS := trpl style
8177
COMPILER_DOC_TARGETS :=
8278
DOC_L10N_TARGETS :=
8379

@@ -292,9 +288,3 @@ doc/style/index.html: $(RUSTBOOK_EXE) $(wildcard $(S)/src/doc/style/*.md) | doc/
292288
@$(call E, rustbook: $@)
293289
$(Q)rm -rf doc/style
294290
$(Q)$(RUSTBOOK) build $(S)src/doc/style doc/style
295-
296-
error-index: doc/error-index.html
297-
298-
doc/error-index.html: $(ERR_IDX_GEN_EXE) | doc/
299-
$(Q)$(call E, error-index-generator: $@)
300-
$(Q)$(ERR_IDX_GEN)

branches/try/mk/prepare.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ define PREPARE_MAN
7070
$(Q)$(PREPARE_MAN_CMD) $(PREPARE_SOURCE_MAN_DIR)/$(1) $(PREPARE_DEST_MAN_DIR)/$(1)
7171
endef
7272

73-
PREPARE_TOOLS = $(filter-out compiletest rustbook error-index-generator, $(TOOLS))
73+
PREPARE_TOOLS = $(filter-out compiletest rustbook, $(TOOLS))
7474

7575

7676
# $(1) is tool

branches/try/src/doc/reference.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1867,12 +1867,13 @@ macro scope.
18671867
lower to the target's SIMD instructions, if any; the `simd` feature gate
18681868
is necessary to use this attribute.
18691869
- `static_assert` - on statics whose type is `bool`, terminates compilation
1870-
with an error if it is not initialized to `true`. To use this, the `static_assert`
1871-
feature gate must be enabled.
1870+
with an error if it is not initialized to `true`.
1871+
- `unsafe_destructor` - allow implementations of the "drop" language item
1872+
where the type it is implemented for does not implement the "send" language
1873+
item; the `unsafe_destructor` feature gate is needed to use this attribute
18721874
- `unsafe_no_drop_flag` - on structs, remove the flag that prevents
18731875
destructors from being run twice. Destructors might be run multiple times on
1874-
the same object with this attribute. To use this, the `unsafe_no_drop_flag` feature
1875-
gate must be enabled.
1876+
the same object with this attribute.
18761877
- `doc` - Doc comments such as `/// foo` are equivalent to `#[doc = "foo"]`.
18771878
- `rustc_on_unimplemented` - Write a custom note to be shown along with the error
18781879
when the trait is found to be unimplemented on a type.

branches/try/src/error-index-generator/main.rs

Lines changed: 0 additions & 119 deletions
This file was deleted.

branches/try/src/grammar/RustLexer.g4

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@ lexer grammar RustLexer;
88

99

1010
tokens {
11-
EQ, LT, LE, EQEQ, NE, GE, GT, ANDAND, OROR, NOT, TILDE, PLUS,
11+
EQ, LT, LE, EQEQ, NE, GE, GT, ANDAND, OROR, NOT, TILDE, PLUT,
1212
MINUS, STAR, SLASH, PERCENT, CARET, AND, OR, SHL, SHR, BINOP,
1313
BINOPEQ, AT, DOT, DOTDOT, DOTDOTDOT, COMMA, SEMI, COLON,
1414
MOD_SEP, RARROW, FAT_ARROW, LPAREN, RPAREN, LBRACKET, RBRACKET,
15-
LBRACE, RBRACE, POUND, DOLLAR, UNDERSCORE, LIT_CHAR, LIT_BYTE,
15+
LBRACE, RBRACE, POUND, DOLLAR, UNDERSCORE, LIT_CHAR,
1616
LIT_INTEGER, LIT_FLOAT, LIT_STR, LIT_STR_RAW, LIT_BINARY,
17-
LIT_BINARY_RAW, QUESTION, IDENT, LIFETIME, WHITESPACE, DOC_COMMENT,
18-
COMMENT, SHEBANG, UTF8_BOM
17+
LIT_BINARY_RAW, IDENT, LIFETIME, WHITESPACE, DOC_COMMENT,
18+
COMMENT, SHEBANG
1919
}
2020

2121
import xidstart , xidcontinue;

branches/try/src/grammar/verify.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ fn parse_token_list(file: &str) -> HashMap<String, token::Token> {
111111
"LIT_BINARY_RAW" => token::Literal(token::BinaryRaw(Name(0), 0), None),
112112
"QUESTION" => token::Question,
113113
"SHEBANG" => token::Shebang(Name(0)),
114-
_ => panic!("Bad token str `{}`", val),
114+
_ => continue,
115115
};
116116

117117
res.insert(num.to_string(), tok);

branches/try/src/liballoc/boxed.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
//! }
3838
//! ```
3939
//!
40-
//! This will print `Cons(1, Cons(2, Nil))`.
40+
//! This will print `Cons(1, Box(Cons(2, Box(Nil))))`.
4141
//!
4242
//! Recursive structures must be boxed, because if the definition of `Cons` looked like this:
4343
//!

branches/try/src/libcollections/bit.rs

Lines changed: 0 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,6 @@ use core::hash;
8989
use core::iter::RandomAccessIterator;
9090
use core::iter::{Chain, Enumerate, Repeat, Skip, Take, repeat, Cloned};
9191
use core::iter::{self, FromIterator};
92-
use core::mem::swap;
9392
use core::ops::Index;
9493
use core::slice;
9594
use core::{u8, u32, usize};
@@ -603,106 +602,6 @@ impl BitVec {
603602
Iter { bit_vec: self, next_idx: 0, end_idx: self.nbits }
604603
}
605604

606-
/// Moves all bits from `other` into `Self`, leaving `other` empty.
607-
///
608-
/// # Examples
609-
///
610-
/// ```
611-
/// # #![feature(collections, bit_vec_append_split_off)]
612-
/// use std::collections::BitVec;
613-
///
614-
/// let mut a = BitVec::from_bytes(&[0b10000000]);
615-
/// let mut b = BitVec::from_bytes(&[0b01100001]);
616-
///
617-
/// a.append(&mut b);
618-
///
619-
/// assert_eq!(a.len(), 16);
620-
/// assert_eq!(b.len(), 0);
621-
/// assert!(a.eq_vec(&[true, false, false, false, false, false, false, false,
622-
/// false, true, true, false, false, false, false, true]));
623-
/// ```
624-
#[unstable(feature = "bit_vec_append_split_off",
625-
reason = "recently added as part of collections reform 2")]
626-
pub fn append(&mut self, other: &mut Self) {
627-
let b = self.len() % u32::BITS;
628-
629-
self.nbits += other.len();
630-
other.nbits = 0;
631-
632-
if b == 0 {
633-
self.storage.append(&mut other.storage);
634-
} else {
635-
self.storage.reserve(other.storage.len());
636-
637-
for block in other.storage.drain(..) {
638-
*(self.storage.last_mut().unwrap()) |= block << b;
639-
self.storage.push(block >> (u32::BITS - b));
640-
}
641-
}
642-
}
643-
644-
/// Splits the `BitVec` into two at the given bit,
645-
/// retaining the first half in-place and returning the second one.
646-
///
647-
/// # Examples
648-
///
649-
/// ```
650-
/// # #![feature(collections, bit_vec_append_split_off)]
651-
/// use std::collections::BitVec;
652-
/// let mut a = BitVec::new();
653-
/// a.push(true);
654-
/// a.push(false);
655-
/// a.push(false);
656-
/// a.push(true);
657-
///
658-
/// let b = a.split_off(2);
659-
///
660-
/// assert_eq!(a.len(), 2);
661-
/// assert_eq!(b.len(), 2);
662-
/// assert!(a.eq_vec(&[true, false]));
663-
/// assert!(b.eq_vec(&[false, true]));
664-
/// ```
665-
#[unstable(feature = "bit_vec_append_split_off",
666-
reason = "recently added as part of collections reform 2")]
667-
pub fn split_off(&mut self, at: usize) -> Self {
668-
assert!(at <= self.len(), "`at` out of bounds");
669-
670-
let mut other = BitVec::new();
671-
672-
if at == 0 {
673-
swap(self, &mut other);
674-
return other;
675-
} else if at == self.len() {
676-
return other;
677-
}
678-
679-
let w = at / u32::BITS;
680-
let b = at % u32::BITS;
681-
other.nbits = self.nbits - at;
682-
self.nbits = at;
683-
if b == 0 {
684-
// Split at block boundary
685-
other.storage = self.storage.split_off(w);
686-
} else {
687-
other.storage.reserve(self.storage.len() - w);
688-
689-
{
690-
let mut iter = self.storage[w..].iter();
691-
let mut last = *iter.next().unwrap();
692-
for &cur in iter {
693-
other.storage.push((last >> b) | (cur << (u32::BITS - b)));
694-
last = cur;
695-
}
696-
other.storage.push(last >> b);
697-
}
698-
699-
self.storage.truncate(w+1);
700-
self.fix_last_block();
701-
}
702-
703-
other
704-
}
705-
706605
/// Returns `true` if all bits are 0.
707606
///
708607
/// # Examples

branches/try/src/libcollections/slice.rs

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -996,13 +996,9 @@ impl<T> [T] {
996996
////////////////////////////////////////////////////////////////////////////////
997997
// Extension traits for slices over specific kinds of data
998998
////////////////////////////////////////////////////////////////////////////////
999-
#[unstable(feature = "collections", reason = "recently changed")]
999+
#[unstable(feature = "collections", reason = "U should be an associated type")]
10001000
/// An extension trait for concatenating slices
1001-
pub trait SliceConcatExt<T: ?Sized> {
1002-
#[unstable(feature = "collections", reason = "recently changed")]
1003-
/// The resulting type after concatenation
1004-
type Output;
1005-
1001+
pub trait SliceConcatExt<T: ?Sized, U> {
10061002
/// Flattens a slice of `T` into a single value `U`.
10071003
///
10081004
/// # Examples
@@ -1011,7 +1007,7 @@ pub trait SliceConcatExt<T: ?Sized> {
10111007
/// assert_eq!(["hello", "world"].concat(), "helloworld");
10121008
/// ```
10131009
#[stable(feature = "rust1", since = "1.0.0")]
1014-
fn concat(&self) -> Self::Output;
1010+
fn concat(&self) -> U;
10151011

10161012
/// Flattens a slice of `T` into a single value `U`, placing a given separator between each.
10171013
///
@@ -1021,12 +1017,10 @@ pub trait SliceConcatExt<T: ?Sized> {
10211017
/// assert_eq!(["hello", "world"].connect(" "), "hello world");
10221018
/// ```
10231019
#[stable(feature = "rust1", since = "1.0.0")]
1024-
fn connect(&self, sep: &T) -> Self::Output;
1020+
fn connect(&self, sep: &T) -> U;
10251021
}
10261022

1027-
impl<T: Clone, V: AsRef<[T]>> SliceConcatExt<T> for [V] {
1028-
type Output = Vec<T>;
1029-
1023+
impl<T: Clone, V: AsRef<[T]>> SliceConcatExt<T, Vec<T>> for [V] {
10301024
fn concat(&self) -> Vec<T> {
10311025
let size = self.iter().fold(0, |acc, v| acc + v.as_ref().len());
10321026
let mut result = Vec::with_capacity(size);

0 commit comments

Comments
 (0)