Skip to content

Commit a998d64

Browse files
committed
---
yaml --- r: 174316 b: refs/heads/snap-stage3 c: d0863ad h: refs/heads/master v: v3
1 parent 3bd05ea commit a998d64

File tree

535 files changed

+5985
-11237
lines changed

Some content is hidden

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

535 files changed

+5985
-11237
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: a833337943300db1c310a4cf9c84b7b4ef4e9468
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4-
refs/heads/snap-stage3: 30f081e54843952e34b0632e1b0ec54547bf6e3c
4+
refs/heads/snap-stage3: d0863adf24b316d8ecaca5a1b8866ee5db902313
55
refs/heads/try: 08f6380a9f0b866796080094f44fe25ea5636547
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d

branches/snap-stage3/AUTHORS.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -581,7 +581,7 @@ Robert Knight <[email protected]>
581581
Robert Millar <[email protected]>
582582
Robin Gloster <[email protected]>
583583
Robin Stocker <[email protected]>
584-
Rohit Joshi <rohit.c.joshi@gmail.com>
584+
Rohit Joshi <rohit.joshi@capitalone.com>
585585
Roland Tanglao <[email protected]>
586586
Rolf Timmermans <[email protected]>
587587
Rolf van de Krol <[email protected]>

branches/snap-stage3/CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ please do two things:
2727

