Skip to content

Commit 1dc23c8

Browse files
committed
---
yaml --- r: 150682 b: refs/heads/try2 c: 4051bd9 h: refs/heads/master v: v3
1 parent caada66 commit 1dc23c8

File tree

500 files changed

+1729
-1798
lines changed

Some content is hidden

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

500 files changed

+1729
-1798
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ refs/heads/snap-stage3: 78a7676898d9f80ab540c6df5d4c9ce35bb50463
55
refs/heads/try: 519addf6277dbafccbb4159db4b710c37eaa2ec5
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8-
refs/heads/try2: 8801d891c4674f335fcdc67cb34237902d89a5ec
8+
refs/heads/try2: 4051bd900abbb47557dd8928532eedbc2bca0563
99
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
1010
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1111
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503

branches/try2/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ documentation.
5959

6060
[repo]: https://github.com/mozilla/rust
6161
[tarball]: http://static.rust-lang.org/dist/rust-nightly.tar.gz
62-
[tutorial]: http://static.rust-lang.org/doc/master/tutorial.html
62+
[tutorial]: http://static.rust-lang.org/doc/nightly/tutorial.html
6363

6464
## Notes
6565

branches/try2/mk/dist.mk

Lines changed: 13 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -203,17 +203,19 @@ distcheck-osx: dist-osx
203203
# Unix binary installer tarballs
204204
######################################################################
205205

206-
define DEF_PREPARE_DIST_DIR
207-
208-
dist-install-dir-$(1)$(3): PREPARE_HOST=$(1)
209-
dist-install-dir-$(1)$(3): PREPARE_TARGETS=$(2)
210-
dist-install-dir-$(1)$(3): PREPARE_DEST_DIR=tmp/dist/$$(PKG_NAME)-$(1)
211-
dist-install-dir-$(1)$(3): PREPARE_DIR_CMD=$(DEFAULT_PREPARE_DIR_CMD)
212-
dist-install-dir-$(1)$(3): PREPARE_BIN_CMD=$(DEFAULT_PREPARE_BIN_CMD)
213-
dist-install-dir-$(1)$(3): PREPARE_LIB_CMD=$(DEFAULT_PREPARE_LIB_CMD)
214-
dist-install-dir-$(1)$(3): PREPARE_MAN_CMD=$(DEFAULT_PREPARE_MAN_CMD)
215-
dist-install-dir-$(1)$(3): PREPARE_CLEAN=true
216-
dist-install-dir-$(1)$(3): prepare-base-dir-$(1) docs compiler-docs
206+
define DEF_INSTALLER
207+
208+
$$(eval $$(call DEF_PREPARE,dir-$(1)))
209+
210+
dist-install-dir-$(1): PREPARE_HOST=$(1)
211+
dist-install-dir-$(1): PREPARE_TARGETS=$(1)
212+
dist-install-dir-$(1): PREPARE_DEST_DIR=tmp/dist/$$(PKG_NAME)-$(1)
213+
dist-install-dir-$(1): PREPARE_DIR_CMD=$(DEFAULT_PREPARE_DIR_CMD)
214+
dist-install-dir-$(1): PREPARE_BIN_CMD=$(DEFAULT_PREPARE_BIN_CMD)
215+
dist-install-dir-$(1): PREPARE_LIB_CMD=$(DEFAULT_PREPARE_LIB_CMD)
216+
dist-install-dir-$(1): PREPARE_MAN_CMD=$(DEFAULT_PREPARE_MAN_CMD)
217+
dist-install-dir-$(1): PREPARE_CLEAN=true
218+
dist-install-dir-$(1): prepare-base-dir-$(1) docs compiler-docs
217219
$$(Q)(cd $$(PREPARE_DEST_DIR)/ && find . -type f | sed 's/^\.\///') \
218220
> tmp/dist/manifest-$(1).in
219221
$$(Q)mv tmp/dist/manifest-$(1).in $$(PREPARE_DEST_DIR)/$$(CFG_LIBDIR_RELATIVE)/rustlib/manifest.in
@@ -225,16 +227,6 @@ dist-install-dir-$(1)$(3): prepare-base-dir-$(1) docs compiler-docs
225227
$$(Q)cp -r doc $$(PREPARE_DEST_DIR)
226228
$$(Q)$$(PREPARE_BIN_CMD) $$(S)src/etc/install.sh $$(PREPARE_DEST_DIR)
227229

