Skip to content

Commit 585f881

Browse files
committed
---
yaml --- r: 234155 b: refs/heads/beta c: dc6c118 h: refs/heads/master i: 234153: ee8757f 234151: c511cbd v: v3
1 parent 8869d23 commit 585f881

File tree

185 files changed

+1324
-11612
lines changed

Some content is hidden

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

185 files changed

+1324
-11612
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: 8e52875026a13c016c2878831eedd758e00e2506
26+
refs/heads/beta: dc6c11816c3188f952690a7b4a58dd253044ca43
2727
refs/tags/1.0.0-alpha: e42bd6d93a1d3433c486200587f8f9e12590a4d7
2828
refs/heads/tmp: 370fe2786109360f7c35b8ba552b83b773dd71d6
2929
refs/tags/1.0.0-alpha.2: 4c705f6bc559886632d3871b04f58aab093bfa2f

branches/beta/COPYRIGHT

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,104 @@ The Rust Project includes packages written by third parties.
2222
The following third party packages are included, and carry
2323
their own copyright notices and license terms:
2424

25+
* Two header files that are part of the Valgrind
26+
package. These files are found at src/rt/valgrind/valgrind.h and
27+
src/rt/valgrind/memcheck.h, within this distribution. These files
28+
are redistributed under the following terms, as noted in
29+
them:
30+
31+
for src/rt/valgrind/valgrind.h:
32+
33+
This file is part of Valgrind, a dynamic binary
34+
instrumentation framework.
35+
36+
Copyright (C) 2000-2010 Julian Seward. All rights
37+
reserved.
38+
39+
Redistribution and use in source and binary forms, with
40+
or without modification, are permitted provided that the
41+
following conditions are met:
42+
43+
1. Redistributions of source code must retain the above
44+
copyright notice, this list of conditions and the
45+
following disclaimer.
46+
47+
2. The origin of this software must not be
48+
misrepresented; you must not claim that you wrote the
49+
original software. If you use this software in a
50+
product, an acknowledgment in the product
51+
documentation would be appreciated but is not
52+
required.
53+
54+
3. Altered source versions must be plainly marked as
55+
such, and must not be misrepresented as being the
56+
original software.
57+
58+
4. The name of the author may not be used to endorse or
59+
promote products derived from this software without
60+
specific prior written permission.
61+
62+
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND
63+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
64+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
65+
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
66+
NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
67+
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
68+
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
69+
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
70+
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
71+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
72+
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
73+
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
74+
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
75+
OF SUCH DAMAGE.
76+
77+
for src/rt/valgrind/memcheck.h:
78+
79+
This file is part of MemCheck, a heavyweight Valgrind
80+
tool for detecting memory errors.
81+
82+
Copyright (C) 2000-2010 Julian Seward. All rights
83+
reserved.
84+
85+
Redistribution and use in source and binary forms, with
86+
or without modification, are permitted provided that the
87+
following conditions are met:
88+
89+
1. Redistributions of source code must retain the above
90+
copyright notice, this list of conditions and the
91+
following disclaimer.
92+
93+
2. The origin of this software must not be
94+
misrepresented; you must not claim that you wrote the
95+
original software. If you use this software in a
96+
product, an acknowledgment in the product
97+
documentation would be appreciated but is not
98+
required.
99+
100+
3. Altered source versions must be plainly marked as
101+
such, and must not be misrepresented as being the
102+
original software.
103+
104+
4. The name of the author may not be used to endorse or
105+
promote products derived from this software without
106+
specific prior written permission.
107+
108+
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND
109+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
110+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
111+
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
112+
NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
113+
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
114+
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
115+
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
116+
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
117+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
118+
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
119+
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
120+
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
121+
OF SUCH DAMAGE.
122+
25123
* The src/rt/miniz.c file, carrying an implementation of
26124
RFC1950/RFC1951 DEFLATE, by Rich Geldreich
27125
<[email protected]>. All uses of this file are

branches/beta/RELEASES.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Version 1.2.0 (2015-08-07)
1+
Version 1.2.0 (August 2015)
22
===========================
33

44
* ~1200 changes, numerous bugfixes
@@ -156,7 +156,7 @@ Misc
156156
[ad]: https://github.com/rust-lang/rust/pull/27382
157157
[win]: https://github.com/rust-lang/rust/pull/25350
158158

