Skip to content

Commit 6941945

Browse files
committed
---
yaml --- r: 210523 b: refs/heads/try c: a4c1337 h: refs/heads/master i: 210521: 02d9163 210519: 4e98174 v: v3
1 parent aeafb47 commit 6941945

File tree

463 files changed

+8145
-18026
lines changed

Some content is hidden

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

463 files changed

+8145
-18026
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: 750f2c63f2737305d33288303cdecb7a470a7922
5+
refs/heads/try: a4c133777e33754137d8a097a0c932cfc45ec8a5
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
88
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596

branches/try/AUTHORS.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -518,7 +518,6 @@ Luke Francl <[email protected]>
518518
Luke Metz <[email protected]>
519519
Luke Steensen <[email protected]>
520520
Luqman Aden <[email protected]>
521-
Łukasz Niemier <[email protected]>
522521
Magnus Auvinen <[email protected]>
523522
Mahmut Bulut <[email protected]>
524523
Makoto Nakashima <[email protected]>
@@ -998,4 +997,5 @@ xales <[email protected]>
998997
999998
1000999
1000+
Łukasz Niemier <[email protected]>
10011001

branches/try/configure

Lines changed: 8 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,6 @@ err() {
1919
exit 1
2020
}
2121

22-
run() {
23-
msg "$@"
24-
"$@"
25-
}
26-
2722
need_ok() {
2823
if [ $? -ne 0 ]
2924
then
@@ -41,7 +36,8 @@ need_cmd() {
4136
make_dir() {
4237
if [ ! -d $1 ]
4338
then
44-
run mkdir -p $1
39+
msg "mkdir -p $1"
40+
mkdir -p $1
4541
fi
4642
}
4743

@@ -50,7 +46,8 @@ copy_if_changed() {
5046
then
5147
msg "leaving $2 unchanged"
5248
else
53-
run cp -f $1 $2
49+
msg "cp $1 $2"
50+
cp -f $1 $2
5451
chmod u-w $2 # make copied artifact read-only
5552
fi
5653
}
@@ -60,7 +57,8 @@ move_if_changed() {
6057
then
6158
msg "leaving $2 unchanged"
6259
else
63-
run mv -f $1 $2
60+
msg "mv $1 $2"
61+
mv -f $1 $2
6462
chmod u-w $2 # make moved artifact read-only
6563
fi
6664
}
@@ -546,14 +544,13 @@ fi
546544
BOOL_OPTIONS=""
547545
VAL_OPTIONS=""
548546

549-
opt debug 0 "debug mode; disables optimization unless \`--enable-optimize\` given"
547+
opt debug 0 "debug mode"
550548
opt valgrind 0 "run tests with valgrind (memcheck by default)"
551549
opt helgrind 0 "run tests with helgrind instead of memcheck"
552550
opt valgrind-rpass 1 "run rpass-valgrind tests with valgrind"
553551
opt docs 1 "build standard library documentation"
554552
opt compiler-docs 0 "build compiler documentation"
555553
opt optimize-tests 1 "build tests with optimizations"
556-
opt debuginfo-tests 0 "build tests with debugger metadata"
557554
opt libcpp 1 "build with llvm with libc++ instead of libstdc++ when using clang"
558555
opt llvm-assertions 0 "build LLVM with assertions"
559556
opt debug-assertions 0 "build with debugging assertions"
@@ -735,20 +732,6 @@ then
735732
probe CFG_JAVAC javac
736733
fi
737734

738-
# the valgrind rpass tests will fail if you don't have a valgrind, but they're
739-
# only disabled if you opt out.
740-
if [ -z "$CFG_VALGRIND" ]
741-
then
742-
# If the user has explicitly asked for valgrind tests, then fail
743-
if [ -n "$CFG_ENABLE_VALGRIND" ] && [ -n "$CFG_ENABLE_VALGRIND_PROVIDED" ]
744-
then
745-
err "No valgrind present, but valgrind tests explicitly requested"
746-
else
747-
CFG_DISABLE_VALGRIND_RPASS=1
748-
putvar CFG_DISABLE_VALGRIND_RPASS
749-
fi
750-
fi
751-
752735
if [ ! -z "$CFG_GDB" ]
753736
then
754737
# Store GDB's version
@@ -860,7 +843,7 @@ then
860843
CFG_OSX_GCC_VERSION=$("$CFG_GCC" --version 2>&1 | grep "Apple LLVM version")
861844
if [ $? -eq 0 ]
862845
then
863-
step_msg "on OS X >=10.9, forcing use of clang"
846+
step_msg "on OS X 10.9, forcing use of clang"
864847
CFG_ENABLE_CLANG=1
865848
else
866849
if [ $("$CFG_GCC" --version 2>&1 | grep -c ' 4\.[0-6]') -ne 0 ]; then

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/dist.mk

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ PKG_FILES := \
5252
doc \
5353
driver \
5454
etc \
55-
error-index-generator \
5655
$(foreach crate,$(CRATES),lib$(crate)) \
5756
libcollectionstest \
5857
libcoretest \

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/main.mk

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,6 @@ ifndef CFG_DISABLE_VALGRIND_RPASS
195195
$(info cfg: valgrind-rpass command set to $(CFG_VALGRIND))
196196
CFG_VALGRIND_RPASS :=$(CFG_VALGRIND)
197197
else
198-
$(info cfg: disabling valgrind run-pass tests)
199198
CFG_VALGRIND_RPASS :=
200199
endif
201200

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/mk/tests.mk

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -632,13 +632,6 @@ ifndef CFG_DISABLE_OPTIMIZE_TESTS
632632
CTEST_RUSTC_FLAGS += -O
633633
endif
634634

635-
# Analogously to the above, whether to pass `-g` when compiling tests
636-
# is a separate choice from whether to pass `-g` when building the
637-
# compiler and standard library themselves.
638-
CTEST_RUSTC_FLAGS := $$(subst -g,,$$(CTEST_RUSTC_FLAGS))
639-
ifdef CFG_ENABLE_DEBUGINFO_TESTS
640-
CTEST_RUSTC_FLAGS += -g
641-
endif
642635

643636
CTEST_COMMON_ARGS$(1)-T-$(2)-H-$(3) := \
644637
--compile-lib-path $$(HLIB$(1)_H_$(3)) \

branches/try/src/compiletest/compiletest.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -226,15 +226,15 @@ pub fn run_tests(config: &Config) {
226226
}
227227

228228
// android debug-info test uses remote debugger
229-
// so, we test 1 thread at once.
229+
// so, we test 1 task at once.
230230
// also trying to isolate problems with adb_run_wrapper.sh ilooping
231231
env::set_var("RUST_TEST_THREADS","1");
232232
}
233233

234234
match config.mode {
235235
DebugInfoLldb => {
236236
// Some older versions of LLDB seem to have problems with multiple
237-
// instances running in parallel, so only run one test thread at a
237+
// instances running in parallel, so only run one test task at a
238238
// time.
239239
env::set_var("RUST_TEST_THREADS", "1");
240240
}
@@ -269,7 +269,7 @@ pub fn test_opts(config: &Config) -> test::TestOpts {
269269
run_ignored: config.run_ignored,
270270
logfile: config.logfile.clone(),
271271
run_tests: true,
272-
bench_benchmarks: true,
272+
run_benchmarks: true,
273273
nocapture: env::var("RUST_TEST_NOCAPTURE").is_ok(),
274274
color: test::AutoColor,
275275
}

branches/try/src/doc/complement-design-faq.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ representation as a primitive. This allows using Rust `enum`s in FFI where C
3939
`enum`s are also used, for most use cases. The attribute can also be applied
4040
to `struct`s to get the same layout as a C struct would.
4141

42-
[repr]: reference.html#ffi-attributes
42+
[repr]: reference.html#miscellaneous-attributes
4343

4444
## There is no GC
4545

@@ -96,7 +96,7 @@ code should need to run is a stack.
9696
possibility is covered by the `match`, adding further variants to the `enum`
9797
in the future will prompt a compilation failure, rather than runtime panic.
9898
Second, it makes cost explicit. In general, the only safe way to have a
99-
non-exhaustive match would be to panic the thread if nothing is matched, though
99+
non-exhaustive match would be to panic the task if nothing is matched, though
100100
it could fall through if the type of the `match` expression is `()`. This sort
101101
of hidden cost and special casing is against the language's philosophy. It's
102102
easy to ignore certain cases by using the `_` wildcard:

branches/try/src/doc/complement-lang-faq.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -62,15 +62,15 @@ Data values in the language can only be constructed through a fixed set of initi
6262
* There is no global inter-crate namespace; all name management occurs within a crate.
6363
* Using another crate binds the root of _its_ namespace into the user's namespace.
6464

65-
## Why is panic unwinding non-recoverable within a thread? Why not try to "catch exceptions"?
65+
## Why is panic unwinding non-recoverable within a task? Why not try to "catch exceptions"?
6666

67-
In short, because too few guarantees could be made about the dynamic environment of the catch block, as well as invariants holding in the unwound heap, to be able to safely resume; we believe that other methods of signalling and logging errors are more appropriate, with threads playing the role of a "hard" isolation boundary between separate heaps.
67+
In short, because too few guarantees could be made about the dynamic environment of the catch block, as well as invariants holding in the unwound heap, to be able to safely resume; we believe that other methods of signalling and logging errors are more appropriate, with tasks playing the role of a "hard" isolation boundary between separate heaps.
6868

6969
Rust provides, instead, three predictable and well-defined options for handling any combination of the three main categories of "catch" logic:
7070

7171
* Failure _logging_ is done by the integrated logging subsystem.
72-
* _Recovery_ after a panic is done by trapping a thread panic from _outside_
73-
the thread, where other threads are known to be unaffected.
72+
* _Recovery_ after a panic is done by trapping a task panic from _outside_
73+
the task, where other tasks are known to be unaffected.
7474
* _Cleanup_ of resources is done by RAII-style objects with destructors.
7575

7676
Cleanup through RAII-style destructors is more likely to work than in catch blocks anyways, since it will be better tested (part of the non-error control paths, so executed all the time).
@@ -91,8 +91,8 @@ We don't know if there's an obvious, easy, efficient, stock-textbook way of supp
9191

9292
There's a lot of debate on this topic; it's easy to find a proponent of default-sync or default-async communication, and there are good reasons for either. Our choice rests on the following arguments:
9393

94-
* Part of the point of isolating threads is to decouple threads from one another, such that assumptions in one thread do not cause undue constraints (or bugs, if violated!) in another. Temporal coupling is as real as any other kind; async-by-default relaxes the default case to only _causal_ coupling.
95-
* Default-async supports buffering and batching communication, reducing the frequency and severity of thread-switching and inter-thread / inter-domain synchronization.
94+
* Part of the point of isolating tasks is to decouple tasks from one another, such that assumptions in one task do not cause undue constraints (or bugs, if violated!) in another. Temporal coupling is as real as any other kind; async-by-default relaxes the default case to only _causal_ coupling.
95+
* Default-async supports buffering and batching communication, reducing the frequency and severity of task-switching and inter-task / inter-domain synchronization.
9696
* Default-async with transmittable channels is the lowest-level building block on which more-complex synchronization topologies and strategies can be built; it is not clear to us that the majority of cases fit the 2-party full-synchronization pattern rather than some more complex multi-party or multi-stage scenario. We did not want to force all programs to pay for wiring the former assumption into all communications.
9797

9898
## Why are channels half-duplex (one-way)?
@@ -109,7 +109,7 @@ This does mean that indexed access to a Unicode codepoint inside a `str` value i
109109
* Most "character oriented" operations on text only work under very restricted language assumptions sets such as "ASCII-range codepoints only". Outside ASCII-range, you tend to have to use a complex (non-constant-time) algorithm for determining linguistic-unit (glyph, word, paragraph) boundaries anyways. We recommend using an "honest" linguistically-aware, Unicode-approved algorithm.
110110
* The `char` type is UCS4. If you honestly need to do a codepoint-at-a-time algorithm, it's trivial to write a `type wstr = [char]`, and unpack a `str` into it in a single pass, then work with the `wstr`. In other words: the fact that the language is not "decoding to UCS4 by default" shouldn't stop you from decoding (or re-encoding any other way) if you need to work with that encoding.
111111

112-
## Why are `str`s, slices, arrays etc. built-in types rather than (say) special kinds of trait/impl?
112+
## Why are strings, vectors etc. built-in types rather than (say) special kinds of trait/impl?
113113

114114
In each case there is one or more operator, literal constructor, overloaded use or integration with a built-in control structure that makes us think it would be awkward to phrase the type in terms of more-general type constructors. Same as, say, with numbers! But this is partly an aesthetic call, and we'd be willing to look at a worked-out proposal for eliminating or rephrasing these special cases.
115115

branches/try/src/doc/grammar.md

Lines changed: 7 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -176,15 +176,9 @@ excluded from the `ident` rule.
176176

177177
```antlr
178178
lit_suffix : ident;
179-
literal : [ string_lit | char_lit | byte_string_lit | byte_lit | num_lit | bool_lit ] lit_suffix ?;
179+
literal : [ string_lit | char_lit | byte_string_lit | byte_lit | num_lit ] lit_suffix ?;
180180
```
181181

182-
The optional `lit_suffix` production is only used for certain numeric literals,
183-
but is reserved for future extension. That is, the above gives the lexical
184-
grammar, but a Rust parser will reject everything but the 12 special cases
185-
mentioned in [Number literals](reference.html#number-literals) in the
186-
reference.
187-
188182
#### Character and string literals
189183

190184
```antlr
@@ -244,9 +238,7 @@ dec_lit : [ dec_digit | '_' ] + ;
244238

245239
#### Boolean literals
246240

247-
```antlr
248-
bool_lit : [ "true" | "false" ] ;
249-
```
241+
**FIXME:** write grammar
250242

251243
The two values of the boolean type are written `true` and `false`.
252244

@@ -305,7 +297,7 @@ transcriber : '(' transcriber * ')' | '[' transcriber * ']'
305297

306298
```antlr
307299
item : mod_item | fn_item | type_item | struct_item | enum_item
308-
| const_item | static_item | trait_item | impl_item | extern_block ;
300+
| static_item | trait_item | impl_item | extern_block ;
309301
```
310302

311303
### Type Parameters
@@ -329,7 +321,7 @@ view_item : extern_crate_decl | use_decl ;
329321

330322
```antlr
331323
extern_crate_decl : "extern" "crate" crate_name
332-
crate_name: ident | ( ident "as" ident )
324+
crate_name: ident | ( string_lit as ident )
333325
```
334326

335327
##### Use declarations
@@ -377,10 +369,6 @@ path_item : ident | "mod" ;
377369

378370
**FIXME:** grammar?
379371

380-
### Enumerations
381-
382-
**FIXME:** grammar?
383-
384372
### Constant items
385373

386374
```antlr
@@ -789,8 +777,8 @@ bound := path | lifetime
789777

790778
### Boxes
791779

792-
## Threads
780+
## Tasks
793781

794-
### Communication between threads
782+
### Communication between tasks
795783

796-
### Thread lifecycle
784+
### Task lifecycle

branches/try/src/doc/not_found.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,12 +57,8 @@ function populate_rust_search() {
5757

5858
// #18540, use a single token
5959

60-
var a = document.createElement("a");
61-
a.href = "http://doc.rust-lang.org/core/?search=" + encodeURIComponent(lt);
62-
a.textContent = lt;
6360
var search = document.getElementById('core-search');
64-
search.innerHTML = "";
65-
search.appendChild(a);
61+
search.innerHTML = "<a href=\"http://doc.rust-lang.org/core/?search=" + lt + "\">" + lt + "</a>";
6662
}
6763
populate_site_search();
6864
populate_rust_search();

0 commit comments

Comments
 (0)