228-
endef
229-
230-
define DEF_INSTALLER
231-
232-
$$(eval $$(call DEF_PREPARE,dir-$(1)))
233-
234-
$$(eval $$(call DEF_PREPARE_DIST_DIR,$(1),$(1),))
235-
236-
$$(eval $$(call DEF_PREPARE_DIST_DIR,$(1),$(CFG_TARGET),-with-target-libs))
237-
238230
dist/$$(PKG_NAME)-$(1).tar.gz: dist-install-dir-$(1)
239231
@$(call E, build: $$@)
240232
$$(Q)tar -czf dist/$$(PKG_NAME)-$(1).tar.gz -C tmp/dist $$(PKG_NAME)-$(1)

branches/try2/mk/install.mk

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,12 @@ else
1414
MAYBE_DISABLE_VERIFY=
1515
endif
1616

17-
install: dist-install-dir-$(CFG_BUILD)-with-target-libs
17+
install: dist-install-dir-$(CFG_BUILD)
1818
$(Q)sh tmp/dist/$(PKG_NAME)-$(CFG_BUILD)/install.sh --prefix="$(DESTDIR)$(CFG_PREFIX)" --libdir="$(DESTDIR)$(CFG_LIBDIR)" --mandir="$(DESTDIR)$(CFG_MANDIR)" "$(MAYBE_DISABLE_VERIFY)"
1919
# Remove tmp files while we can because they may have been created under sudo
2020
$(Q)rm -R tmp/dist
2121

22-
uninstall: dist-install-dir-$(CFG_BUILD)-with-target-libs
22+
uninstall: dist-install-dir-$(CFG_BUILD)
2323
$(Q)sh tmp/dist/$(PKG_NAME)-$(CFG_BUILD)/install.sh --uninstall --prefix="$(DESTDIR)$(CFG_PREFIX)" --libdir="$(DESTDIR)$(CFG_LIBDIR)" --mandir="$(DESTDIR)$(CFG_MANDIR)"
2424
# Remove tmp files while we can because they may have been created under sudo
2525
$(Q)rm -R tmp/dist

branches/try2/mk/tests.mk

