Skip to content

Commit e516a33

Browse files
committed
---
yaml --- r: 196338 b: refs/heads/tmp c: 1081626 h: refs/heads/master v: v3
1 parent e9062e1 commit e516a33

File tree

621 files changed

+9741
-10515
lines changed

Some content is hidden

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

621 files changed

+9741
-10515
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ refs/heads/building: 126db549b038c84269a1e4fe46f051b2c15d6970
3232
refs/heads/beta: 9854143cba679834bc4ef932858cd5303f015a0e
3333
refs/heads/windistfix: 7608dbad651f02e837ed05eef3d74a6662a6e928
3434
refs/tags/1.0.0-alpha: e42bd6d93a1d3433c486200587f8f9e12590a4d7
35-
refs/heads/tmp: 3e8a773bc51cc276fa53a07980566e816234a6bd
35+
refs/heads/tmp: 10816266d65ead7645a147ae1fde1b90aeda5d33
3636
refs/tags/1.0.0-alpha.2: 4c705f6bc559886632d3871b04f58aab093bfa2f
3737
refs/tags/homu-tmp: 53a183f0274316596bf9405944d4f0468d8c93e4
3838
refs/heads/gate: 97c84447b65164731087ea82685580cc81424412

branches/tmp/RELEASES.md

Lines changed: 0 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -1,102 +1,3 @@
1-
Version 1.0.0-beta (April 2015)
2-
-------------------------------------
3-
4-
* ~1100 changes, numerous bugfixes
5-
6-
* Highlights
7-
8-
* The big news is that the vast majority of the standard library
9-
is now `#[stable]` -- 75% of the non-deprecated API surface at
10-
last count. Numerous crates are now running on stable
11-
Rust. Starting with this release, it is not possible to use
12-
unstable features on a stable build.
13-
* Arithmetic on basic integer types now
14-
[checks for overflow in debug builds][overflow].
15-
16-
* Language
17-
18-
* [`Send` no longer implies `'static`][send-rfc], which made
19-
possible the [`thread::scoped` API][scoped]. Scoped threads can
20-
borrow data from their parent's stack frame -- safely!
21-
* [UFCS now supports trait-less associated paths][moar-ufcs] like
22-
`MyType::default()`.
23-
* Primitive types [now have inherent methods][prim-inherent],
24-
obviating the need for extension traits like `SliceExt`.
25-
* Methods with `Self: Sized` in their `where` clause are
26-
[considered object-safe][self-sized], allowing many extension
27-
traits like `IteratorExt` to be merged into the traits they
28-
extended.
29-
* You can now [refer to associated types][assoc-where] whose
30-
corresponding trait bounds appear only in a `where` clause.
31-
* The final bits of [OIBIT landed][oibit-final], meaning that
32-
traits like `Send` and `Sync` are now library-defined.
33-
* A [Reflect trait][reflect] was introduced, which means that
34-
downcasting via the `Any` trait is effectively limited to
35-
concrete types. This helps retain the potentially-important
36-
"parametricity" property: generic code cannot behave differently
37-
for different type arguments except in minor ways.
38-
* The `unsafe_destructor` feature is now deprecated in favor of
39-
the [new `dropck`][dropck]. This change is a major reduction in
40-
unsafe code.
41-
* Trait coherence was [revised again][fundamental], this time with
42-
an eye toward API evolution over time.
43-
44-
* Libraries
45-
46-
* The new path and IO modules are complete and `#[stable]`. This
47-
was the major library focus for this cycle.
48-
* The path API was [revised][path-normalize] to normalize `.`,
49-
adjusting the tradeoffs in favor of the most common usage.
50-
* A large number of remaining APIs in `std` were also stabilized
51-
during this cycle; about 75% of the non-deprecated API surface
52-
is now stable.
53-
* The new [string pattern API][string-pattern] landed, which makes
54-
the string slice API much more internally consistent and flexible.
55-
* A shiny [framework for Debug implementations][debug-builder] landed.
56-
This makes it possible to opt in to "pretty-printed" debugging output.
57-
* A new set of [generic conversion traits][conversion] replaced
58-
many existing ad hoc traits.
59-
* Generic numeric traits were
60-
[completely removed][num-traits]. This was made possible thanks
61-
to inherent methods for primitive types, and the removal gives
62-
maximal flexibility for designing a numeric hierarchy in the future.
63-
* The `Fn` traits are now related via [inheritance][fn-inherit]
64-
and provide ergonomic [blanket implementations][fn-blanket].
65-
* The `Index` and `IndexMut` traits were changed to
66-
[take the index by value][index-value], enabling code like
67-
`hash_map["string"]` to work.
68-
* `Copy` now [inherits][copy-clone] from `Clone`, meaning that all
69-
`Copy` data is known to be `Clone` as well.
70-
71-
* Infrastructure
72-
73-
* Metadata was tuned, shrinking binaries [by 27%][metadata-shrink].
74-
* Much headway was made on ecosystem-wide CI, making it possible
75-
to [compare builds for breakage][ci-compare].
76-
77-
[send-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0458-send-improvements.md
78-
[scoped]: http://static.rust-lang.org/doc/master/std/thread/fn.scoped.html
79-
[moar-ufcs]: https://github.com/rust-lang/rust/pull/22172
80-
[prim-inherent]: https://github.com/rust-lang/rust/pull/23104
81-
[overflow]: https://github.com/rust-lang/rfcs/blob/master/text/0560-integer-overflow.md
82-
[metadata-shrink]: https://github.com/rust-lang/rust/pull/22971
83-
[self-sized]: https://github.com/rust-lang/rust/pull/22301
84-
[assoc-where]: https://github.com/rust-lang/rust/pull/22512
85-
[string-pattern]: https://github.com/rust-lang/rust/pull/22466
86-
[oibit-final]: https://github.com/rust-lang/rust/pull/21689
87-
[reflect]: https://github.com/rust-lang/rust/pull/23712
88-
[debug-builder]: https://github.com/rust-lang/rfcs/blob/master/text/0640-debug-improvements.md
89-
[conversion]: https://github.com/rust-lang/rfcs/pull/529
90-
[num-traits]: https://github.com/rust-lang/rust/pull/23549
91-
[index-value]: https://github.com/rust-lang/rust/pull/23601
92-
[dropck]: https://github.com/rust-lang/rfcs/pull/769
93-
[fundamental]: https://github.com/rust-lang/rfcs/pull/1023
94-
[ci-compare]: https://gist.github.com/brson/a30a77836fbec057cbee
95-
[fn-inherit]: https://github.com/rust-lang/rust/pull/23282
96-
[fn-blanket]: https://github.com/rust-lang/rust/pull/23895
97-
[copy-clone]: https://github.com/rust-lang/rust/pull/23860
98-
[path-normalize]: https://github.com/rust-lang/rust/pull/23229
99-
1001
Version 1.0.0-alpha.2 (February 2015)
1012
-------------------------------------
1023

branches/tmp/mk/crates.mk

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -125,18 +125,13 @@ ONLY_RLIB_rustc_bitflags := 1
125125
# On channels where the only usable crate is std, only build documentation for
126126
# std. This keeps distributions small and doesn't clutter up the API docs with
127127
# confusing internal details from the crates behind the facade.
128-
#
129-
# (Disabled while cmr figures out how to change rustdoc to make reexports work
130-
# slightly nicer. Otherwise, all cross-crate links to Vec will go to
131-
# libcollections, breaking them, and [src] links for anything reexported will
132-
# not work.)
133128

134-
#ifeq ($(CFG_RELEASE_CHANNEL),stable)
135-
#DOC_CRATES := std
136-
#else
137-
#ifeq ($(CFG_RELEASE_CHANNEL),beta)
138-
#DOC_CRATES := std
139-
#else
129+
ifeq ($(CFG_RELEASE_CHANNEL),stable)
130+
DOC_CRATES := std
131+
else
132+
ifeq ($(CFG_RELEASE_CHANNEL),beta)
133+
DOC_CRATES := std
134+
else
140135
DOC_CRATES := $(filter-out rustc, \
141136
$(filter-out rustc_trans, \
142137
$(filter-out rustc_typeck, \
@@ -148,8 +143,8 @@ DOC_CRATES := $(filter-out rustc, \
148143
$(filter-out log, \
149144
$(filter-out getopts, \
150145
$(filter-out syntax, $(CRATES))))))))))))
151-
#endif
152-
#endif
146+
endif
147+
endif
153148
COMPILER_DOC_CRATES := rustc rustc_trans rustc_borrowck rustc_resolve \
154149
rustc_typeck rustc_driver syntax rustc_privacy \
155150
rustc_lint

