Skip to content

Commit 75e9a2b

Browse files
committed
---
yaml --- r: 162515 b: refs/heads/try c: 125677e h: refs/heads/master i: 162513: 7e423f6 162511: ce21844 v: v3
1 parent dddbb56 commit 75e9a2b

File tree

227 files changed

+7859
-1803
lines changed

Some content is hidden

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

227 files changed

+7859
-1803
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: 9146a919b616e39e528e4d7100d16eef52f1f852
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: cafe2966770ff377aad6dd9fd808e68055587c58
5-
refs/heads/try: f90471e4e31747533ae37712ad5841dce5bbd5d7
5+
refs/heads/try: 125677e3f0e24fe753a8f24d2eead9057858b88e
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: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,6 @@ Cole Mickens <[email protected]>
121121
Colin Davidson <[email protected]>
122122
Colin Sherratt <[email protected]>
123123
Conrad Kleinespel <[email protected]>
124-
Corey Farwell <[email protected]>
125124
Corey Ford <[email protected]>
126125
Corey Richardson <[email protected]>
127126

branches/try/configure

Lines changed: 8 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -550,20 +550,10 @@ CFG_LIBDIR_RELATIVE=lib
550550
if [ "$CFG_OSTYPE" = "pc-windows-gnu" ]
551551
then
552552
CFG_LIBDIR_RELATIVE=bin
553-
CFG_LIBDIR="${CFG_PREFIX}/${CFG_LIBDIR_RELATIVE}"
554-
else
555-
valopt libdir "${CFG_PREFIX}/${CFG_LIBDIR_RELATIVE}" "install libraries (ignored on windows platform)"
556-
557-
case "$CFG_LIBDIR" in
558-
"$CFG_PREFIX"/*) CAT_INC=2;;
559-
"$CFG_PREFIX"*) CAT_INC=1;;
560-
*)
561-
err "libdir must begin with the prefix. Use --prefix to set it accordingly.";;
562-
esac
563-
564-
CFG_LIBDIR_RELATIVE=`echo ${CFG_LIBDIR} | cut -c$((${#CFG_PREFIX}+${CAT_INC}))-`
565553
fi
566554

555+
valopt libdir "${CFG_PREFIX}/${CFG_LIBDIR_RELATIVE}" "install libraries"
556+
567557
if [ $HELP -eq 1 ]
568558
then
569559
echo
@@ -711,6 +701,11 @@ then
711701
fi
712702
step_msg "using rustc at: ${CFG_LOCAL_RUST_ROOT} with version: $LRV"
713703
putvar CFG_LOCAL_RUST_ROOT
704+
else
705+
if [ ! -z "$CFG_LOCAL_RUST_ROOT" ]
706+
then
707+
warn "Use of --local-rust-root without --enable-local-rust"
708+
fi
714709
fi
715710

716711
# Force freebsd to build with clang; gcc doesn't like us there
@@ -888,10 +883,7 @@ CFG_PREFIX=${CFG_PREFIX%/}
888883
CFG_MANDIR=${CFG_MANDIR%/}
889884
CFG_HOST="$(echo $CFG_HOST | tr ',' ' ')"
890885
CFG_TARGET="$(echo $CFG_TARGET | tr ',' ' ')"
891-
CFG_SUPPORTED_TARGET=""
892-
for target_file in ${CFG_SRC_DIR}mk/cfg/*.mk; do
893-
CFG_SUPPORTED_TARGET="${CFG_SUPPORTED_TARGET} $(basename "$target_file" .mk)"
894-
done
886+
CFG_SUPPORTED_TARGET="$(ls ${CFG_SRC_DIR}mk/cfg)"
895887

896888
# copy host-triples to target-triples so that hosts are a subset of targets
897889
V_TEMP=""
@@ -997,15 +989,6 @@ for h in $CFG_HOST
997989
do
998990
for t in $CFG_TARGET
999991
do
1000-
# host lib dir stage0
1001-
make_dir $h/stage0/lib
1002-
1003-
# target bin dir stage0
1004-
make_dir $h/stage0/lib/rustlib/$t/bin
1005-
1006-
# target lib dir stage0
1007-
make_dir $h/stage0/lib/rustlib/$t/lib
1008-
1009992
for i in 0 1 2 3
1010993
do
1011994
# host bin dir

branches/try/mk/crates.mk

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
#
3838
# DEPS_<crate>
3939
# These lists are the dependencies of the <crate> that is to be built.
40-
# Rust dependencies are listed bare (i.e. std) and native
40+
# Rust dependencies are listed bare (i.e. std, green) and native
4141
# dependencies have a "native:" prefix (i.e. native:hoedown). All deps
4242
# will be built before the crate itself is built.
4343
#
@@ -49,7 +49,7 @@
4949
# automatically generated for all stage/host/target combinations.
5050
################################################################################
5151

52-
TARGET_CRATES := libc std flate arena term \
52+
TARGET_CRATES := libc std green native flate arena term \
5353
serialize sync getopts collections test time rand \
5454
log regex graphviz core rbml alloc rustrt \
5555
unicode
@@ -66,6 +66,8 @@ DEPS_rustrt := alloc core libc collections native:rustrt_native
6666
DEPS_std := core libc rand alloc collections rustrt sync unicode \
6767
native:rust_builtin native:backtrace
6868
DEPS_graphviz := std
69+
DEPS_green := std native:context_switch
70+
DEPS_native := std
6971
DEPS_syntax := std term serialize log fmt_macros arena libc
7072
DEPS_rustc_trans := rustc rustc_back rustc_llvm libc
7173
DEPS_rustc := syntax flate arena serialize getopts rbml \
@@ -93,9 +95,9 @@ DEPS_regex := std
9395
DEPS_regex_macros = rustc syntax std regex
9496
DEPS_fmt_macros = std
9597

96-
TOOL_DEPS_compiletest := test getopts
97-
TOOL_DEPS_rustdoc := rustdoc
98-
TOOL_DEPS_rustc := rustc_trans
98+
TOOL_DEPS_compiletest := test getopts native
99+
TOOL_DEPS_rustdoc := rustdoc native
100+
TOOL_DEPS_rustc := rustc_trans native
99101
TOOL_SOURCE_compiletest := $(S)src/compiletest/compiletest.rs
100102
TOOL_SOURCE_rustdoc := $(S)src/driver/driver.rs
101103
TOOL_SOURCE_rustc := $(S)src/driver/driver.rs

branches/try/mk/main.mk

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -190,14 +190,11 @@ endif
190190
# Target-and-rule "utility variables"
191191
######################################################################
192192

193-
define DEF_FOR_TARGET
193+
define DEF_X
194194
X_$(1) := $(CFG_EXE_SUFFIX_$(1))
195-
ifndef CFG_LLVM_TARGET_$(1)
196-
CFG_LLVM_TARGET_$(1) := $(1)
197-
endif
198195
endef
199196
$(foreach target,$(CFG_TARGET), \
200-
$(eval $(call DEF_FOR_TARGET,$(target))))
197+
$(eval $(call DEF_X,$(target))))
201198

202199
# "Source" files we generate in builddir along the way.
203200
GENERATED :=
@@ -335,15 +332,7 @@ define SREQ
335332
# Destinations of artifacts for the host compiler
336333
HROOT$(1)_H_$(3) = $(3)/stage$(1)
337334
HBIN$(1)_H_$(3) = $$(HROOT$(1)_H_$(3))/bin
338-
ifeq ($$(CFG_WINDOWSY_$(3)),1)
339-
HLIB$(1)_H_$(3) = $$(HROOT$(1)_H_$(3))/$$(CFG_LIBDIR_RELATIVE)
340-
else
341-
ifeq ($(1),0)
342-
HLIB$(1)_H_$(3) = $$(HROOT$(1)_H_$(3))/lib
343-
else
344335
HLIB$(1)_H_$(3) = $$(HROOT$(1)_H_$(3))/$$(CFG_LIBDIR_RELATIVE)
345-
endif
346-
endif
347336

348337
# Destinations of artifacts for target architectures
349338
TROOT$(1)_T_$(2)_H_$(3) = $$(HLIB$(1)_H_$(3))/rustlib/$(2)

branches/try/mk/platform.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ $(foreach cvar,CC CXX CPP CFLAGS CXXFLAGS CPPFLAGS, \
113113

114114
CFG_RLIB_GLOB=lib$(1)-*.rlib
115115

116-
include $(wildcard $(CFG_SRC_DIR)mk/cfg/*.mk)
116+
include $(wildcard $(CFG_SRC_DIR)mk/cfg/*)
117117

118118
# The -Qunused-arguments sidesteps spurious warnings from clang
119119
define FILTER_FLAGS

branches/try/mk/rt.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ $$(RT_OUTPUT_DIR_$(1))/%.o: $(S)src/rt/%.ll $$(MKFILE_DEPS) \
7575
@mkdir -p $$(@D)
7676
@$$(call E, compile: $$@)
7777
$$(Q)$$(LLC_$$(CFG_BUILD)) $$(CFG_LLC_FLAGS_$(1)) \
78-
-filetype=obj -mtriple=$$(CFG_LLVM_TARGET_$(1)) -relocation-model=pic -o $$@ $$<
78+
-filetype=obj -mtriple=$(1) -relocation-model=pic -o $$@ $$<
7979

8080
$$(RT_OUTPUT_DIR_$(1))/%.o: $(S)src/rt/%.c $$(MKFILE_DEPS)
8181
@mkdir -p $$(@D)

branches/try/mk/stage0.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ ifdef CFG_ENABLE_LOCAL_RUST
2222
else
2323
$(Q)$(CFG_PYTHON) $(S)src/etc/get-snapshot.py $(CFG_BUILD) $(SNAPSHOT_FILE)
2424
endif
25-
$(Q)if [ -e "$@" ]; then touch "$@"; else echo "ERROR: snapshot $@ not found"; exit 1; fi
25+
$(Q)touch $@
2626

2727
# For other targets, let the host build the target:
2828

branches/try/mk/target.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ $$(TBIN$(1)_T_$(2)_H_$(3))/$(4)$$(X_$(2)): \
116116
$$(foreach dep,$$(TOOL_DEPS_$(4)), \
117117
$$(TLIB$(1)_T_$(2)_H_$(3))/stamp.$$(dep)) \
118118
$$(TSREQ$(1)_T_$(2)_H_$(3)) \
119-
| $$(TBIN$(1)_T_$(2)_H_$(3))/
119+
| $$(TBIN$(1)_T_$(4)_H_$(3))/
120120
@$$(call E, rustc: $$@)
121121
$$(STAGE$(1)_T_$(2)_H_$(3)) -o $$@ $$< --cfg $(4)
122122

branches/try/src/README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ Source layout:
99
| `libcore/` | The Rust core library |
1010
| `libdebug/` | Debugging utilities |
1111
| `libstd/` | The standard library (imported and linked by default) |
12+
| `libgreen/` | The M:N runtime library |
13+
| `libnative/` | The 1:1 runtime library |
1214
| `libsyntax/` | The Rust parser and pretty-printer |
1315
| `libtest/` | Rust's test-runner code |
1416
| ------------------- | --------------------------------------------------------- |

branches/try/src/compiletest/runtest.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1566,7 +1566,7 @@ fn _arm_exec_compiled_test(config: &Config,
15661566

15671567
let mut exitcode: int = 0;
15681568
for c in exitcode_out.as_slice().chars() {
1569-
if !c.is_numeric() { break; }
1569+
if !c.is_digit() { break; }
15701570
exitcode = exitcode * 10 + match c {
15711571
'0' ... '9' => c as int - ('0' as int),
15721572
_ => 101,

branches/try/src/doc/guide.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3144,8 +3144,8 @@ pub fn add_three_times_four(x: int) -> int {
31443144
}
31453145
```
31463146

3147-
We're calling this file `lib.rs`, because Cargo uses that filename as the crate
3148-
root by convention.
3147+
We're calling this file `lib.rs` because it has the same name as our project,
3148+
and so it's named this, by convention.
31493149

31503150
We'll then need to use this crate in our `src/main.rs`:
31513151

branches/try/src/doc/reference.md

Lines changed: 5 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -225,52 +225,6 @@ reserved for future extension, that is, the above gives the lexical
225225
grammar, but a Rust parser will reject everything but the 12 special
226226
cases mentioned in [Number literals](#number-literals) below.
227227

228-
#### Examples
229-
230-
##### Characters and strings
231-
232-
| | Example | Number of `#` pairs allowed | Available characters | Escapes | Equivalent to |
233-
|---|---------|-----------------------------|----------------------|---------|---------------|
234-
| [Character](#character-literals) | `'H'` | `N/A` | All unicode | `\'` & [Byte escapes](#byte-escapes) & [Unicode escapes](#unicode-escapes) | `N/A` |
235-
| [String](#string-literals) | `"hello"` | `N/A` | All unicode | `\"` & [Byte escapes](#byte-escapes) & [Unicode escapes](#unicode-escapes) | `N/A` |
236-
| [Raw](#raw-string-literals) | `r##"hello"##` | `0...` | All unicode | `N/A` | `N/A` |
237-
| [Byte](#byte-literals) | `b'H'` | `N/A` | All ASCII | `\'` & [Byte escapes](#byte-escapes) | `u8` |
238-
| [Byte string](#byte-string-literals) | `b"hello"` | `N/A` | All ASCII | `\"` & [Byte escapes](#byte-escapes) | `&'static [u8]` |
239-
| [Raw byte string](#raw-byte-string-literals) | `br##"hello"##` | `0...` | All ASCII | `N/A` | `&'static [u8]` (unsure...not stated) |
240-
241-
##### Byte escapes
242-
243-
| | Name |
244-
|---|------|
245-
| `\x7F` | 8-bit character code (exactly 2 digits) |
246-
| `\n` | Newline |
247-
| `\r` | Carriage return |
248-
| `\t` | Tab |
249-
| `\\` | Backslash |
250-
251-
##### Unicode escapes
252-
| | Name |
253-
|---|------|
254-
| `\u7FFF` | 16-bit character code (exactly 4 digits) |
255-
| `\U7EEEFFFF` | 32-bit character code (exactly 8 digits) |
256-
257-
##### Numbers
258-
259-
| [Number literals](#number-literals)`*` | Example | Exponentiation | Suffixes |
260-
|----------------------------------------|---------|----------------|----------|
261-
| Decimal integer | `98_222i` | `N/A` | Integer suffixes |
262-
| Hex integer | `0xffi` | `N/A` | Integer suffixes |
263-
| Octal integer | `0o77i` | `N/A` | Integer suffixes |
264-
| Binary integer | `0b1111_0000i` | `N/A` | Integer suffixes |
265-
| Floating-point | `123.0E+77f64` | `Optional` | Floating-point suffixes |
266-
267-
`*` All number literals allow `_` as a visual separator: `1_234.0E+18f64`
268-
269-
##### Suffixes
270-
| Integer | Floating-point |
271-
|---------|----------------|
272-
| `i` (`int`), `u` (`uint`), `u8`, `i8`, `u16`, `i16`, `u32`, `i32`, `u64`, `i64` | `f32`, `f64` |
273-
274228
#### Character and string literals
275229

276230
```{.ebnf .gram}
@@ -299,21 +253,15 @@ nonzero_dec: '1' | '2' | '3' | '4'
299253
| '5' | '6' | '7' | '8' | '9' ;
300254
```
301255

302-
##### Character literals
303-
304256
A _character literal_ is a single Unicode character enclosed within two
305257
`U+0027` (single-quote) characters, with the exception of `U+0027` itself,
306258
which must be _escaped_ by a preceding U+005C character (`\`).
307259

308-
##### String literals
309-
310260
A _string literal_ is a sequence of any Unicode characters enclosed within two
311261
`U+0022` (double-quote) characters, with the exception of `U+0022` itself,
312262
which must be _escaped_ by a preceding `U+005C` character (`\`), or a _raw
313263
string literal_.
314264

315-
##### Character escapes
316-
317265
Some additional _escapes_ are available in either character or non-raw string
318266
literals. An escape starts with a `U+005C` (`\`) and continues with one of the
319267
following forms:
@@ -333,8 +281,6 @@ following forms:
333281
* The _backslash escape_ is the character `U+005C` (`\`) which must be
334282
escaped in order to denote *itself*.
335283

336-
##### Raw string literals
337-
338284
Raw string literals do not process any escapes. They start with the character
339285
`U+0072` (`r`), followed by zero or more of the character `U+0023` (`#`) and a
340286
`U+0022` (double-quote) character. The _raw string body_ is not defined in the
@@ -376,16 +322,12 @@ raw_byte_string : '"' raw_byte_string_body '"' | '#' raw_byte_string '#' ;
376322
377323
```
378324

379-
##### Byte literals
380-
381325
A _byte literal_ is a single ASCII character (in the `U+0000` to `U+007F`
382326
range) enclosed within two `U+0027` (single-quote) characters, with the
383327
exception of `U+0027` itself, which must be _escaped_ by a preceding U+005C
384328
character (`\`), or a single _escape_. It is equivalent to a `u8` unsigned
385329
8-bit integer _number literal_.
386330

387-
##### Byte string literals
388-
389331
A _byte string literal_ is a sequence of ASCII characters and _escapes_
390332
enclosed within two `U+0022` (double-quote) characters, with the exception of
391333
`U+0022` itself, which must be _escaped_ by a preceding `U+005C` character
@@ -405,8 +347,6 @@ following forms:
405347
* The _backslash escape_ is the character `U+005C` (`\`) which must be
406348
escaped in order to denote its ASCII encoding `0x5C`.
407349

408-
##### Raw byte string literals
409-
410350
Raw byte string literals do not process any escapes. They start with the
411351
character `U+0062` (`b`), followed by `U+0072` (`r`), followed by zero or more
412352
of the character `U+0023` (`#`), and a `U+0022` (double-quote) character. The
@@ -1059,14 +999,14 @@ An example of what will and will not work for `use` items:
1059999

10601000
```
10611001
# #![allow(unused_imports)]
1062-
use foo::core::iter; // good: foo is at the root of the crate
1002+
use foo::native::start; // good: foo is at the root of the crate
10631003
use foo::baz::foobaz; // good: foo is at the root of the crate
10641004
10651005
mod foo {
1066-
extern crate core;
1006+
extern crate native;
10671007
1068-
use foo::core::iter; // good: foo is at crate root
1069-
// use core::iter; // bad: native is not at the crate root
1008+
use foo::native::start; // good: foo is at crate root
1009+
// use native::start; // bad: native is not at the crate root
10701010
use self::baz::foobaz; // good: self refers to module 'foo'
10711011
use foo::bar::foobar; // good: foo is at crate root
10721012
@@ -1334,12 +1274,7 @@ specific type; the type-specified aspects of a value include:
13341274
For example, the type `(u8, u8)` defines the set of immutable values that are
13351275
composite pairs, each containing two unsigned 8-bit integers accessed by
13361276
pattern-matching and laid out in memory with the `x` component preceding the
1337-
`y` component:
1338-
1339-
```
1340-
type Point = (u8, u8);
1341-
let p: Point = (41, 68);
1342-
```
1277+
`y` component.
13431278

13441279
### Structures
13451280

branches/try/src/driver/driver.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@
88
// option. This file may not be copied, modified, or distributed
99
// except according to those terms.
1010

11-
#![no_start]
12-
1311
#[cfg(rustdoc)]
1412
extern crate "rustdoc" as this;
1513

0 commit comments

Comments
 (0)