Skip to content

Commit 5e09b98

Browse files
committed
---
yaml --- r: 66319 b: refs/heads/master c: 332671c h: refs/heads/master i: 66317: 95c5d79 66315: 5b0807c 66311: 59e55a9 66303: 19f2cca v: v3
1 parent 61244ee commit 5e09b98

File tree

235 files changed

+1103
-1434
lines changed

Some content is hidden

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

235 files changed

+1103
-1434
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
refs/heads/master: 808b52351a82bc2730e5b5f31adf86167b1d60b9
2+
refs/heads/master: 332671c4794f159129eeb948aef4b5e928d38894
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 18e3db7392d2d0697b7e27d6d986139960144d85
55
refs/heads/try: 7b78b52e602bb3ea8174f9b2006bff3315f03ef9

trunk/.gitmodules

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
[submodule "src/llvm"]
22
path = src/llvm
33
url = https://github.com/brson/llvm.git
4-
branch = master
54
[submodule "src/libuv"]
65
path = src/libuv
76
url = https://github.com/brson/libuv.git
8-
branch = master

trunk/RELEASES.txt

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ Version 0.7 (July 2013)
44
* ??? changes, numerous bugfixes
55

66
* Syntax changes
7-
* `impl`s no longer accept a visibility qualifier. Put them on methods
8-
instead.
97
* `use mod` is no longer valid.
108
* `fail!` and `assert!` accept `~str`, `&'static str` or `fmt!`-style
119
argument list.
@@ -27,10 +25,6 @@ Version 0.7 (July 2013)
2725
no padding between fields.
2826
* The `for` loop protocol now requires `for`-iterators to return `bool`
2927
so they compose better.
30-
* Trait default methods work more often.
31-
* Type parameters bound by `Copy` must now be copied explicitly with
32-
the `copy` keyword.
33-
* It is now illegal to move out of a dereferenced unsafe pointer.
3428
* `Option<~T>` is now represented as a nullable pointer.
3529
* `@mut` does dynamic borrow checks correctly.
3630
* Macros TODO
@@ -49,30 +43,26 @@ Version 0.7 (July 2013)
4943
* Libraries
5044
* The `core` crate was renamed to `std`.
5145
* The `std` crate was renamed to `extra`.
52-
* std: `iterator` module for external iterator objects.
53-
* Many old-style (internal, higher-order function) iterators replaced by
54-
implementations of `Iterator`.
55-
* std: Many old internal vector and string iterators,
56-
incl. `any`, `all`. removed.
57-
* std: The `finalize` method of `Drop` renamed to `drop`.
46+
* `std::mut` removed.
5847
* std: The prelude no longer reexports any modules, only types and traits.
5948
* std: Prelude additions: `print`, `println`, `FromStr`, `ApproxEq`, `Equiv`,
6049
`Iterator`, `IteratorUtil`, many numeric traits, many tuple traits.
61-
* std: New numeric traits: `Fractional`, `Real`, `RealExt`, `Integer`, `Ratio`,
50+
* std: `iterator` module for external iterator objects.
51+
* std: Many old internal vector and string iterators,
52+
incl. `any`, `all`. removed.
53+
* std: new numeric traits: `Fractional`, `Real`, `RealExt`, `Integer`, `Ratio`,
6254
`Algebraic`, `Trigonometric`, `Exponential`, `Primitive`.
6355
* std: Tuple traits and accessors defined for up to 12-tuples, e.g.
6456
`(0, 1, 2).n2()` or `(0, 1, 2).n2_ref()`.
65-
* std: Many types implement `Clone`.
57+
* std: many types implement `Clone`.
6658
* std: `path` type renamed to `Path`.
67-
* std: `mut` module and `Mut` type removed.
6859
* std: Many standalone functions removed in favor of methods and iterators
6960
in `vec`, `str`. In the future methods will also work as functions.
70-
* std: `reinterpret_cast` removed. Use `transmute`.
61+
* std: `reinterpret_cast` removed. Used `transmute`.
7162
* std: ascii string handling in `std::ascii`.
7263
* std: `Rand` is implemented for ~/@.
7364
* std: `run` module for spawning processes overhauled.
7465
* std: Various atomic types added to `unstable::atomic`.
75-
* std: Various types implement `Zero`.
7666
* std: `LinearMap` and `LinearSet` renamed to `HashMap` and `HashSet`.
7767
* std: Borrowed pointer functions moved from `ptr` to `borrow`.
7868
* std: Added `os::mkdir_recursive`.
@@ -106,6 +96,7 @@ Version 0.7 (July 2013)
10696
* More and improved library documentation.
10797
* Various improvements on ARM and Android.
10898
* Various improvements to MIPS backend.
99+
* jemalloc is the Rust allocator.
109100