Lines changed: 61 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -183,9 +183,6 @@ check-ref: cleantestlibs cleantmptestlogs check-stage2-rpass \
183183
check-docs: cleantestlibs cleantmptestlogs check-stage2-docs
184184
$(Q)$(CFG_PYTHON) $(S)src/etc/check-summary.py tmp/*.log
185185

186-
# NOTE: Remove after reprogramming windows bots
187-
check-fast: check-lite
188-
189186
.PHONY: cleantmptestlogs cleantestlibs
190187

191188
cleantmptestlogs:
@@ -878,9 +875,69 @@ $(foreach crate,$(TEST_CRATES), \
878875
$(eval $(call DEF_CHECK_CRATE,$(crate))))
879876

880877
######################################################################
881-
# RMAKE rules
878+
# check-fast rules
882879
######################################################################
883880

881+
FT := run_pass_stage2
882+
FT_LIB := $(call CFG_LIB_NAME_$(CFG_BUILD),$(FT))
883+
FT_DRIVER := $(FT)_driver
884+
885+
GENERATED += tmp/$(FT).rc tmp/$(FT_DRIVER).rs
886+
887+
tmp/$(FT).rc tmp/$(FT_DRIVER).rs: \
888+
$(RPASS_TESTS) \
889+
$(S)src/etc/combine-tests.py
890+
@$(call E, check: building combined stage2 test runner)
891+
$(Q)$(CFG_PYTHON) $(S)src/etc/combine-tests.py
892+
893+
define DEF_CHECK_FAST_FOR_T_H
894+
# $(1) unused
895+
# $(2) target triple
896+
# $(3) host triple
897+
898+
$$(TLIB2_T_$(2)_H_$(3))/$$(FT_LIB): \
899+
tmp/$$(FT).rc \
900+
$$(SREQ2_T_$(2)_H_$(3))
901+
@$$(call E, oxidize: $$@)
902+
$$(STAGE2_T_$(2)_H_$(3)) --crate-type=dylib --out-dir $$(@D) $$< \
903+
-L "$$(RT_OUTPUT_DIR_$(2))"
904+
905+
$(3)/test/$$(FT_DRIVER)-$(2)$$(X_$(2)): \
906+
tmp/$$(FT_DRIVER).rs \
907+
$$(TLIB2_T_$(2)_H_$(3))/$$(FT_LIB) \
908+
$$(SREQ2_T_$(2)_H_$(3))
909+
@$$(call E, oxidize: $$@ $$<)
910+
$$(STAGE2_T_$(2)_H_$(3)) -o $$@ $$< \
911+
-L "$$(RT_OUTPUT_DIR_$(2))"
912+
913+
$(3)/test/$$(FT_DRIVER)-$(2).out: \
914+
$(3)/test/$$(FT_DRIVER)-$(2)$$(X_$(2)) \
915+
$$(SREQ2_T_$(2)_H_$(3))
916+
$$(Q)$$(call CFG_RUN_TEST_$(2),$$<,$(2),$(3)) \
917+
--logfile tmp/$$(FT_DRIVER)-$(2).log
918+
919+
check-fast-T-$(2)-H-$(3): \
920+
$(3)/test/$$(FT_DRIVER)-$(2).out
921+
922+
endef
923+
924+
$(foreach host,$(CFG_HOST), \
925+
$(eval $(foreach target,$(CFG_TARGET), \
926+
$(eval $(call DEF_CHECK_FAST_FOR_T_H,,$(target),$(host))))))
927+
928+
check-fast: tidy check-fast-H-$(CFG_BUILD) \
929+
$(foreach crate,$(TARGET_CRATES),check-stage2-$(crate))
930+
$(Q)$(CFG_PYTHON) $(S)src/etc/check-summary.py tmp/*.log
931+
932+
define DEF_CHECK_FAST_FOR_H
933+
934+
check-fast-H-$(1): check-fast-T-$(1)-H-$(1)
935+
936+
endef
937+
938+
$(foreach host,$(CFG_HOST), \
939+
$(eval $(call DEF_CHECK_FAST_FOR_H,$(host))))
940+
884941
RMAKE_TESTS := $(shell ls -d $(S)src/test/run-make/*/)
885942
RMAKE_TESTS := $(RMAKE_TESTS:$(S)src/test/run-make/%/=%)
886943

@@ -904,7 +961,6 @@ $(3)/test/run-make/%-$(1)-T-$(2)-H-$(3).ok: \
904961
@rm -rf $(3)/test/run-make/$$*
905962
@mkdir -p $(3)/test/run-make/$$*
906963
$$(Q)$$(CFG_PYTHON) $(S)src/etc/maketest.py $$(dir $$<) \
907-
$$(MAKE) \
908964
$$(HBIN$(1)_H_$(3))/rustc$$(X_$(3)) \
909965
$(3)/test/run-make/$$* \
910966
"$$(CC_$(3)) $$(CFG_GCCISH_CFLAGS_$(3))" \

branches/try2/src/compiletest/procsrv.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,8 @@ pub fn run(lib_path: &str,
8484

8585
Some(Result {
8686
status: status,
87-
out: str::from_utf8(output.as_slice()).unwrap().to_owned(),
88-
err: str::from_utf8(error.as_slice()).unwrap().to_owned()
87+
out: str::from_utf8_owned(output).unwrap(),
88+
err: str::from_utf8_owned(error).unwrap()
8989
})
9090
},
9191
Err(..) => None

