Skip to content

Commit 6b54dbb

Browse files
committed
---
yaml --- r: 214671 b: refs/heads/beta c: 5263d62 h: refs/heads/master i: 214669: c22c222 214667: 1c1bfab 214663: 962ec6e 214655: 7071efe v: v3
1 parent b6d37bf commit 6b54dbb

Some content is hidden

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

65 files changed

+877
-1139
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ refs/tags/0.9: 36870b185fc5f5486636d4515f0e22677493f225
2323
refs/tags/0.10: ac33f2b15782272ae348dbd7b14b8257b2148b5a
2424
refs/tags/0.11.0: e1247cb1d0d681be034adb4b558b5a0c0d5720f9
2525
refs/tags/0.12.0: f0c419429ef30723ceaf6b42f9b5a2aeb5d2e2d1
26-
refs/heads/beta: a33b808ac0ec37a8ef78b0581b3b061271c93ab8
26+
refs/heads/beta: 5263d628b14d5511f7121f85b1d5ead3bd7b9813
2727
refs/tags/1.0.0-alpha: e42bd6d93a1d3433c486200587f8f9e12590a4d7
2828
refs/heads/tmp: 8c0aa6d64ebab528f7eb182812007155d6044972
2929
refs/tags/1.0.0-alpha.2: 4c705f6bc559886632d3871b04f58aab093bfa2f

branches/beta/RELEASES.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Language
1919

2020
* Several [restrictions have been added to trait coherence][coh] in
2121
order to make it easier for upstream authors to change traits
22-
without breaking downstream code.
22+
without breaking downsteam code.
2323
* Digits of binary and octal literals are [lexed more eagerly][lex] to
2424
improve error messages and macro behavior. For example, `0b1234` is
2525
now lexed as `0b1234` instead of two tokens, `0b1` and `234`.
@@ -169,10 +169,10 @@ Version 1.0.0-alpha.2 (February 2015)
169169
* Highlights
170170

171171
* The various I/O modules were [overhauled][io-rfc] to reduce
172-
unnecessary abstractions and provide better interoperation with
172+
unncessary abstractions and provide better interoperation with
173173
the underlying platform. The old `io` module remains temporarily
174174
at `std::old_io`.
175-
* The standard library now [participates in feature gating][feat],
175+
* The standard library now [partipates in feature gating][feat],
176176
so use of unstable libraries now requires a `#![feature(...)]`
177177
attribute. The impact of this change is [described on the
178178
forum][feat-forum]. [RFC][feat-rfc].
@@ -385,7 +385,7 @@ Version 1.0.0-alpha (January 2015)
385385
syscall when available.
386386
* The 'serialize' crate has been renamed 'rustc-serialize' and
387387
moved out of the distribution to Cargo. Although it is widely
388-
used now, it is expected to be superseded in the near future.
388+
used now, it is expected to be superceded in the near future.
389389
* The `Show` formatter, typically implemented with
390390
`#[derive(Show)]` is [now requested with the `{:?}`
391391
specifier][show] and is intended for use by all types, for uses

branches/beta/configure

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/sh
22

33
msg() {
4-
echo "configure: $*"
4+
echo "configure: $1"
55
}
66