2828
Pull requests will be treated as "review requests", and we will give
2929
feedback we expect to see corrected on
30-
[style](http://aturon.github.io/) and
30+
[style](https://github.com/rust-lang/rust/wiki/Note-style-guide) and
3131
substance before pulling. Changes contributed via pull request should
3232
focus on a single issue at a time, like any other. We will not accept
3333
pull-requests that try to "sneak" unrelated changes in.

branches/snap-stage3/LICENSE-MIT

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Copyright (c) 2015 The Rust Project Developers
1+
Copyright (c) 2014 The Rust Project Developers
22

33
Permission is hereby granted, free of charge, to any
44
person obtaining a copy of this software and associated

branches/snap-stage3/Makefile.in

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,9 +97,10 @@
9797
# make check-stage1-std RUST_TEST_TASKS=1
9898
#
9999
# This is hardly all there is to know of The Rust Build System's
100-
# mysteries. The tale continues on the wiki[1].
100+
# mysteries. The tale continues on the wiki[1][2].
101101
#
102-
# [1]: https://github.com/rust-lang/rust/wiki/Note-testsuite
102+
# [1]: https://github.com/rust-lang/rust/wiki/Note-getting-started-developing-Rust
103+
# [2]: https://github.com/rust-lang/rust/wiki/Note-testsuite
103104
#
104105
# If you really feel like getting your hands dirty, then:
105106
#

branches/snap-stage3/README.md

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -58,23 +58,16 @@ documentation.
5858

5959
### Building on Windows
6060

61-
To easily build on windows we can use [MSYS2](http://msys2.github.io/):
61+
To easily build on windows we can use [MSYS2](http://sourceforge.net/projects/msys2/):
6262

6363
1. Grab the latest MSYS2 installer and go through the installer.
6464
2. Now from the MSYS2 terminal we want to install the mingw64 toolchain and the other
6565
tools we need.
6666

67-
```bash
68-
# choose one based on platform
69-
$ pacman -S mingw-w64-i686-toolchain
70-
$ pacman -S mingw-w64-x86_64-toolchain
67+
$ pacman -S mingw-w64-i686-toolchain
68+
$ pacman -S base-devel
7169

72-
$ pacman -S base-devel
73-
```
74-
75-
3. With that now start `mingw32_shell.bat` or `mingw64_shell.bat`
76-
from where you installed MSYS2 (i.e. `C:\msys`). Which one you
77-
choose depends on if you want 32 or 64 bit Rust.
70+
3. With that now start `mingw32_shell.bat` from where you installed MSYS2 (i.e. `C:\msys`).
7871
4. From there just navigate to where you have Rust's source code, configure and build it:
7972

8073
$ ./configure

branches/snap-stage3/configure

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -448,10 +448,6 @@ case $CFG_CPUTYPE in
448448
CFG_CPUTYPE=aarch64
449449
;;
450450

451-
powerpc)
452-
CFG_CPUTYPE=powerpc
453-
;;
454-
455451
x86_64 | x86-64 | x64 | amd64)
456452
CFG_CPUTYPE=x86_64
457453
;;
@@ -612,7 +608,7 @@ putvar CFG_RELEASE_CHANNEL
612608
# channel.
613609
# Basing CFG_BOOTSTRAP_KEY on CFG_BOOTSTRAP_KEY lets it get picked up
614610
# during a Makefile reconfig.
615-
CFG_BOOTSTRAP_KEY="${CFG_BOOTSTRAP_KEY-`date +%H:%M:%S`}"
611+
CFG_BOOTSTRAP_KEY="${CFG_BOOTSTRAP_KEY-`date +%N`}"
616612
putvar CFG_BOOTSTRAP_KEY
617613

618614
step_msg "looking for build programs"
@@ -1008,7 +1004,7 @@ do
10081004
make_dir $t/rt/jemalloc
10091005
for i in \
10101006
isaac sync test \
1011-
arch/i386 arch/x86_64 arch/arm arch/aarch64 arch/mips arch/powerpc
1007+
arch/i386 arch/x86_64 arch/arm arch/aarch64 arch/mips
10121008
do
10131009
make_dir $t/rt/stage$s/$i
10141010
done
@@ -1173,7 +1169,7 @@ do
11731169

11741170
msg "configuring LLVM for $gnu_t"
11751171

1176-
LLVM_TARGETS="--enable-targets=x86,x86_64,arm,aarch64,mips,powerpc"
1172+
LLVM_TARGETS="--enable-targets=x86,x86_64,arm,aarch64,mips"
11771173
LLVM_BUILD="--build=$gnu_t"
11781174
LLVM_HOST="--host=$gnu_t"
11791175
LLVM_TARGET="--target=$gnu_t"

branches/snap-stage3/mk/cfg/aarch64-apple-ios.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ AR_aarch64-apple-ios = $(shell xcrun -find -sdk iphoneos ar)
1111
endif
1212
CFG_LIB_NAME_aarch64-apple-ios = lib$(1).a
1313
CFG_LIB_GLOB_aarch64-apple-ios = lib$(1)-*.a
14-
CFG_INSTALL_ONLY_RLIB_aarch64-apple-ios = 1
14+
CFG_LIB_SKIP_INSTALL_aarch64-apple-ios = 1 #lib$(1)-*.a
1515
CFG_STATIC_LIB_NAME_aarch64-apple-ios=lib$(1).a
1616
CFG_LIB_DSYM_GLOB_aarch64-apple-ios = lib$(1)-*.a.dSYM
1717
CFG_CFLAGS_aarch64-apple-ios := $(CFG_IOS_SDK_FLAGS_aarch64-apple-ios)

branches/snap-stage3/mk/cfg/armv7-apple-ios.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ AR_armv7-apple-ios = $(shell xcrun -find -sdk iphoneos ar)
1111
endif
1212
CFG_LIB_NAME_armv7-apple-ios = lib$(1).a
1313
CFG_LIB_GLOB_armv7-apple-ios = lib$(1)-*.a
14-
CFG_INSTALL_ONLY_RLIB_armv7-apple-ios = 1
14+
CFG_LIB_SKIP_INSTALL_armv7-apple-ios = 1 #lib$(1)-*.a
1515
CFG_STATIC_LIB_NAME_armv7-apple-ios=lib$(1).a
1616
CFG_LIB_DSYM_GLOB_armv7-apple-ios = lib$(1)-*.a.dSYM
1717
CFG_JEMALLOC_CFLAGS_armv7-apple-ios := -arch armv7 -mfpu=vfp3 $(CFG_IOS_SDK_FLAGS_armv7-apple-ios)

branches/snap-stage3/mk/cfg/armv7s-apple-ios.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ AR_armv7s-apple-ios = $(shell xcrun -find -sdk iphoneos ar)
1111
endif
1212
CFG_LIB_NAME_armv7s-apple-ios = lib$(1).a
1313
CFG_LIB_GLOB_armv7s-apple-ios = lib$(1)-*.a
14-
CFG_INSTALL_ONLY_RLIB_armv7s-apple-ios = 1
14+
CFG_LIB_SKIP_INSTALL_armv7s-apple-ios = 1 #lib$(1)-*.a
1515
CFG_STATIC_LIB_NAME_armv7s-apple-ios=lib$(1).a
1616
CFG_LIB_DSYM_GLOB_armv7s-apple-ios = lib$(1)-*.a.dSYM
1717
CFG_JEMALLOC_CFLAGS_armv7s-apple-ios := -arch armv7s -mfpu=vfp4 $(CFG_IOS_SDK_FLAGS_armv7s-apple-ios)

branches/snap-stage3/mk/cfg/i386-apple-ios.mk

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ AR_i386-apple-ios = $(shell xcrun -find -sdk iphonesimulator ar)
1111
endif
1212
CFG_LIB_NAME_i386-apple-ios = lib$(1).a
1313
CFG_LIB_GLOB_i386-apple-ios = lib$(1)-*.dylib
14-
CFG_INSTALL_ONLY_RLIB_i386-apple-ios = 1
1514
CFG_STATIC_LIB_NAME_i386-apple-ios=lib$(1).a
1615
CFG_LIB_DSYM_GLOB_i386-apple-ios = lib$(1)-*.dylib.dSYM
1716
CFG_GCCISH_CFLAGS_i386-apple-ios := -Wall -Werror -g -fPIC -m32 $(CFG_IOSSIM_FLAGS_i386-apple-ios)

branches/snap-stage3/mk/cfg/powerpc-unknown-linux-gnu.mk

Lines changed: 0 additions & 28 deletions
This file was deleted.

branches/snap-stage3/mk/cfg/x86_64-apple-ios.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ AR_x86_64-apple-ios = $(shell xcrun -find -sdk iphonesimulator ar)
1111
endif
1212
CFG_LIB_NAME_x86_64-apple-ios = lib$(1).a
1313
CFG_LIB_GLOB_x86_64-apple-ios = lib$(1)-*.a
14-
CFG_INSTALL_ONLY_RLIB_x86_64-apple-ios = 1
14+
CFG_LIB_SKIP_INSTALL_x86_64-apple-ios = 1 #lib$(1)-*.a
1515
CFG_STATIC_LIB_NAME_x86_64-apple-ios=lib$(1).a
1616
CFG_LIB_DSYM_GLOB_x86_64-apple-ios = lib$(1)-*.a.dSYM
1717
CFG_CFLAGS_x86_64-apple-ios := $(CFG_IOSSIM_FLAGS_x86_64-apple-ios)

branches/snap-stage3/mk/crates.mk

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,9 @@
5252
TARGET_CRATES := libc std flate arena term \
5353
serialize getopts collections test rand \
5454
log regex graphviz core rbml alloc \
55-
unicode rustc_bitflags
55+
unicode
5656
RUSTC_CRATES := rustc rustc_typeck rustc_borrowck rustc_resolve rustc_driver \
57-
rustc_trans rustc_back rustc_llvm rustc_privacy
57+
rustc_trans rustc_back rustc_llvm
5858
HOST_CRATES := syntax $(RUSTC_CRATES) rustdoc fmt_macros
5959
CRATES := $(TARGET_CRATES) $(HOST_CRATES)
6060
TOOLS := compiletest rustdoc rustc rustbook
@@ -64,27 +64,22 @@ DEPS_libc := core
6464
DEPS_unicode := core
6565
DEPS_alloc := core libc native:jemalloc
6666
DEPS_std := core libc rand alloc collections unicode \
67-
native:rust_builtin native:backtrace native:rustrt_native \
68-
rustc_bitflags
67+
native:rust_builtin native:backtrace native:rustrt_native
6968
DEPS_graphviz := std
7069
DEPS_syntax := std term serialize log fmt_macros arena libc
7170
DEPS_rustc_driver := arena flate getopts graphviz libc rustc rustc_back rustc_borrowck \
72-
rustc_typeck rustc_resolve log syntax serialize rustc_llvm \
73-
rustc_trans rustc_privacy
74-
71+
rustc_typeck rustc_resolve log syntax serialize rustc_llvm rustc_trans
7572
DEPS_rustc_trans := arena flate getopts graphviz libc rustc rustc_back \
7673
log syntax serialize rustc_llvm
7774
DEPS_rustc_typeck := rustc syntax
7875
DEPS_rustc_borrowck := rustc log graphviz syntax
7976
DEPS_rustc_resolve := rustc log syntax
80-
DEPS_rustc_privacy := rustc log syntax
8177
DEPS_rustc := syntax flate arena serialize getopts rbml \
8278
log graphviz rustc_llvm rustc_back
8379
DEPS_rustc_llvm := native:rustllvm libc std
8480
DEPS_rustc_back := std syntax rustc_llvm flate log libc
8581
DEPS_rustdoc := rustc rustc_driver native:hoedown serialize getopts \
8682
test
87-
DEPS_rustc_bitflags := core
8883
DEPS_flate := std native:miniz
8984
DEPS_arena := std
9085
DEPS_graphviz := std
@@ -116,7 +111,6 @@ ONLY_RLIB_alloc := 1
116111
ONLY_RLIB_rand := 1
117112
ONLY_RLIB_collections := 1
118113
ONLY_RLIB_unicode := 1
119-
ONLY_RLIB_rustc_bitflags := 1
120114

121115
################################################################################
122116
# You should not need to edit below this line
@@ -128,13 +122,12 @@ DOC_CRATES := $(filter-out rustc, \
128122
$(filter-out rustc_borrowck, \
129123
$(filter-out rustc_resolve, \
130124
$(filter-out rustc_driver, \
131-
$(filter-out rustc_privacy, \
132125
$(filter-out log, \
133126
$(filter-out regex, \
134127
$(filter-out getopts, \
135-
$(filter-out syntax, $(CRATES))))))))))))
128+
$(filter-out syntax, $(CRATES)))))))))))
136129
COMPILER_DOC_CRATES := rustc rustc_trans rustc_borrowck rustc_resolve \
137-
rustc_typeck rustc_driver syntax rustc_privacy
130+
rustc_typeck rustc_driver syntax
138131

