Skip to content

Commit 8fdf7df

Browse files
committed
---
yaml --- r: 276869 b: refs/heads/try c: c411897 h: refs/heads/master i: 276867: 96863a6
1 parent 68a5e86 commit 8fdf7df

File tree

1,751 files changed

+60135
-41365
lines changed

Some content is hidden

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

1,751 files changed

+60135
-41365
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
refs/heads/master: 6dbb0e86aec11050480beb76eade6fb805010ba7
33
refs/heads/snap-stage3: 235d77457d80b549dad3ac36d94f235208a1eafb
4-
refs/heads/try: 8f463ea98e1ce5763b2ecfb4480bc7cce83125ac
4+
refs/heads/try: c411897e38add84e1d4709584bb5728ecf587f15
55
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
66
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
77
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503

branches/try/.gitmodules

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,4 @@
1616
url = https://github.com/rust-lang/rust-installer.git
1717
[submodule "src/liblibc"]
1818
path = src/liblibc
19-
url = https://github.com/rust-lang-nursery/libc.git
19+
url = https://github.com/rust-lang/libc.git

branches/try/.mailmap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ Gareth Daniel Smith <garethdanielsmith@gmail.com> Gareth Smith <garethdanielsmit
8282
Georges Dubus <georges.dubus@gmail.com> <georges.dubus@compiletoi.net>
8383
Graham Fawcett <graham.fawcett@gmail.com> Graham Fawcett <fawcett@uwindsor.ca>
8484
Graydon Hoare <graydon@pobox.com> Graydon Hoare <graydon@mozilla.com>
85-
Guillaume Gomez <guillaume1.gomez@gmail.com>
85+
Guillaume Gomez <guillaume1.gomez@gmail.com> Guillaume Gomez <ggomez@ggo.ifr.lan>
8686
Heather <heather@cynede.net> <Cynede@Gentoo.org>
8787
Heather <heather@cynede.net> <Heather@cynede.net>
8888
Herman J. Radtke III <herman@hermanradtke.com> Herman J. Radtke III <hermanradtke@gmail.com>

branches/try/COMPILER_TESTS.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,3 +42,43 @@ whole, instead of just a few lines inside the test.
4242
* `ignore-test` always ignores the test
4343
* `ignore-lldb` and `ignore-gdb` will skip the debuginfo tests
4444
* `min-{gdb,lldb}-version`
45+
* `should-fail` indicates that the test should fail; used for "meta testing",
46+
where we test the compiletest program itself to check that it will generate
47+
errors in appropriate scenarios. This header is ignored for pretty-printer tests.
48+
49+
## Revisions
50+
51+
Certain classes of tests support "revisions" (as of the time of this
52+
writing, this includes run-pass, compile-fail, run-fail, and
53+
incremental, though incremental tests are somewhat
54+
different). Revisions allow a single test file to be used for multiple
55+
tests. This is done by adding a special header at the top of the file:
56+
57+
```
58+
// revisions: foo bar baz
59+
```
60+
61+
This will result in the test being compiled (and tested) three times,
62+
once with `--cfg foo`, once with `--cfg bar`, and once with `--cfg
63+
baz`. You can therefore use `#[cfg(foo)]` etc within the test to tweak
64+
each of these results.
65+
66+
You can also customize headers and expected error messages to a particular
67+
revision. To do this, add `[foo]` (or `bar`, `baz`, etc) after the `//`
68+
comment, like so:
69+
70+
```
71+
// A flag to pass in only for cfg `foo`:
72+
//[foo]compile-flags: -Z verbose
73+
74+
#[cfg(foo)]
75+
fn test_foo() {
76+
let x: usize = 32_u32; //[foo]~ ERROR mismatched types
77+
}
78+
```
79+
80+
Note that not all headers have meaning when customized to a revision.
81+
For example, the `ignore-test` header (and all "ignore" headers)
82+
currently only apply to the test as a whole, not to particular
83+
revisions. The only headers that are intended to really work when
84+
customized to a revision are error patterns and compiler flags.

branches/try/CONTRIBUTING.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,8 @@ which includes important information about what platform you're on, what
7171
version of Rust you're using, etc.
7272

7373
Sometimes, a backtrace is helpful, and so including that is nice. To get
74-
a backtrace, set the `RUST_BACKTRACE` environment variable. The easiest way
74+
a backtrace, set the `RUST_BACKTRACE` environment variable to a value
75+
other than `0`. The easiest way
7576
to do this is to invoke `rustc` like this:
7677