77
step_msg() {
@@ -33,8 +33,8 @@ need_ok() {
3333

3434
need_cmd() {
3535
if command -v $1 >/dev/null 2>&1
36-
then msg "found program '$1'"
37-
else err "program '$1' is missing, please install it"
36+
then msg "found program $1"
37+
else err "need program $1"
3838
fi
3939
}
4040

@@ -717,10 +717,10 @@ probe CFG_MD5 md5
717717
probe CFG_MD5SUM md5sum
718718
if [ -n "$CFG_MD5" ]
719719
then
720-
CFG_HASH_COMMAND="$CFG_MD5 -q | cut -c 1-8"
720+
CFG_HASH_COMMAND="$CFG_MD5 -q | head -c 8"
721721
elif [ -n "$CFG_MD5SUM" ]
722722
then
723-
CFG_HASH_COMMAND="$CFG_MD5SUM | cut -c 1-8"
723+
CFG_HASH_COMMAND="$CFG_MD5SUM | head -c 8"
724724
else
725725
err 'could not find one of: md5 md5sum'
726726
fi
@@ -986,7 +986,7 @@ then
986986
| cut -d ' ' -f 2)
987987

988988
case $CFG_CLANG_VERSION in
989-
(3.2* | 3.3* | 3.4* | 3.5* | 3.6* | 3.7*)
989+
(3.2* | 3.3* | 3.4* | 3.5* | 3.6*)
990990
step_msg "found ok version of CLANG: $CFG_CLANG_VERSION"
991991
if [ -z "$CC" ]
992992
then

branches/beta/mk/dist.mk

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ dist-install-dir-$(1): PREPARE_BIN_CMD=$(DEFAULT_PREPARE_BIN_CMD)
123123
dist-install-dir-$(1): PREPARE_LIB_CMD=$(DEFAULT_PREPARE_LIB_CMD)
124124
dist-install-dir-$(1): PREPARE_MAN_CMD=$(DEFAULT_PREPARE_MAN_CMD)
125125
dist-install-dir-$(1): PREPARE_CLEAN=true
126-
dist-install-dir-$(1): prepare-base-dir-$(1) docs
126+
dist-install-dir-$(1): prepare-base-dir-$(1) docs compiler-docs
127127
$$(Q)mkdir -p $$(PREPARE_DEST_DIR)/share/doc/rust
128128
$$(Q)$$(PREPARE_MAN_CMD) $$(S)COPYRIGHT $$(PREPARE_DEST_DIR)/share/doc/rust
129129
$$(Q)$$(PREPARE_MAN_CMD) $$(S)LICENSE-APACHE $$(PREPARE_DEST_DIR)/share/doc/rust
@@ -163,7 +163,7 @@ endif
163163
--legacy-manifest-dirs=rustlib,cargo
164164
$$(Q)rm -R tmp/dist/$$(PKG_NAME)-$(1)-image
165165

166-
dist-doc-install-dir-$(1): docs
166+
dist-doc-install-dir-$(1): docs compiler-docs
167167
$$(Q)mkdir -p tmp/dist/$$(DOC_PKG_NAME)-$(1)-image/share/doc/rust
168168
$$(Q)cp -r doc tmp/dist/$$(DOC_PKG_NAME)-$(1)-image/share/doc/rust/html
169169

@@ -251,7 +251,7 @@ distcheck-tar-bins: dist-tar-bins
251251

252252
# Just copy the docs to a folder under dist with the appropriate name
253253
# for uploading to S3
254-
dist-docs: docs
254+
dist-docs: docs compiler-docs
255255
$(Q) rm -Rf dist/doc
256256
$(Q) mkdir -p dist/doc/
257257
$(Q) cp -r doc dist/doc/$(CFG_PACKAGE_VERS)

branches/beta/mk/docs.mk

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,8 +77,7 @@ ERR_IDX_GEN = $(RPATH_VAR2_T_$(CFG_BUILD)_H_$(CFG_BUILD)) $(ERR_IDX_GEN_EXE)
7777

7878
D := $(S)src/doc
7979

80-
# FIXME (#25705) eventually may want to put error-index target back here.
81-
DOC_TARGETS := trpl style
80+
DOC_TARGETS := trpl style error-index
8281
COMPILER_DOC_TARGETS :=
8382
DOC_L10N_TARGETS :=
8483

branches/beta/src/doc/reference.md

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2003,10 +2003,6 @@ arbitrarily complex configurations through nesting.
20032003

20042004
The following configurations must be defined by the implementation:
20052005

2006-
* `debug_assertions`. Enabled by default when compiling without optimizations.
2007-
This can be used to enable extra debugging code in development but not in
2008-
production. For example, it controls the behavior of the standard library's
2009-
`debug_assert!` macro.
20102006
* `target_arch = "..."`. Target CPU architecture, such as `"x86"`, `"x86_64"`
20112007
`"mips"`, `"powerpc"`, `"arm"`, or `"aarch64"`.
20122008
* `target_endian = "..."`. Endianness of the target CPU, either `"little"` or
@@ -3626,14 +3622,6 @@ The `Sized` trait indicates that the size of this type is known at compile-time.
36263622
The `Drop` trait provides a destructor, to be run whenever a value of this type
36273623
is to be destroyed.
36283624

3629-
## The `Deref` trait
3630-
3631-
The `Deref<Target = U>` trait allows a type to implicitly implement all the methods
3632-
of the type `U`. When attempting to resolve a method call, the compiler will search
3633-
the top-level type for the implementation of the called method. If no such method is
3634-
found, `.deref()` is called and the compiler continues to search for the method
3635-
implementation in the returned type `U`.
3636-
36373625
# Memory model
36383626

36393627
A Rust program's memory consists of a static set of *items* and a *heap*.

branches/beta/src/doc/trpl/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -150,8 +150,8 @@ of those times. As the error explains, while we made our binding mutable, we
150150
still cannot call `push`. This is because we already have a reference to an
151151
element of the vector, `y`. Mutating something while another reference exists
152152
is dangerous, because we may invalidate the reference. In this specific case,
153-
when we create the vector, we may have only allocated space for two elements.
154-
Adding a third would mean allocating a new chunk of memory for all those elements,
153+
when we create the vector, we may have only allocated space for three elements.
154+
Adding a fourth would mean allocating a new chunk of memory for all those elements,
155155
copying the old values over, and updating the internal pointer to that memory.
156156
That all works just fine. The problem is that `y` wouldn’t get updated, and so
157157
we’d have a ‘dangling pointer’. That’s bad. Any use of `y` would be an error in

branches/beta/src/doc/trpl/dining-philosophers.md

Lines changed: 42 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -2,28 +2,26 @@
22

33
For our second project, let’s look at a classic concurrency problem. It’s
44
called ‘the dining philosophers’. It was originally conceived by Dijkstra in
5-
1965, but we’ll use a lightly adapted version from [this paper][paper] by Tony
6-
Hoare in 1985.
5+
1965, but we’ll use the version from [this paper][paper] by Tony Hoare in 1985.
76

87
[paper]: http://www.usingcsp.com/cspbook.pdf
98

109
> In ancient times, a wealthy philanthropist endowed a College to accommodate
11-
> five eminent philosophers. Each philosopher had a room in which they could
12-
> engage in their professional activity of thinking; there was also a common
10+
> five eminent philosophers. Each philosopher had a room in which she could
11+
> engage in her professional activity of thinking; there was also a common
1312
> dining room, furnished with a circular table, surrounded by five chairs, each
1413
> labelled by the name of the philosopher who was to sit in it. They sat
1514
> anticlockwise around the table. To the left of each philosopher there was
1615
> laid a golden fork, and in the centre stood a large bowl of spaghetti, which
17-
> was constantly replenished. A philosopher was expected to spend most of
18-
> their time thinking; but when they felt hungry, they went to the dining
19-
> room, sat down in their own chair, picked up their own fork on their left,
20-
> and plunged it into the spaghetti. But such is the tangled nature of
21-
> spaghetti that a second fork is required to carry it to the mouth. The
22-
> philosopher therefore had also to pick up the fork on their right. When
23-
> they were finished they would put down both their forks, get up from their
24-
> chair, and continue thinking. Of course, a fork can be used by only one
25-
> philosopher at a time. If the other philosopher wants it, they just have
26-
> to wait until the fork is available again.
16+
> was constantly replenished. A philosopher was expected to spend most of her
17+
> time thinking; but when she felt hungry, she went to the dining room, sat down
18+
> in her own chair, picked up her own fork on her left, and plunged it into the
19+
> spaghetti. But such is the tangled nature of spaghetti that a second fork is
20+
> required to carry it to the mouth. The philosopher therefore had also to pick
21+
> up the fork on her right. When she was finished she would put down both her
22+
> forks, get up from her chair, and continue thinking. Of course, a fork can be
23+
> used by only one philosopher at a time. If the other philosopher wants it, she
24+
> just has to wait until the fork is available again.
2725
2826
This classic problem shows off a few different elements of concurrency. The
2927
reason is that it's actually slightly tricky to implement: a simple
@@ -62,10 +60,10 @@ impl Philosopher {
6260
}
6361

6462
fn main() {
65-
let p1 = Philosopher::new("Judith Butler");
63+
let p1 = Philosopher::new("Baruch Spinoza");
6664
let p2 = Philosopher::new("Gilles Deleuze");
6765
let p3 = Philosopher::new("Karl Marx");
68-
let p4 = Philosopher::new("Emma Goldman");
66+
let p4 = Philosopher::new("Friedrich Nietzsche");
6967
let p5 = Philosopher::new("Michel Foucault");
7068
}
7169
```
@@ -161,10 +159,10 @@ look at `main()` again:
161159
# }
162160
#
163161
fn main() {
164-
let p1 = Philosopher::new("Judith Butler");
162+
let p1 = Philosopher::new("Baruch Spinoza");
165163
let p2 = Philosopher::new("Gilles Deleuze");
166164
let p3 = Philosopher::new("Karl Marx");
167-
let p4 = Philosopher::new("Emma Goldman");
165+
let p4 = Philosopher::new("Friedrich Nietzsche");
168166
let p5 = Philosopher::new("Michel Foucault");
169167
}
170168
```
@@ -178,10 +176,10 @@ that `new()` function, it would look like this:
178176
# name: String,
179177
# }
180178
fn main() {
181-
let p1 = Philosopher { name: "Judith Butler".to_string() };
179+
let p1 = Philosopher { name: "Baruch Spinoza".to_string() };
182180
let p2 = Philosopher { name: "Gilles Deleuze".to_string() };
183181
let p3 = Philosopher { name: "Karl Marx".to_string() };
184-
let p4 = Philosopher { name: "Emma Goldman".to_string() };
182+
let p4 = Philosopher { name: "Friedrich Nietzche".to_string() };
185183
let p5 = Philosopher { name: "Michel Foucault".to_string() };
186184
}
187185
```
@@ -213,10 +211,10 @@ impl Philosopher {
213211

214212
fn main() {
215213
let philosophers = vec![
216-
Philosopher::new("Judith Butler"),
214+
Philosopher::new("Baruch Spinoza"),
217215
Philosopher::new("Gilles Deleuze"),
218216
Philosopher::new("Karl Marx"),
219-
Philosopher::new("Emma Goldman"),
217+
Philosopher::new("Friedrich Nietzsche"),
220218
Philosopher::new("Michel Foucault"),
221219
];
222220

@@ -249,10 +247,10 @@ mention they’re done eating. Running this program should give you the followin
249247
output:
250248

251249
```text
252-
Judith Butler is done eating.
250+
Baruch Spinoza is done eating.
253251
Gilles Deleuze is done eating.
254252
Karl Marx is done eating.
255-
Emma Goldman is done eating.
253+
Friedrich Nietzsche is done eating.
256254
Michel Foucault is done eating.
257255
```
258256

@@ -287,10 +285,10 @@ impl Philosopher {
287285

288286
fn main() {
289287
let philosophers = vec![
290-
Philosopher::new("Judith Butler"),
288+
Philosopher::new("Baruch Spinoza"),
291289
Philosopher::new("Gilles Deleuze"),
292290
Philosopher::new("Karl Marx"),
293-
Philosopher::new("Emma Goldman"),
291+
Philosopher::new("Friedrich Nietzsche"),
294292
Philosopher::new("Michel Foucault"),
295293
];
296294

@@ -325,14 +323,14 @@ simulate the time it takes a philosopher to eat.
325323
If you run this program, you should see each philosopher eat in turn:
326324

327325
```text
328-
Judith Butler is eating.
329-
Judith Butler is done eating.
326+
Baruch Spinoza is eating.
327+
Baruch Spinoza is done eating.
330328
Gilles Deleuze is eating.
331329
Gilles Deleuze is done eating.
332330
Karl Marx is eating.
333331
Karl Marx is done eating.
334-
Emma Goldman is eating.
335-
Emma Goldman is done eating.
332+
Friedrich Nietzsche is eating.
333+
Friedrich Nietzsche is done eating.
336334
Michel Foucault is eating.
337335
Michel Foucault is done eating.
338336
```
@@ -368,10 +366,10 @@ impl Philosopher {
368366

369367
fn main() {
370368
let philosophers = vec![
371-
Philosopher::new("Judith Butler"),
369+
Philosopher::new("Baruch Spinoza"),
372370
Philosopher::new("Gilles Deleuze"),
373371
Philosopher::new("Karl Marx"),
374-
Philosopher::new("Emma Goldman"),
372+
Philosopher::new("Friedrich Nietzsche"),
375373
Philosopher::new("Michel Foucault"),
376374
];
377375

@@ -460,11 +458,11 @@ We have multi-threading!
460458
```text
461459
Gilles Deleuze is eating.
462460
Gilles Deleuze is done eating.
463-
Emma Goldman is eating.
464-
Emma Goldman is done eating.
461+
Friedrich Nietzsche is eating.
462+
Friedrich Nietzsche is done eating.
465463
Michel Foucault is eating.
466-
Judith Butler is eating.
467-
Judith Butler is done eating.
464+
Baruch Spinoza is eating.
465+
Baruch Spinoza is done eating.
468466
Karl Marx is eating.
469467
Karl Marx is done eating.
470468
Michel Foucault is done eating.
@@ -534,10 +532,10 @@ fn main() {
534532
]});
535533