139132
# This macro creates some simple definitions for each crate being built, just
140133
# some munging of all of the parameters above.

branches/snap-stage3/mk/main.mk

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ CFG_RELEASE_NUM=1.0.0
1818
# An optional number to put after the label, e.g. '.2' -> '-beta.2'
1919
# NB Make sure it starts with a dot to conform to semver pre-release
2020
# versions (section 9)
21-
CFG_PRERELEASE_VERSION=.1
21+
CFG_PRERELEASE_VERSION=
2222

2323
CFG_FILENAME_EXTRA=4e7c5e5c
2424

@@ -30,8 +30,9 @@ CFG_PACKAGE_VERS=$(CFG_RELEASE_NUM)
3030
CFG_DISABLE_UNSTABLE_FEATURES=1
3131
endif
3232
ifeq ($(CFG_RELEASE_CHANNEL),beta)
33-
CFG_RELEASE=$(CFG_RELEASE_NUM)-beta(CFG_PRERELEASE_VERSION)
34-
CFG_PACKAGE_VERS=$(CFG_RELEASE_NUM)-beta(CFG_PRERELEASE_VERSION)
33+
# The beta channel is temporarily called 'alpha'
34+
CFG_RELEASE=$(CFG_RELEASE_NUM)-alpha$(CFG_PRERELEASE_VERSION)
35+
CFG_PACKAGE_VERS=$(CFG_RELEASE_NUM)-alpha$(CFG_PRERELEASE_VERSION)
3536
CFG_DISABLE_UNSTABLE_FEATURES=1
3637
endif
3738
ifeq ($(CFG_RELEASE_CHANNEL),nightly)
@@ -262,7 +263,7 @@ endif
262263
######################################################################
263264