branches/try2/src/compiletest/runtest.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ fn run_pretty_test(config: &config, props: &TestProps, testfile: &Path) {
153153
match props.pp_exact { Some(_) => 1, None => 2 };
154154

155155
let src = File::open(testfile).read_to_end().unwrap();
156-
let src = str::from_utf8(src.as_slice()).unwrap().to_owned();
156+
let src = str::from_utf8_owned(src).unwrap();
157157
let mut srcs = vec!(src);
158158

159159
let mut round = 0;
@@ -177,7 +177,7 @@ fn run_pretty_test(config: &config, props: &TestProps, testfile: &Path) {
177177
Some(ref file) => {
178178
let filepath = testfile.dir_path().join(file);
179179
let s = File::open(&filepath).read_to_end().unwrap();
180-
str::from_utf8(s.as_slice()).unwrap().to_owned()
180+
str::from_utf8_owned(s).unwrap()
181181
}
182182
None => { (*srcs.get(srcs.len() - 2u)).clone() }
183183
};
@@ -1163,7 +1163,7 @@ fn disassemble_extract(config: &config, _props: &TestProps,
11631163
11641164
fn count_extracted_lines(p: &Path) -> uint {
11651165
let x = File::open(&p.with_extension("ll")).read_to_end().unwrap();
1166-
let x = str::from_utf8(x.as_slice()).unwrap();
1166+
let x = str::from_utf8_owned(x).unwrap();
11671167
x.lines().len()
11681168
}
11691169

branches/try2/src/doc/complement-cheatsheet.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ Use the [`lines`](http://static.rust-lang.org/doc/master/std/io/trait.Buffer.htm
9696
use std::io::BufferedReader;
9797
# use std::io::MemReader;
9898
99-
# let reader = MemReader::new(vec!());
99+
# let reader = MemReader::new(~[]);
100100
101101
let mut reader = BufferedReader::new(reader);
102102
for line in reader.lines() {
@@ -152,7 +152,7 @@ struct Foo {
152152
}
153153
154154
struct FooClosure<'a> {
155-
myfunc: |int, uint|: 'a -> i32
155+
myfunc: 'a |int, uint| -> i32
156156
}
157157
158158
fn a(a: int, b: uint) -> i32 {

branches/try2/src/doc/index.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,10 +67,6 @@ li {list-style-type: none; }
6767

6868
# External resources
6969

70-
* The Rust IRC channels on [irc.mozilla.org](http://irc.mozilla.org/)
71-
* [`#rust`](http://chat.mibbit.com/?server=irc.mozilla.org&channel=%23rust) - general discussion
72-
* [`#rust-gamedev`](http://chat.mibbit.com/?server=irc.mozilla.org&channel=%23rust-gamedev) - game development
73-
* [`#rust-internals`](http://chat.mibbit.com/?server=irc.mozilla.org&channel=%23rust-internals) - compiler and libraries
74-
* [`#rust-osdev`](http://chat.mibbit.com/?server=irc.mozilla.org&channel=%23rust-osdev) - operating system development
70+
* The Rust [IRC channel](http://chat.mibbit.com/?server=irc.mozilla.org&channel=%23rust) - `#rust` on irc.mozilla.org
7571
* The Rust community on [Reddit](http://reddit.com/r/rust)
7672
* The Rust [wiki](http://github.com/mozilla/rust/wiki)

branches/try2/src/doc/rust.md

Lines changed: 2 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -432,7 +432,7 @@ operators](#binary-operator-expressions), or [keywords](#keywords).
432432
## Paths
433433

434434
~~~~ {.notrust .ebnf .gram}
435-
expr_path : [ "::" ] ident [ "::" expr_path_tail ] + ;
435+
expr_path : ident [ "::" expr_path_tail ] + ;
436436
expr_path_tail : '<' type_expr [ ',' type_expr ] + '>'
437437
| expr_path ;
438438
@@ -475,51 +475,6 @@ let x = id::<int>(10); // Type arguments used in a call expression
475475
# }
476476
~~~~
477477

478-
Paths can be denoted with various leading qualifiers to change the meaning of
479-
how it is resolved:
480-
481-
* Paths starting with `::` are considered to be global paths where the
482-
components of the path start being resolved from the crate root. Each
483-
identifier in the path must resolve to an item.
484-
485-
```rust
486-
mod a {
487-
pub fn foo() {}
488-
}
489-
mod b {
490-
pub fn foo() {
491-
::a::foo(); // call a's foo function
492-
}
493-
}
494-
# fn main() {}
495-
```
496-
497-
* Paths starting with the keyword `super` begin resolution relative to the
498-
parent module. Each further identifier must resolve to an item
499-
500-
```rust
501-
mod a {
502-
pub fn foo() {}
503-
}
504-
mod b {
505-
pub fn foo() {
506-
super::a::foo(); // call a's foo function
507-
}
508-
}
509-
# fn main() {}
510-
```
511-
512-
* Paths starting with the keyword `self` begin resolution relative to the
513-
current module. Each further identifier must resolve to an item.
514-
515-
```rust
516-
fn foo() {}
517-
fn bar() {
518-
self::foo();
519-
}
520-
# fn main() {}
521-
```
522-
523478
# Syntax extensions
524479

525480
A number of minor features of Rust are not central enough to have their own
@@ -3460,7 +3415,7 @@ fn add(x: int, y: int) -> int {
34603415
34613416
let mut x = add(5,7);
34623417
3463-
type Binop<'a> = |int,int|: 'a -> int;
3418+
type Binop<'a> = 'a |int,int| -> int;
34643419
let bo: Binop = add;
34653420
x = bo(5,7);
34663421
~~~~
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
# Copyright 2011-2014 The Rust Project Developers. See the COPYRIGHT
2+
# file at the top-level directory of this distribution and at
3+
# http://rust-lang.org/COPYRIGHT.
4+
#
5+
# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6+
# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7+
# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8+
# option. This file may not be copied, modified, or distributed
9+
# except according to those terms.
10+
11+
# This combines all the working run-pass tests into a single large crate so we
12+
# can run it "fast": spawning zillions of windows processes is our major build
13+
# bottleneck (and it doesn't hurt to run faster on other platforms as well).
14+
15+
import sys
16+
import os
17+
import codecs
18+
19+
20+
def scrub(b):
21+
if sys.version_info >= (3,) and type(b) == bytes:
22+
return b.decode('ascii')
23+
else:
24+
return b
25+
26+
src_dir = scrub(os.getenv("CFG_SRC_DIR"))
27+
if not src_dir:
28+
raise Exception("missing env var CFG_SRC_DIR")
29+
30+
run_pass = os.path.join(src_dir, "src", "test", "run-pass")
31+
run_pass = os.path.abspath(run_pass)
32+
stage2_tests = []
33+
34+
for t in os.listdir(run_pass):
35+
if t.endswith(".rs") and not (
36+
t.startswith(".") or t.startswith("#") or t.startswith("~")):
37+
f = codecs.open(os.path.join(run_pass, t), "r", "utf8")
38+
s = f.read()
39+
if not ("ignore-test" in s or
40+
"ignore-fast" in s or
41+
"ignore-win32" in s):
42+
if not "pub fn main" in s and "fn main" in s:
43+
print("Warning: no public entry point in " + t)
44+
stage2_tests.append(t)
45+
f.close()
46+
47+
stage2_tests.sort()
48+
49+
c = open("tmp/run_pass_stage2.rc", "w")
50+
i = 0
51+
c.write(
52+
"""
53+
// AUTO-GENERATED FILE: DO NOT EDIT
54+
#[crate_id=\"run_pass_stage2#0.1\"];
55+
#[crate_id=\"run_pass_stage2#0.1\"];
56+
#[feature(globs, macro_rules, struct_variant, managed_boxes)];
57+
#![allow(warnings)]
58+
extern crate collections;
59+
"""
60+
)
61+
for t in stage2_tests:
62+
p = os.path.join(run_pass, t)
63+
p = p.replace("\\", "\\\\")
64+
c.write("#[path = \"%s\"]" % p)
65+
c.write("pub mod t_%d;\n" % i)
66+
i += 1
67+
c.close()
68+
69+
70+
d = open("tmp/run_pass_stage2_driver.rs", "w")
71+
d.write(
72+
"""
73+
// AUTO-GENERATED FILE: DO NOT EDIT
74+
#[feature(globs, managed_boxes)];
75+
extern crate run_pass_stage2;
76+
use run_pass_stage2::*;
77+
use std::io;
78+
use std::io::Writer;
79+
#[allow(warnings)]
80+
fn main() {
81+
let mut out = io::stdout();
82+
"""
83+
)
84+
i = 0
85+
for t in stage2_tests:
86+
p = os.path.join("test", "run-pass", t)
87+
p = p.replace("\\", "\\\\")
88+
d.write(" out.write(\"run-pass [stage2]: %s\\n\".as_bytes());\n" % p)
89+
d.write(" t_%d::main();\n" % i)
90+
i += 1
91+
d.write("}\n")

0 commit comments

Comments
 (0)