110101
Version 0.6 (April 2013)
111102
------------------------

trunk/configure

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -834,7 +834,9 @@ do
834834
LLVM_TARGET="--target=$t"
835835

836836
# Disable unused LLVM features
837-
LLVM_OPTS="$LLVM_DBG_OPTS --disable-docs --enable-bindings=none"
837+
LLVM_OPTS="$LLVM_DBG_OPTS --disable-docs \
838+
--enable-bindings=none --disable-threads \
839+
--disable-pthreads"
838840

839841
case "$CFG_C_COMPILER" in
840842
("ccache clang")

trunk/doc/tutorial-ffi.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@ impl<T: Owned> Unique<T> {
183183
184184
#[unsafe_destructor]
185185
impl<T: Owned> Drop for Unique<T> {
186-
fn drop(&self) {
186+
fn finalize(&self) {
187187
unsafe {
188188
let x = intrinsics::init(); // dummy value to swap in
189189
// moving the object out is needed to call the destructor

trunk/doc/tutorial.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2010,7 +2010,7 @@ types by the compiler, and may not be overridden:
20102010
> iterations of the language, and often still are.
20112011
20122012
Additionally, the `Drop` trait is used to define destructors. This
2013-
trait defines one method called `drop`, which is automatically
2013+
trait defines one method called `finalize`, which is automatically
20142014
called when a value of the type that implements this trait is
20152015
destroyed, either because the value went out of scope or because the
20162016
garbage collector reclaimed it.
@@ -2021,15 +2021,15 @@ struct TimeBomb {
20212021
}
20222022
20232023
impl Drop for TimeBomb {
2024-
fn drop(&self) {
2024+
fn finalize(&self) {
20252025
for self.explosivity.times {
20262026
println("blam!");
20272027
}
20282028
}
20292029
}
20302030
~~~
20312031

2032-
It is illegal to call `drop` directly. Only code inserted by the compiler
2032+
It is illegal to call `finalize` directly. Only code inserted by the compiler
20332033
may call it.
20342034

20352035
## Declaring and implementing traits

trunk/mk/target.mk

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,6 @@
1313
# this exists can be found on issue #2400
1414
export CFG_COMPILER_TRIPLE
1515

16-
# The standard libraries should be held up to a higher standard than any old
17-
# code, make sure that these common warnings are denied by default. These can
18-
# be overridden during development temporarily. For stage0, we allow all these
19-
# to suppress warnings which may be bugs in stage0 (should be fixed in stage1+)
20-
# NOTE: add "-A warnings" after snapshot to WFLAGS_ST0
21-
WFLAGS_ST0 = -A unrecognized-lint
22-
WFLAGS_ST1 = -D warnings
23-
WFLAGS_ST2 = -D warnings
24-
2516
# TARGET_STAGE_N template: This defines how target artifacts are built
2617
# for all stage/target architecture combinations. The arguments:
2718
# $(1) is the stage
@@ -48,15 +39,15 @@ $$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_STDLIB_$(2)): \
4839
$$(TSREQ$(1)_T_$(2)_H_$(3)) \
4940
| $$(TLIB$(1)_T_$(2)_H_$(3))/
5041
@$$(call E, compile_and_link: $$@)
51-
$$(STAGE$(1)_T_$(2)_H_$(3)) $$(WFLAGS_ST$(1)) -o $$@ $$< && touch $$@
42+
$$(STAGE$(1)_T_$(2)_H_$(3)) -o $$@ $$< && touch $$@
5243

5344
$$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_EXTRALIB_$(2)): \
5445
$$(EXTRALIB_CRATE) $$(EXTRALIB_INPUTS) \
5546
$$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_STDLIB_$(2)) \
5647
$$(TSREQ$(1)_T_$(2)_H_$(3)) \
5748
| $$(TLIB$(1)_T_$(2)_H_$(3))/
5849
@$$(call E, compile_and_link: $$@)
59-
$$(STAGE$(1)_T_$(2)_H_$(3)) $$(WFLAGS_ST$(1)) -o $$@ $$< && touch $$@
50+
$$(STAGE$(1)_T_$(2)_H_$(3)) -o $$@ $$< && touch $$@
6051

6152
$$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_LIBSYNTAX_$(3)): \
6253
$$(LIBSYNTAX_CRATE) $$(LIBSYNTAX_INPUTS) \

trunk/src/compiletest/compiletest.rs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,9 +254,17 @@ pub fn make_test(config: &config, testfile: &Path) -> test::TestDescAndFn {
254254
}
255255

256256
pub fn make_test_name(config: &config, testfile: &Path) -> test::TestName {
257+
258+
// Try to elide redundant long paths
259+
fn shorten(path: &Path) -> ~str {
260+
let filename = path.filename();
261+
let dir = path.pop().filename();
262+
fmt!("%s/%s", dir.get_or_default(~""), filename.get_or_default(~""))
263+
}
264+
257265
test::DynTestName(fmt!("[%s] %s",
258266
mode_str(config.mode),
259-
testfile.to_str()))
267+
shorten(testfile)))
260268
}
261269