159-
Version 1.1.0 (2015-06-25)
159+
Version 1.1.0 (June 2015)
160160
=========================
161161

162162
* ~850 changes, numerous bugfixes
@@ -267,7 +267,7 @@ Misc
267267
[`split_off`]: https://doc.rust-lang.org/nightly/collections/linked_list/struct.LinkedList.html#method.split_off
268268
[drop]: https://github.com/rust-lang/rust/pull/24935
269269

270-
Version 1.0.0 (2015-05-15)
270+
Version 1.0.0 (May 2015)
271271
========================
272272

273273
* ~1500 changes, numerous bugfixes

branches/beta/configure

Lines changed: 6 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -885,28 +885,6 @@ then
885885
CFG_DISABLE_JEMALLOC=1
886886
fi
887887

888-
# default gcc version under OpenBSD maybe too old, try using egcc, which is a
889-
# gcc version from ports
890-
if [ $CFG_OSTYPE = unknown-openbsd ]
891-
then
892-
if [ $("$CFG_GCC" --version 2>&1 | grep -c ' 4\.[0-6]') -ne 0 ]; then
893-
step_msg "older GCC found, try with egcc instead"
894-
895-
# probe again but using egcc
896-
probe CFG_GCC egcc
897-
898-
# and use egcc/eg++ for CC/CXX too if it was found
899-
# (but user setting has priority)
900-
if [ -n "$CFG_GCC" ]; then
901-
CC="${CC:-egcc}"
902-
CXX="${CXX:-eg++}"
903-
fi
904-
fi
905-
906-
step_msg "on OpenBSD, disabling jemalloc"
907-
CFG_DISABLE_JEMALLOC=1
908-
fi
909-
910888
# OS X 10.9, gcc is actually clang. This can cause some confusion in the build
911889
# system, so if we find that gcc is clang, we should just use clang directly.
912890
if [ $CFG_OSTYPE = apple-darwin -a -z "$CFG_ENABLE_CLANG" ]
@@ -978,7 +956,7 @@ then
978956
LLVM_VERSION=$($LLVM_CONFIG --version)
979957

980958
case $LLVM_VERSION in
981-
(3.[5-8]*)
959+
(3.[5-7]*)
982960
msg "found ok version of LLVM: $LLVM_VERSION"
983961
;;
984962
(*)
@@ -1052,7 +1030,7 @@ then
10521030
esac
10531031
else
10541032
case $CFG_CLANG_VERSION in
1055-
(3.2* | 3.3* | 3.4* | 3.5* | 3.6* | 3.7* | 3.8*)
1033+
(3.2* | 3.3* | 3.4* | 3.5* | 3.6* | 3.7*)
10561034
step_msg "found ok version of CLANG: $CFG_CLANG_VERSION"
10571035
;;
10581036
(*)
@@ -1202,27 +1180,16 @@ do
12021180
# MSVC requires cmake because that's how we're going to build LLVM
12031181
probe_need CFG_CMAKE cmake
12041182