264265
# FIXME: x86-ism
265-
LLVM_COMPONENTS=x86 arm aarch64 mips powerpc ipo bitreader bitwriter linker asmparser mcjit \
266+
LLVM_COMPONENTS=x86 arm aarch64 mips ipo bitreader bitwriter linker asmparser mcjit \
266267
interpreter instrumentation
267268

268269
# Only build these LLVM tools
@@ -330,10 +331,10 @@ ifdef CFG_DISABLE_UNSTABLE_FEATURES
330331
CFG_INFO := $(info cfg: disabling unstable features (CFG_DISABLE_UNSTABLE_FEATURES))
331332
# Turn on feature-staging
332333
export CFG_DISABLE_UNSTABLE_FEATURES
333-
# Subvert unstable feature lints to do the self-build
334-
export RUSTC_BOOTSTRAP_KEY:=$(CFG_BOOTSTRAP_KEY)
335334
endif
335+
# Subvert unstable feature lints to do the self-build
336336
export CFG_BOOTSTRAP_KEY
337+
export RUSTC_BOOTSTRAP_KEY:=$(CFG_BOOTSTRAP_KEY)
337338

338339
######################################################################
339340
# Per-stage targets and runner

branches/snap-stage3/mk/platform.mk

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ define CFG_MAKE_TOOLCHAIN
177177
$$(CFG_GCCISH_DEF_FLAG_$(1))$$(3) $$(2) \
178178
$$(call CFG_INSTALL_NAME_$(1),$$(4))
179179

180-
ifeq ($$(findstring $(HOST_$(1)),arm aarch64 mips mipsel powerpc),)
180+
ifeq ($$(findstring $(HOST_$(1)),arm aarch64 mips mipsel),)
181181

182182
# We're using llvm-mc as our assembler because it supports
183183
# .cfi pseudo-ops on mac
@@ -189,7 +189,7 @@ define CFG_MAKE_TOOLCHAIN
189189
-o=$$(1)
190190
else
191191