536534
let philosophers = vec![
537-
Philosopher::new("Judith Butler", 0, 1),
535+
Philosopher::new("Baruch Spinoza", 0, 1),
538536
Philosopher::new("Gilles Deleuze", 1, 2),
539537
Philosopher::new("Karl Marx", 2, 3),
540-
Philosopher::new("Emma Goldman", 3, 4),
538+
Philosopher::new("Friedrich Nietzsche", 3, 4),
541539
Philosopher::new("Michel Foucault", 0, 4),
542540
];
543541

@@ -645,10 +643,10 @@ count will go up, and when each thread ends, it will go back down.
645643

646644
```rust,ignore
647645
let philosophers = vec![
648-
Philosopher::new("Judith Butler", 0, 1),
646+
Philosopher::new("Baruch Spinoza", 0, 1),
649647
Philosopher::new("Gilles Deleuze", 1, 2),
650648
Philosopher::new("Karl Marx", 2, 3),
651-
Philosopher::new("Emma Goldman", 3, 4),
649+
Philosopher::new("Friedrich Nietzsche", 3, 4),
652650
Philosopher::new("Michel Foucault", 0, 4),
653651
];
654652
```
@@ -681,12 +679,12 @@ and so you’ll get some output like this:
681679

682680
```text
683681
Gilles Deleuze is eating.
684-
Emma Goldman is eating.
685-
Emma Goldman is done eating.
682+
Friedrich Nietzsche is eating.
683+
Friedrich Nietzsche is done eating.
686684
Gilles Deleuze is done eating.
687-
Judith Butler is eating.
685+
Baruch Spinoza is eating.
688686
Karl Marx is eating.
689-
Judith Butler is done eating.
687+
Baruch Spinoza is done eating.
690688
Michel Foucault is eating.
691689
Karl Marx is done eating.
692690
Michel Foucault is done eating.

branches/beta/src/doc/trpl/documentation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -549,7 +549,7 @@ You can control a few aspects of the HTML that `rustdoc` generates through the
549549
```rust
550550
#![doc(html_logo_url = "http://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",
551551
html_favicon_url = "http://www.rust-lang.org/favicon.ico",
552-
html_root_url = "http://doc.rust-lang.org/")]
552+
html_root_url = "http://doc.rust-lang.org/")];
553553
```
554554

555555
This sets a few different options, with a logo, favicon, and a root URL.

branches/beta/src/doc/trpl/guessing-game.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ a few tricks up their sleeves.
148148
For example, they’re [immutable][immutable] by default. That’s why our example
149149
uses `mut`: it makes a binding mutable, rather than immutable. `let` doesn’t
150150
take a name on the left hand side, it actually accepts a
151-
[pattern][patterns]’. We’ll use patterns later. It’s easy enough
151+
[pattern][patterns]’. We’ll use patterns more later. It’s easy enough
152152
to use for now:
153153

154154
```rust
@@ -637,7 +637,7 @@ When we wrote `let guess = String::new()`, Rust was able to infer that `guess`
637637
should be a `String`, and so it doesn’t make us write out the type. And with
638638
our `secret_number`, there are a number of types which can have a value
639639
between one and a hundred: `i32`, a thirty-two-bit number, or `u32`, an
640-
unsigned thirty-two-bit number, or `i64`, a sixty-four-bit number or others.
640+
unsigned thirty-two-bit number, or `i64`, a sixty-four-bit number. Or others.
641641
So far, that hasn’t mattered, and so Rust defaults to an `i32`. However, here,
642642
Rust doesn’t know how to compare the `guess` and the `secret_number`. They
643643
need to be the same type. Ultimately, we want to convert the `String` we

0 commit comments

Comments
 (0)