branches/tmp/mk/tests.mk

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ $(foreach file,$(wildcard $(S)src/doc/trpl/*.md), \
166166
######################################################################
167167

168168
# The main testing target. Tests lots of stuff.
169-
check: check-sanitycheck cleantmptestlogs cleantestlibs all check-stage2 tidy
169+
check: cleantmptestlogs cleantestlibs all check-stage2 tidy
170170
$(Q)$(CFG_PYTHON) $(S)src/etc/check-summary.py tmp/*.log
171171

172172
# As above but don't bother running tidy.
@@ -193,11 +193,6 @@ check-docs: cleantestlibs cleantmptestlogs check-stage2-docs
193193
# Not run as part of the normal test suite, but tested by bors on checkin.
194194
check-secondary: check-build-compiletest check-build-lexer-verifier check-lexer check-pretty
195195

196-
.PHONY: check-sanitycheck
197-
198-
check-sanitycheck:
199-
$(Q)$(CFG_PYTHON) $(S)src/etc/check-sanitycheck.py
200-
201196
# check + check-secondary.
202197
#
203198
# Issue #17883: build check-secondary first so hidden dependencies in

branches/tmp/src/compiletest/compiletest.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
#![feature(std_misc)]
1919
#![feature(test)]
2020
#![feature(path_ext)]
21+
#![feature(convert)]
2122
#![feature(str_char)]
2223

2324
#![deny(warnings)]
@@ -31,6 +32,7 @@ extern crate log;
3132
use std::env;
3233
use std::fs;
3334
use std::path::{Path, PathBuf};
35+
use std::thunk::Thunk;
3436
use getopts::{optopt, optflag, reqopt};
3537
use common::Config;
3638
use common::{Pretty, DebugInfoGdb, DebugInfoLldb, Codegen};
@@ -350,7 +352,7 @@ pub fn make_test_name(config: &Config, testfile: &Path) -> test::TestName {
350352
pub fn make_test_closure(config: &Config, testfile: &Path) -> test::TestFn {
351353
let config = (*config).clone();
352354
let testfile = testfile.to_path_buf();
353-
test::DynTestFn(Box::new(move || {
355+
test::DynTestFn(Thunk::new(move || {
354356
runtest::run(config, &testfile)
355357
}))
356358
}

branches/tmp/src/compiletest/header.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,7 +311,7 @@ fn parse_exec_env(line: &str) -> Option<(String, String)> {
311311
parse_name_value_directive(line, "exec-env").map(|nv| {
312312
// nv is either FOO or FOO=BAR
313313
let mut strs: Vec<String> = nv
314-
.splitn(2, '=')
314+
.splitn(1, '=')
315315
.map(|s| s.to_string())
316316
.collect();
317317

branches/tmp/src/doc/reference.md

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -977,13 +977,17 @@ An example of `use` declarations:
977977

978978
```
979979
# #![feature(core)]
980+
use std::iter::range_step;
980981
use std::option::Option::{Some, None};
981982
use std::collections::hash_map::{self, HashMap};
982983
983984
fn foo<T>(_: T){}
984985
fn bar(map1: HashMap<String, usize>, map2: hash_map::HashMap<String, usize>){}
985986
986987
fn main() {
988+
// Equivalent to 'std::iter::range_step(0, 10, 2);'
989+
range_step(0, 10, 2);
990+
987991
// Equivalent to 'foo(vec![std::option::Option::Some(1.0f64),
988992
// std::option::Option::None]);'
989993
foo(vec![Some(1.0f64), None]);
@@ -1184,15 +1188,12 @@ the guarantee that these issues are never caused by safe code.
11841188

11851189
* Data races
11861190
* Dereferencing a null/dangling raw pointer
1191+
* Mutating an immutable value/reference without `UnsafeCell`
11871192
* Reads of [undef](http://llvm.org/docs/LangRef.html#undefined-values)
11881193
(uninitialized) memory
11891194
* Breaking the [pointer aliasing
11901195
rules](http://llvm.org/docs/LangRef.html#pointer-aliasing-rules)
11911196
with raw pointers (a subset of the rules used by C)
1192-
* `&mut` and `&` follow LLVM’s scoped [noalias] model, except if the `&T`
1193-
contains an `UnsafeCell<U>`. Unsafe code must not violate these aliasing
1194-
guarantees.
1195-
* Mutating an immutable value/reference without `UnsafeCell<U>`
11961197
* Invoking undefined behavior via compiler intrinsics:
11971198
* Indexing outside of the bounds of an object with `std::ptr::offset`
11981199
(`offset` intrinsic), with
@@ -1209,8 +1210,6 @@ the guarantee that these issues are never caused by safe code.
12091210
code. Rust's failure system is not compatible with exception handling in
12101211
other languages. Unwinding must be caught and handled at FFI boundaries.
12111212

1212-
[noalias]: http://llvm.org/docs/LangRef.html#noalias
1213-
12141213
##### Behaviour not considered unsafe
12151214

12161215
This is a list of behaviour not considered *unsafe* in Rust terms, but that may
@@ -1648,7 +1647,7 @@ specific type.
16481647
Implementations are defined with the keyword `impl`.
16491648

16501649
```
1651-
# #[derive(Copy, Clone)]
1650+
# #[derive(Copy)]
16521651
# struct Point {x: f64, y: f64};
16531652
# type Surface = i32;
16541653
# struct BoundingBox {x: f64, y: f64, width: f64, height: f64};
@@ -1661,10 +1660,6 @@ struct Circle {
16611660
16621661
impl Copy for Circle {}
16631662
1664-
impl Clone for Circle {
1665-
fn clone(&self) -> Circle { *self }
1666-
}
1667-
16681663
impl Shape for Circle {
16691664
fn draw(&self, s: Surface) { do_draw_circle(s, *self); }
16701665
fn bounding_box(&self) -> BoundingBox {

branches/tmp/src/doc/trpl/SUMMARY.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,5 @@
4242
* [Intrinsics](intrinsics.md)
4343
* [Lang items](lang-items.md)
4444
* [Link args](link-args.md)
45-
* [Benchmark Tests](benchmark-tests.md)
46-
* [Box Syntax and Patterns](box-syntax-and-patterns.md)
4745
* [Conclusion](conclusion.md)
4846
* [Glossary](glossary.md)

0 commit comments

Comments
 (0)