192-
# For the ARM, AARCH64, MIPS and POWER crosses, use the toolchain assembler
192+
# For the ARM, AARCH64 and MIPS crosses, use the toolchain assembler
193193
# FIXME: We should be able to use the LLVM assembler
194194
CFG_ASSEMBLE_$(1)=$$(CC_$(1)) $$(CFG_GCCISH_CFLAGS_$(1)) \
195195
$$(CFG_DEPEND_FLAGS) $$(2) -c -o $$(1)

branches/snap-stage3/mk/prepare.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ prepare-target-$(2)-host-$(3)-$(1)-$(4): prepare-maybe-clean-$(4) \
134134
$$(if $$(findstring $(3), $$(PREPARE_HOST)), \
135135
$$(call PREPARE_DIR,$$(PREPARE_WORKING_DEST_LIB_DIR)) \
136136
$$(foreach crate,$$(TARGET_CRATES), \
137-
$$(if $$(or $$(findstring 1, $$(ONLY_RLIB_$$(crate))),$$(findstring 1,$$(CFG_INSTALL_ONLY_RLIB_$(2)))),, \
137+
$$(if $$(findstring 1, $$(ONLY_RLIB_$$(crate))),, \
138138
$$(call PREPARE_LIB,$$(call CFG_LIB_GLOB_$(2),$$(crate)))) \
139139
$$(call PREPARE_LIB,$$(call CFG_RLIB_GLOB,$$(crate)))) \
140140
$$(if $$(findstring $(2),$$(CFG_HOST)), \

branches/snap-stage3/src/compiletest/compiletest.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
#![feature(slicing_syntax, unboxed_closures)]
1414
#![feature(box_syntax)]
1515
#![feature(int_uint)]
16-
#![allow(unstable)]
1716

1817
#![deny(warnings)]
1918

branches/snap-stage3/src/compiletest/runtest.rs

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -966,16 +966,6 @@ fn check_expected_errors(expected_errors: Vec<errors::ExpectedError> ,
966966
line.starts_with( prefix )
967967
}
968968

969-
// A multi-line error will have followup lines which will always
970-
// start with one of these strings.
971-
fn continuation( line: &str) -> bool {
972-
line.starts_with(" expected") ||
973-
line.starts_with(" found") ||
974-
// 1234
975-
// Should have 4 spaces: see issue 18946
976-
line.starts_with("(")
977-
}
978-
979969
// Scan and extract our error/warning messages,
980970
// which look like:
981971
// filename:line1:col1: line2:col2: *error:* msg
@@ -991,7 +981,7 @@ fn check_expected_errors(expected_errors: Vec<errors::ExpectedError> ,
991981
ee.kind,
992982
ee.msg,
993983
line);
994-
if (prefix_matches(line, prefixes[i].as_slice()) || continuation(line)) &&
984+
if prefix_matches(line, prefixes[i].as_slice()) &&
995985
line.contains(ee.kind.as_slice()) &&
996986
line.contains(ee.msg.as_slice()) {
997987
found_flags[i] = true;

branches/snap-stage3/src/doc/complement-lang-faq.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ There aren't many large programs yet. The Rust [compiler][rustc], 60,000+ lines
1010

1111
A research browser engine called [Servo][servo], currently 30,000+ lines across more than a dozen crates, will be exercising a lot of Rust's distinctive type-system and concurrency features, and integrating many native libraries.
1212

13-
[servo]: https://github.com/servo/servo
13+
[servo]: https://github.com/mozilla/servo
1414

1515
Some examples that demonstrate different aspects of the language:
1616

branches/snap-stage3/src/doc/complement-project-faq.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ No. It started as a Graydon Hoare's part-time side project in 2006 and remained
3030

3131
# What will Mozilla use Rust for?
3232

33-
Mozilla intends to use Rust as a platform for prototyping experimental browser architectures. Specifically, the hope is to develop a browser that is more amenable to parallelization than existing ones, while also being less prone to common C++ coding errors that result in security exploits. The name of that project is _[Servo](http://github.com/servo/servo)_.
33+
Mozilla intends to use Rust as a platform for prototyping experimental browser architectures. Specifically, the hope is to develop a browser that is more amenable to parallelization than existing ones, while also being less prone to common C++ coding errors that result in security exploits. The name of that project is _[Servo](http://github.com/mozilla/servo)_.
3434

3535
# Why a BSD-style permissive license rather than MPL or tri-license?
3636

0 commit comments

Comments
 (0)