1205-
# There are three builds of cmake on windows: MSVC, MinGW and Cygwin
1206-
# The Cygwin build does not have generators for Visual Studio, so
1207-
# detect that here and error.
1208-
if ! "$CFG_CMAKE" --help | sed -n '/^Generators/,$p' | grep 'Visual Studio' > /dev/null
1209-
then
1210-
err "cmake does not support Visual Studio generators.\n\n \
1211-
This is likely due to it being an msys/cygwin build of cmake, \
1212-
rather than the required windows version, built using MinGW \
1213-
or Visual Studio."
1214-
fi
1215-
12161183
# Use the REG program to figure out where VS is installed
12171184
# We need to figure out where cl.exe and link.exe are, so we do some
12181185
# munging and some probing here. We also look for the default
12191186
# INCLUDE and LIB variables for MSVC so we can set those in the
12201187
# build system as well.
1221-
install=$(cmd //c reg QUERY \
1188+
install=$(reg QUERY \
12221189
'HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\14.0' \
12231190
-v InstallDir)
12241191
if [ -z "$install" ]; then
1225-
install=$(cmd //c reg QUERY \
1192+
install=$(reg QUERY \
12261193
'HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\12.0' \
12271194
-v InstallDir)
12281195
fi
@@ -1255,9 +1222,9 @@ do
12551222
eval CFG_MSVC_LINK_$bits="\"$bindir/link.exe\""
12561223

12571224
vcvarsall="${CFG_MSVC_ROOT}/VC/vcvarsall.bat"
1258-
include_path=$(cmd //V:ON //c "$vcvarsall" $msvc_part \& echo !INCLUDE!)
1225+
include_path=$(cmd /c "\"$vcvarsall\" $msvc_part && cmd /c echo %INCLUDE%")
12591226
need_ok "failed to learn about MSVC's INCLUDE"
1260-
lib_path=$(cmd //V:ON //c "$vcvarsall" $msvc_part \& echo !LIB!)
1227+
lib_path=$(cmd /c "\"$vcvarsall\" $msvc_part && cmd /c echo %LIB%")
12611228
need_ok "failed to learn about MSVC's LIB"
12621229

12631230
eval CFG_MSVC_INCLUDE_PATH_${bits}="\"$include_path\""

branches/beta/mk/crates.mk

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ TARGET_CRATES := libc std flate arena term \
5454
log graphviz core rbml alloc \
5555
rustc_unicode rustc_bitflags \
5656
alloc_system
57-
RUSTC_CRATES := rustc rustc_typeck rustc_mir rustc_borrowck rustc_resolve rustc_driver \
57+
RUSTC_CRATES := rustc rustc_typeck rustc_borrowck rustc_resolve rustc_driver \
5858
rustc_trans rustc_back rustc_llvm rustc_privacy rustc_lint \
5959
rustc_data_structures rustc_front rustc_platform_intrinsics
6060
HOST_CRATES := syntax $(RUSTC_CRATES) rustdoc fmt_macros
@@ -70,12 +70,11 @@ DEPS_std := core libc rand alloc collections rustc_unicode \
7070
DEPS_graphviz := std
7171
DEPS_syntax := std term serialize log fmt_macros arena libc rustc_bitflags
7272
DEPS_rustc_driver := arena flate getopts graphviz libc rustc rustc_back rustc_borrowck \
73-
rustc_typeck rustc_mir rustc_resolve log syntax serialize rustc_llvm \
73+
rustc_typeck rustc_resolve log syntax serialize rustc_llvm \
7474
rustc_trans rustc_privacy rustc_lint rustc_front
7575

7676
DEPS_rustc_trans := arena flate getopts graphviz libc rustc rustc_back \
7777
log syntax serialize rustc_llvm rustc_front rustc_platform_intrinsics
78-
DEPS_rustc_mir := rustc rustc_front syntax
7978
DEPS_rustc_typeck := rustc syntax rustc_front rustc_platform_intrinsics
8079
DEPS_rustc_borrowck := rustc rustc_front log graphviz syntax
8180
DEPS_rustc_resolve := rustc rustc_front log syntax

branches/beta/mk/main.mk

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -172,18 +172,6 @@ RUST_LIB_FLAGS_ST3 += -C prefer-dynamic
172172
# by not emitting them.
173173
RUSTFLAGS_STAGE0 += -Z no-landing-pads
174174

175-
# Enable MIR to "always build" for crates where this works. This is
176-
# just temporary while MIR is being actively built up -- it's just a
177-
# poor man's unit testing infrastructure. Anyway we only want this for
178-
# stage1/stage2.
179-
define ADD_MIR_FLAG
180-
RUSTFLAGS1_$(1) += -Z always-build-mir
181-
RUSTFLAGS2_$(1) += -Z always-build-mir
182-
endef
183-
$(foreach crate,$(TARGET_CRATES),$(eval $(call ADD_MIR_FLAG,$(crate))))
184-
$(foreach crate,$(RUSTC_CRATES),$(eval $(call ADD_MIR_FLAG,$(crate))))
185-
$(foreach crate,$(HOST_CRATES),$(eval $(call ADD_MIR_FLAG,$(crate))))
186-
187175
# platform-specific auto-configuration
188176
include $(CFG_SRC_DIR)mk/platform.mk
189177

branches/beta/mk/target.mk

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,6 @@ $$(TLIB$(1)_T_$(2)_H_$(3))/stamp.$(4): \
9393
$$(LLVM_LIBDIR_RUSTFLAGS_$(2)) \
9494
$$(LLVM_STDCPP_RUSTFLAGS_$(2)) \
9595
$$(RUSTFLAGS_$(4)) \
96-
$$(RUSTFLAGS$(1)_$(4)) \
9796
$$(RUSTFLAGS$(1)_$(4)_T_$(2)) \
9897
--out-dir $$(@D) \
9998
-C extra-filename=-$$(CFG_FILENAME_EXTRA) \

branches/beta/src/doc/index.md

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -20,30 +20,13 @@ series of small examples.
2020

2121
[rbe]: http://rustbyexample.com/
2222

23-
# Language Reference
24-
25-
Rust does not have an exact specification yet, but an effort to describe as much of
26-
the language in as much detail as possible is in [the reference](reference.html).
27-
28-
# Standard Library Reference
23+
# The Standard Library
2924

3025
We have [API documentation for the entire standard
3126
library](std/index.html). There's a list of crates on the left with more
3227
specific sections, or you can use the search bar at the top to search for
3328
something if you know its name.
3429

35-
# Tools
36-
37-
[Cargo](https://crates.io) is the Rust's package manager providing access to libraries
38-
beyond the standard one, and its website contains lots of good documentation.
39-
40-
[`rustdoc`](book/documentation.html) is the Rust's documentation generator, a tool converting
41-
annotated source code into HTML docs.
42-
43-
A bunch of non-official tools are available, such as [Racer](https://github.com/phildawes/racer)
44-
(code completion engine), or [rustfmt](https://github.com/nrc/rustfmt) (source code formatter),
45-
or text editor plugins.
46-
4730
# Community & Getting Help
4831

4932
If you need help with something, or just want to talk about Rust with others,
@@ -71,10 +54,25 @@ There is an active [subreddit](https://reddit.com/r/rust) with lots of
7154
discussion and news about Rust.
7255

7356
There is also a [user forum](https://users.rust-lang.org), for all
74-
user-oriented discussion, and a [developer
57+
user-oriented discussion, and a [developer
7558
forum](https://internals.rust-lang.org/), where the development of Rust
7659
itself is discussed.
7760

61+
# Specification
62+
63+
Rust does not have an exact specification, but an effort to describe as much of
64+
the language in as much detail as possible is in [the reference](reference.html).
65+
66+
# Tools
67+
68+
Rust is still a young language, so there isn't a ton of tooling yet, but the
69+
tools we have are really nice.
70+
71+
[Cargo](https://crates.io) is Rust's package manager, and its website contains
72+
lots of good documentation.
73+
74+
[`rustdoc`](book/documentation.html) is used to generate documentation for Rust code.
75+
7876
# FAQs
7977

8078
There are questions that are asked quite often, so we've made FAQs for them:

branches/beta/src/doc/nomicon/vec-drain.md

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -129,16 +129,14 @@ impl<'a, T> Drop for Drain<'a, T> {
129129
130130
impl<T> Vec<T> {
131131
pub fn drain(&mut self) -> Drain<T> {
132-
unsafe {
133-
let iter = RawValIter::new(&self);
134-
135-
// this is a mem::forget safety thing. If Drain is forgotten, we just
136-
// leak the whole Vec's contents. Also we need to do this *eventually*
137-
// anyway, so why not do it now?
138-
self.len = 0;
132+
// this is a mem::forget safety thing. If Drain is forgotten, we just
133+
// leak the whole Vec's contents. Also we need to do this eventually
134+
// anyway, so why not do it now?
135+
self.len = 0;
139136
137+
unsafe {
140138
Drain {
141-
iter: iter,
139+
iter: RawValIter::new(&self),
142140
vec: PhantomData,
143141
}
144142
}

branches/beta/src/doc/nomicon/vec-final.md

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -155,16 +155,13 @@ impl<T> Vec<T> {
155155
}
156156

157157
pub fn drain(&mut self) -> Drain<T> {
158+
// this is a mem::forget safety thing. If this is forgotten, we just
159+
// leak the whole Vec's contents. Also we need to do this *eventually*
160+
// anyway, so why not do it now?
161+
self.len = 0;
158162
unsafe {
159-
let iter = RawValIter::new(&self);
160-
161-
// this is a mem::forget safety thing. If Drain is forgotten, we just
162-
// leak the whole Vec's contents. Also we need to do this *eventually*
163-
// anyway, so why not do it now?
164-
self.len = 0;
165-
166163
Drain {
167-
iter: iter,
164+
iter: RawValIter::new(&self),
168165
vec: PhantomData,
169166
}
170167
}

0 commit comments

Comments
 (0)