262270
pub fn make_test_closure(config: &config, testfile: &Path) -> test::TestFn {

trunk/src/etc/combine-tests.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ def scrub(b):
6060
for t in stage2_tests:
6161
p = os.path.join("test", "run-pass", t)
6262
p = p.replace("\\", "\\\\")
63-
d.write(" out.write_str(\"run-pass [stage2]: %s\\n\");\n" % p)
63+
d.write(" out.write_str(~\"run-pass [stage2]: %s\\n\");\n" % p)
6464
d.write(" t_%d::main();\n" % i)
6565
i += 1
6666
d.write("}\n")

trunk/src/etc/vim/syntax/rust.vim

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
" Language: Rust
33
" Maintainer: Patrick Walton <[email protected]>
44
" Maintainer: Ben Blum <[email protected]>
5-
" Last Change: 2012 Jun 14
5+
" Last Change: 2013 Jun 14
66

77
if version < 600
88
syntax clear
@@ -15,7 +15,7 @@ syn keyword rustOperator as
1515

1616
syn match rustAssert "\<assert\(\w\)*!"
1717
syn match rustFail "\<fail\(\w\)*!"
18-
syn keyword rustKeyword break copy do extern
18+
syn keyword rustKeyword break copy do drop extern
1919
syn keyword rustKeyword for if impl let log
2020
syn keyword rustKeyword copy do extern
2121
syn keyword rustKeyword for impl let log

trunk/src/libextra/arc.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
*
2020
* ~~~ {.rust}
2121
* extern mod std;
22-
* use std::arc;
22+
* use extra::arc;
2323
* let numbers=vec::from_fn(100, |ind| (ind as float)*rand::random());
2424
* let shared_numbers=arc::ARC(numbers);
2525
*
@@ -247,7 +247,7 @@ struct PoisonOnFail {
247247
}
248248

249249
impl Drop for PoisonOnFail {
250-
fn drop(&self) {
250+
fn finalize(&self) {
251251
unsafe {
252252
/* assert!(!*self.failed);
253253
-- might be false in case of cond.wait() */

trunk/src/libextra/arena.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ pub struct Arena {
7777

7878
#[unsafe_destructor]
7979
impl Drop for Arena {
80-
fn drop(&self) {
80+
fn finalize(&self) {
8181
unsafe {
8282
destroy_chunk(&self.head);
8383
for self.chunks.each |chunk| {

trunk/src/libextra/base64.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ impl<'self> ToBase64 for &'self [u8] {
3636
* # Example
3737
*
3838
* ~~~ {.rust}
39-
* extern mod std;
40-
* use std::base64::ToBase64;
39+
* extern mod extra;
40+
* use extra::base64::ToBase64;
4141
*
4242
* fn main () {
4343
* let str = [52,32].to_base64();
@@ -99,8 +99,8 @@ impl<'self> ToBase64 for &'self str {
9999
* # Example
100100
*
101101
* ~~~ {.rust}
102-
* extern mod std;
103-
* use std::base64::ToBase64;
102+
* extern mod extra;
103+
* use extra::base64::ToBase64;
104104
*
105105
* fn main () {
106106
* let str = "Hello, World".to_base64();
@@ -127,9 +127,9 @@ impl<'self> FromBase64 for &'self [u8] {
127127
* # Example
128128
*
129129
* ~~~ {.rust}
130-
* extern mod std;
131-
* use std::base64::ToBase64;
132-
* use std::base64::FromBase64;
130+
* extern mod extra;
131+
* use extra::base64::ToBase64;
132+
* use extra::base64::FromBase64;
133133
*
134134
* fn main () {
135135
* let str = [52,32].to_base64();
@@ -207,9 +207,9 @@ impl<'self> FromBase64 for &'self str {
207207
* This converts a string literal to base64 and back.
208208
*
209209
* ~~~ {.rust}
210-
* extern mod std;
211-
* use std::base64::ToBase64;
212-
* use std::base64::FromBase64;
210+
* extern mod extra;
211+
* use extra::base64::ToBase64;
212+
* use extra::base64::FromBase64;
213213
* use core::str;
214214
*
215215
* fn main () {

trunk/src/libextra/c_vec.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ struct DtorRes {
5757

5858
#[unsafe_destructor]
5959
impl Drop for DtorRes {
60-
fn drop(&self) {
60+
fn finalize(&self) {
6161
match self.dtor {
6262
option::None => (),
6363
option::Some(f) => f()

0 commit comments

Comments
 (0)