7778
```bash
@@ -132,8 +133,8 @@ Some common make targets are:
132133
- `make check-stage1-std NO_REBUILD=1` - test the standard library without
133134
rebuilding the entire compiler
134135
- `make check TESTNAME=<substring-of-test-name>` - Run a matching set of tests.
135-
- `TESTNAME` should be a substring of the tests to match against e.g. it could
136-
be the fully qualified test name, or just a part of it.
136+
- `TESTNAME` should be a substring of the tests to match against e.g. it could
137+
be the fully qualified test name, or just a part of it.
137138
`TESTNAME=collections::hash::map::test_map::test_capacity_not_less_than_len`
138139
or `TESTNAME=test_capacity_not_less_than_len`.
139140
- `make check-stage1-rpass TESTNAME=<substring-of-test-name>` - Run a single

branches/try/Makefile.in

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,10 @@
100100
# // Having trouble figuring out which test is failing? Turn off parallel tests
101101
# make check-stage1-std RUST_TEST_THREADS=1
102102
#
103+
# // To make debug!() and other logging calls visible, reconfigure:
104+
# ./configure --enable-debug-assertions
105+
# make ....
106+
#
103107
# If you really feel like getting your hands dirty, then:
104108
#
105109
# run `make nitty-gritty`

branches/try/README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ build.
7777
7878
Download [MinGW from
7979
here](http://mingw-w64.org/doku.php/download/mingw-builds), and choose the
80-
`threads=win32,exceptions=dwarf/seh` flavor when installing. After installing,
80+
`version=4.9.x,threads=win32,exceptions=dwarf/seh` flavor when installing. Also, make sure to install to a path without spaces in it. After installing,
8181
add its `bin` directory to your `PATH`. This is due to [#28260](https://github.com/rust-lang/rust/issues/28260), in the future,
8282
installing from pacman should be just fine.
8383
@@ -177,10 +177,11 @@ To contribute to Rust, please see [CONTRIBUTING](CONTRIBUTING.md).
177177
Rust has an [IRC] culture and most real-time collaboration happens in a
178178
variety of channels on Mozilla's IRC network, irc.mozilla.org. The
179179
most popular channel is [#rust], a venue for general discussion about
180-
Rust, and a good place to ask for help.
180+
Rust. And a good place to ask for help would be [#rust-beginners].
181181
182182
[IRC]: https://en.wikipedia.org/wiki/Internet_Relay_Chat
183183
[#rust]: irc://irc.mozilla.org/rust
184+
[#rust-beginners]: irc://irc.mozilla.org/rust-beginners
184185
185186
## License
186187

branches/try/RELEASES.md

Lines changed: 80 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -1,82 +1,74 @@
11
Version 1.7.0 (2016-03-03)
22
==========================
33

4-
Language
5-
--------
6-
7-
* Soundness fixes to the interactions between associated types and
8-
lifetimes, specified in [RFC 1214], [now generate errors][1.7sf] for
9-
code that violates the new rules. This is a significant change that
10-
is known to break existing code, so it has emitted warnings for the
11-
new error cases since 1.4 to give crate authors time to adapt. The
12-
details of what is changing are subtle; read the RFC for more.
13-
144
Libraries
155
---------
166

17-
* Stabilized APIs:
18-
[`Path::strip_prefix`][] (renamed from relative_from),
19-
[`path::StripPrefixError`][] (new error type returned from strip_prefix),
20-
[`Ipv4Addr::is_loopback`],
21-
[`Ipv4Addr::is_private`],
22-
[`Ipv4Addr::is_link_local`],
23-
[`Ipv4Addr::is_multicast`],
24-
[`Ipv4Addr::is_broadcast`],
25-
[`Ipv4Addr::is_documentation`],
26-
[`Ipv6Addr::is_unspecified`],
27-
[`Ipv6Addr::is_loopback`],
28-
[`Ipv6Addr::is_multicast`],
29-
[`Vec::as_slice`],
30-
[`Vec::as_mut_slice`],
31-
[`String::as_str`],
32-
[`String::as_mut_str`],
33-
`<[T]>::`[`clone_from_slice`], which now requires the two slices to
34-
be the same length
35-
`<[T]>::`[`sort_by_key`],
36-
[`i32::checked_rem`],
37-
[`i32::checked_neg`],
38-
[`i32::checked_shl`],
39-
[`i32::checked_shr`],
40-
[`i32::saturating_mul`],
41-
[`i32::overflowing_add`],
42-
[`i32::overflowing_sub`],
43-
[`i32::overflowing_mul`],
44-
[`i32::overflowing_div`],
45-
[`i32::overflowing_rem`],
46-
[`i32::overflowing_neg`],
47-
[`i32::overflowing_shl`],
48-
[`i32::overflowing_shr`],
49-
[`u32::checked_rem`],
50-
[`u32::checked_neg`],
51-
[`u32::checked_shl`],
52-
[`u32::checked_shl`],
53-
[`u32::saturating_mul`],
54-
[`u32::overflowing_add`],
55-
[`u32::overflowing_sub`],
56-
[`u32::overflowing_mul`],
57-
[`u32::overflowing_div`],
58-
[`u32::overflowing_rem`],
59-
[`u32::overflowing_neg`],
60-
[`u32::overflowing_shl`],
61-
[`u32::overflowing_shr`],
62-
checked, saturated, and overflowing operations for other primitive types,
63-
[`ffi::IntoStringError`],
64-
[`CString::into_string`],
65-
[`CString::into_bytes`],
66-
[`CString::into_bytes_with_nul`],
67-
`From<CString> for Vec<u8>`,
68-
[`IntoStringError::into_cstring`],
69-
[`IntoStringError::utf8_error`],
70-
`Error for IntoStringError`.
7+
* Stabilized APIs
8+
* `Path`
9+
* [`Path::strip_prefix`][] (renamed from relative_from)
10+
* [`path::StripPrefixError`][] (new error type returned from strip_prefix)
11+
* `Ipv4Addr`
12+
* [`Ipv4Addr::is_loopback`]
13+
* [`Ipv4Addr::is_private`]
14+
* [`Ipv4Addr::is_link_local`]
15+
* [`Ipv4Addr::is_multicast`]
16+
* [`Ipv4Addr::is_broadcast`]
17+
* [`Ipv4Addr::is_documentation`]
18+
* `Ipv6Addr`
19+
* [`Ipv6Addr::is_unspecified`]
20+
* [`Ipv6Addr::is_loopback`]
21+
* [`Ipv6Addr::is_multicast`]
22+
* `Vec`
23+
* [`Vec::as_slice`]
24+
* [`Vec::as_mut_slice`]
25+
* `String`
26+
* [`String::as_str`]
27+
* [`String::as_mut_str`]
28+
* Slices
29+
* `<[T]>::`[`clone_from_slice`], which now requires the two slices to
30+
be the same length
31+
* `<[T]>::`[`sort_by_key`]
32+
* checked, saturated, and overflowing operations
33+
* [`i32::checked_rem`], [`i32::checked_neg`], [`i32::checked_shl`], [`i32::checked_shr`]
34+
* [`i32::saturating_mul`]
35+
* [`i32::overflowing_add`], [`i32::overflowing_sub`], [`i32::overflowing_mul`], [`i32::overflowing_div`]
36+
* [`i32::overflowing_rem`], [`i32::overflowing_neg`], [`i32::overflowing_shl`], [`i32::overflowing_shr`]
37+
* [`u32::checked_rem`], [`u32::checked_neg`], [`u32::checked_shl`], [`u32::checked_shl`]
38+
* [`u32::saturating_mul`]
39+
* [`u32::overflowing_add`], [`u32::overflowing_sub`], [`u32::overflowing_mul`], [`u32::overflowing_div`]
40+
* [`u32::overflowing_rem`], [`u32::overflowing_neg`], [`u32::overflowing_shl`], [`u32::overflowing_shr`]
41+
* and checked, saturated, and overflowing operations for other primitive types
42+
* FFI
43+
* [`ffi::IntoStringError`]
44+
* [`CString::into_string`]
45+
* [`CString::into_bytes`]
46+
* [`CString::into_bytes_with_nul`]
47+
* `From<CString> for Vec<u8>`
48+
* `IntoStringError`
49+
* [`IntoStringError::into_cstring`]
50+
* [`IntoStringError::utf8_error`]
51+
* `Error for IntoStringError`
52+
* Hashing
53+
* [`std::hash::BuildHasher`]
54+
* [`BuildHasher::Hasher`]
55+
* [`BuildHasher::build_hasher`]
56+
* [`std::hash::BuildHasherDefault`]
57+
* [`HashMap::with_hasher`]
58+
* [`HashMap::with_capacity_and_hasher`]
59+
* [`HashSet::with_hasher`]
60+
* [`HashSet::with_capacity_and_hasher`]
61+
* [`std::collections::hash_map::RandomState`]
62+
* [`RandomState::new`]
7163
* [Validating UTF-8 is faster by a factor of between 7 and 14x for
7264
ASCII input][1.7utf8]. This means that creating `String`s and `str`s
7365
from bytes is faster.
7466
* [The performance of `LineWriter` (and thus `io::stdout`) was
7567
improved by using `memchr` to search for newlines][1.7m].
7668
* [`f32::to_degrees` and `f32::to_radians` are stable][1.7f]. The
7769
`f64` variants were stabilized previously.
78-
* [`BTreeMap` was rewritten to use less memory improve performance of
79-
insertion and iteration, the latter by as much as 5x`][1.7bm].
70+
* [`BTreeMap` was rewritten to use less memory and improve the performance
71+
of insertion and iteration, the latter by as much as 5x][1.7bm].
8072
* [`BTreeSet` and its iterators, `Iter`, `IntoIter`, and `Range` are
8173
covariant over their contained type][1.7bt].
8274
* [`LinkedList` and its iterators, `Iter` and `IntoIter` are covariant
@@ -89,9 +81,6 @@ Libraries
8981
Misc
9082
----
9183

92-
* [The `--error-format=json` flag to `rustc` causes it to emit errors
93-
in JSON format][1.7j]. This is an unstable flag and so also requires
94-
the `-Z unstable-options` flag.
9584
* [When running tests with `--test`, rustdoc will pass `--cfg`
9685
arguments to the compiler][1.7dt].
9786
* [The compiler is built with RPATH information by default][1.7rpa].
@@ -113,6 +102,12 @@ Cargo
113102
Compatibility Notes
114103
-------------------
115104

105+
* Soundness fixes to the interactions between associated types and
106+
lifetimes, specified in [RFC 1214], [now generate errors][1.7sf] for
107+
code that violates the new rules. This is a significant change that
108+
is known to break existing code, so it has emitted warnings for the
109+
new error cases since 1.4 to give crate authors time to adapt. The
110+
details of what is changing are subtle; read the RFC for more.
116111
* [Several bugs in the compiler's visibility calculations were
117112
fixed][1.7v]. Since this was found to break significant amounts of
118113
code, the new errors will be emitted as warnings for several release
@@ -121,8 +116,8 @@ Compatibility Notes
121116
that were not intended. In this release, [defaulted type parameters
122117
appearing outside of type definitions will generate a
123118
warning][1.7d], which will become an error in future releases.
124-
* [Parsing "." as a float results in an error instead of
125-
0][1.7p]. That is, `".".parse::<f32>()` returns `Err`, not `Ok(0)`.
119+
* [Parsing "." as a float results in an error instead of 0][1.7p].
120+
That is, `".".parse::<f32>()` returns `Err`, not `Ok(0.0)`.
126121
* [Borrows of closure parameters may not outlive the closure][1.7bc].
127122

128123
[1.7a]: https://github.com/rust-lang/rust/pull/30928
@@ -135,7 +130,6 @@ Compatibility Notes
135130
[1.7dta]: https://github.com/rust-lang/rust/pull/30394
136131
[1.7f]: https://github.com/rust-lang/rust/pull/30672
137132
[1.7h]: https://github.com/rust-lang/rust/pull/30818
138-
[1.7j]: https://github.com/rust-lang/rust/pull/30711
139133
[1.7ll]: https://github.com/rust-lang/rust/pull/30663
140134
[1.7m]: https://github.com/rust-lang/rust/pull/30381
141135
[1.7p]: https://github.com/rust-lang/rust/pull/30681
@@ -146,11 +140,15 @@ Compatibility Notes
146140
[1.7utf8]: https://github.com/rust-lang/rust/pull/30740
147141
[1.7v]: https://github.com/rust-lang/rust/pull/29973
148142
[RFC 1214]: https://github.com/rust-lang/rfcs/blob/master/text/1214-projections-lifetimes-and-wf.md
149-
[`clone_from_slice`]: http://doc.rust-lang.org/nightly/std/primitive.slice.html#method.clone_from_slice
150-
[`sort_by_key`]: http://doc.rust-lang.org/nightly/std/primitive.slice.html#method.sort_by_key
143+
[`BuildHasher::Hasher`]: http://doc.rust-lang.org/nightly/std/hash/trait.Hasher.html
144+
[`BuildHasher::build_hasher`]: http://doc.rust-lang.org/nightly/std/hash/trait.BuildHasher.html#tymethod.build_hasher
151145
[`CString::into_bytes_with_nul`]: http://doc.rust-lang.org/nightly/std/ffi/struct.CString.html#method.into_bytes_with_nul
152146
[`CString::into_bytes`]: http://doc.rust-lang.org/nightly/std/ffi/struct.CString.html#method.into_bytes
153147
[`CString::into_string`]: http://doc.rust-lang.org/nightly/std/ffi/struct.CString.html#method.into_string
148+
[`HashMap::with_capacity_and_hasher`]: http://doc.rust-lang.org/nightly/std/collections/struct.HashMap.html#method.with_capacity_and_hasher
149+
[`HashMap::with_hasher`]: http://doc.rust-lang.org/nightly/std/collections/struct.HashMap.html#method.with_hasher
150+
[`HashSet::with_capacity_and_hasher`]: http://doc.rust-lang.org/nightly/std/collections/struct.HashSet.html#method.with_capacity_and_hasher
151+
[`HashSet::with_hasher`]: http://doc.rust-lang.org/nightly/std/collections/struct.HashSet.html#method.with_hasher
154152
[`IntoStringError::into_cstring`]: http://doc.rust-lang.org/nightly/std/ffi/struct.IntoStringError.html#method.into_cstring
155153
[`IntoStringError::utf8_error`]: http://doc.rust-lang.org/nightly/std/ffi/struct.IntoStringError.html#method.utf8_error
156154
[`Ipv4Addr::is_broadcast`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_broadcast
@@ -163,10 +161,12 @@ Compatibility Notes
163161
[`Ipv6Addr::is_multicast`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_multicast
164162
[`Ipv6Addr::is_unspecified`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_unspecified
165163
[`Path::strip_prefix`]: http://doc.rust-lang.org/nightly/std/path/struct.Path.html#method.strip_prefix
164+
[`RandomState::new`]: http://doc.rust-lang.org/nightly/std/collections/hash_map/struct.RandomState.html#method.new
166165
[`String::as_mut_str`]: http://doc.rust-lang.org/nightly/std/string/struct.String.html#method.as_mut_str
167166
[`String::as_str`]: http://doc.rust-lang.org/nightly/std/string/struct.String.html#method.as_str
168167
[`Vec::as_mut_slice`]: http://doc.rust-lang.org/nightly/std/vec/struct.Vec.html#method.as_mut_slice
169168
[`Vec::as_slice`]: http://doc.rust-lang.org/nightly/std/vec/struct.Vec.html#method.as_slice
169+
[`clone_from_slice`]: http://doc.rust-lang.org/nightly/std/primitive.slice.html#method.clone_from_slice
170170
[`ffi::IntoStringError`]: http://doc.rust-lang.org/nightly/std/ffi/struct.IntoStringError.html
171171
[`i32::checked_neg`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.checked_neg
172172
[`i32::checked_rem`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.checked_rem
@@ -182,7 +182,13 @@ Compatibility Notes
182182
[`i32::overflowing_sub`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.overflowing_sub
183183
[`i32::saturating_mul`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.saturating_mul
184184
[`path::StripPrefixError`]: http://doc.rust-lang.org/nightly/std/path/struct.StripPrefixError.html
185+
[`sort_by_key`]: http://doc.rust-lang.org/nightly/std/primitive.slice.html#method.sort_by_key
186+
[`std::collections::hash_map::RandomState`]: http://doc.rust-lang.org/nightly/std/collections/hash_map/struct.RandomState.html
187+
[`std::hash::BuildHasherDefault`]: http://doc.rust-lang.org/nightly/std/hash/struct.BuildHasherDefault.html
188+
[`std::hash::BuildHasher`]: http://doc.rust-lang.org/nightly/std/hash/trait.BuildHasher.html
189+
[`u32::checked_neg`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.checked_neg
185190
[`u32::checked_rem`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.checked_rem
191+
[`u32::checked_neg`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.checked_neg
186192
[`u32::checked_shl`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.checked_shl
187193
[`u32::overflowing_add`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.overflowing_add
188194
[`u32::overflowing_div`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.overflowing_div

0 commit comments

Comments
 (0)