Skip to content

Commit c8200ab

Browse files
committed
---
yaml --- r: 118199 b: refs/heads/try c: 30a8bcb h: refs/heads/master i: 118197: 8b48a2a 118195: 8465157 118191: e708ba1 v: v3
1 parent 8905a2b commit c8200ab

File tree

58 files changed

+1921
-1959
lines changed

Some content is hidden

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

58 files changed

+1921
-1959
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: 3770c42a4959cbabc73da52abc7e3db96657974e
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: d6736a1440d42f6af967a8a20ab8d73522112b72
5-
refs/heads/try: 073c8f10fc40b07596fd1018a2002db8e6d5222a
5+
refs/heads/try: 30a8bcbe3df484f7fa9f2523f429490c97af0382
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: 147ecfdd8221e4a4d4e090486829a06da1e0ca3c

branches/try/mk/crates.mk

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,6 @@ TOOL_SOURCE_rustdoc := $(S)src/driver/driver.rs
101101
TOOL_SOURCE_rustc := $(S)src/driver/driver.rs
102102

103103
ONLY_RLIB_core := 1
104-
ONLY_RLIB_libc := 1
105104
ONLY_RLIB_rlibc := 1
106105
ONLY_RLIB_alloc := 1
107106
ONLY_RLIB_rand := 1

branches/try/mk/docs.mk

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ HTML_DEPS += doc/version_info.html
110110
doc/version_info.html: $(D)/version_info.html.template $(MKFILE_DEPS) \
111111
$(wildcard $(D)/*.*) | doc/
112112
@$(call E, version-info: $@)
113-
$(Q)sed -e "s/VERSION/$(CFG_RELEASE)/; s/SHORT_HASH/$(shell echo \
113+
sed -e "s/VERSION/$(CFG_RELEASE)/; s/SHORT_HASH/$(shell echo \
114114
$(CFG_VER_HASH) | head -c 8)/;\
115115
s/STAMP/$(CFG_VER_HASH)/;" $< >$@
116116

@@ -156,17 +156,15 @@ doc/footer.tex: $(D)/footer.inc | doc/
156156
# HTML (rustdoc)
157157
DOC_TARGETS += doc/not_found.html
158158
doc/not_found.html: $(D)/not_found.md $(HTML_DEPS) | doc/
159-
@$(call E, rustdoc: $@)
160-
$(Q)$(RUSTDOC) $(RUSTDOC_HTML_OPTS_NO_CSS) \
161-
--markdown-css http://doc.rust-lang.org/rust.css $<
159+
$(RUSTDOC) $(RUSTDOC_HTML_OPTS_NO_CSS) --markdown-css http://doc.rust-lang.org/rust.css $<
162160

163161
define DEF_DOC
164162

165163
# HTML (rustdoc)
166164
DOC_TARGETS += doc/$(1).html
167165
doc/$(1).html: $$(D)/$(1).md $$(HTML_DEPS) $$(RUSTDOC_DEPS_$(1)) | doc/
168166
@$$(call E, rustdoc: $$@)
169-
$$(Q)$$(RUSTDOC) $$(RUSTDOC_HTML_OPTS) $$(RUSTDOC_FLAGS_$(1)) $$<
167+
$$(RUSTDOC) $$(RUSTDOC_HTML_OPTS) $$(RUSTDOC_FLAGS_$(1)) $$<
170168

171169
ifneq ($(ONLY_HTML_DOCS),1)
172170

branches/try/src/README.md

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,37 +5,26 @@ Source layout:
55
| Path | Description |
66
| ------------------- | --------------------------------------------------------- |
77
| `librustc/` | The self-hosted compiler |
8-
| `liballoc/` | Rust's core allocation library |
9-
| `libcore/` | The Rust core library |
10-
| `libdebug/` | Debugging utilities |
118
| `libstd/` | The standard library (imported and linked by default) |
9+
| `libextra/` | The "extras" library (slightly more peripheral code) |
1210
| `libgreen/` | The M:N runtime library |
1311
| `libnative/` | The 1:1 runtime library |
1412
| `libsyntax/` | The Rust parser and pretty-printer |
13+
| `libcollections/` | A collection of useful data structures and containers |
14+
| `libnum/` | Extended number support library (complex, rational, etc) |
1515
| `libtest/` | Rust's test-runner code |
1616
| ------------------- | --------------------------------------------------------- |
1717
| `libarena/` | The arena (a fast but limited) memory allocator |
18-
| `libbacktrace/` | The libbacktrace library |
19-
| `libcollections/` | A collection of useful data structures and containers |
2018
| `libflate/` | Simple compression library |
21-
| `libfmt_macros/` | Macro support for format strings |
2219
| `libfourcc/` | Data format identifier library |
2320
| `libgetopts/` | Get command-line-options library |
2421
| `libglob/` | Unix glob patterns library |
25-
| `libgraphviz/` | Generating files for Graphviz |
26-
| `libhexfloat/` | Hexadecimal floating-point literals |
27-
| `liblibc/` | Bindings for the C standard library |
28-
| `liblog/` | Utilities for program-wide and customizable logging |
29-
| `libnum/` | Extended number support library (complex, rational, etc) |
30-
| `librand/` | Random numbers and distributions |
3122
| `libregex/` | Regular expressions |
32-
| `libregex_macros/` | The regex! syntax extension |
3323
| `libsemver/` | Rust's semantic versioning library |
3424
| `libserialize/` | Encode-Decode types library |
3525
| `libsync/` | Concurrency mechanisms and primitives |
3626
| `libterm/` | ANSI color library for terminals |
3727
| `libtime/` | Time operations library |
38-
| `liburl/` | URL handling lirary |
3928
| `libuuid/` | UUID's handling code |
4029
| ------------------- | --------------------------------------------------------- |
4130
| `rt/` | The runtime system |

branches/try/src/compiletest/runtest.rs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -361,7 +361,7 @@ fn run_debuginfo_gdb_test(config: &Config, props: &TestProps, testfile: &Path) {
361361
],
362362
vec!(("".to_string(), "".to_string())),
363363
Some("".to_string()))
364-
.expect(format!("failed to exec `{}`", config.adb_path).as_slice());
364+
.expect(format!("failed to exec `{}`", config.adb_path));
365365

366366
procsrv::run("",
367367
config.adb_path.as_slice(),
@@ -372,7 +372,7 @@ fn run_debuginfo_gdb_test(config: &Config, props: &TestProps, testfile: &Path) {
372372
],
373373
vec!(("".to_string(), "".to_string())),
374374
Some("".to_string()))
375-
.expect(format!("failed to exec `{}`", config.adb_path).as_slice());
375+
.expect(format!("failed to exec `{}`", config.adb_path));
376376

377377
let adb_arg = format!("export LD_LIBRARY_PATH={}; \
378378
gdbserver :5039 {}/{}",
@@ -392,7 +392,7 @@ fn run_debuginfo_gdb_test(config: &Config, props: &TestProps, testfile: &Path) {
392392
vec!(("".to_string(),
393393
"".to_string())),
394394
Some("".to_string()))
395-
.expect(format!("failed to exec `{}`", config.adb_path).as_slice());
395+
.expect(format!("failed to exec `{}`", config.adb_path));
396396
loop {
397397
//waiting 1 second for gdbserver start
398398
timer::sleep(1000);
@@ -428,7 +428,7 @@ fn run_debuginfo_gdb_test(config: &Config, props: &TestProps, testfile: &Path) {
428428
debugger_opts.as_slice(),
429429
vec!(("".to_string(), "".to_string())),
430430
None)
431-
.expect(format!("failed to exec `{}`", gdb_path).as_slice());
431+
.expect(format!("failed to exec `{}`", gdb_path));
432432
let cmdline = {
433433
let cmdline = make_cmdline("",
434434
"arm-linux-androideabi-gdb",
@@ -1207,7 +1207,7 @@ fn program_output(config: &Config, testfile: &Path, lib_path: &str, prog: String
12071207
prog.as_slice(),
12081208
args.as_slice(),
12091209
env,
1210-
input).expect(format!("failed to exec `{}`", prog).as_slice());
1210+
input).expect(format!("failed to exec `{}`", prog));
12111211
dump_output(config, testfile, out.as_slice(), err.as_slice());
12121212
return ProcRes {
12131213
status: status,
@@ -1333,7 +1333,7 @@ fn _arm_exec_compiled_test(config: &Config,
13331333
],
13341334
vec!(("".to_string(), "".to_string())),
13351335
Some("".to_string()))
1336-
.expect(format!("failed to exec `{}`", config.adb_path).as_slice());
1336+
.expect(format!("failed to exec `{}`", config.adb_path));
13371337

13381338
if config.verbose {
13391339
println!("push ({}) {} {} {}",
@@ -1363,7 +1363,7 @@ fn _arm_exec_compiled_test(config: &Config,
13631363
config.adb_path.as_slice(),
13641364
runargs.as_slice(),
13651365
vec!(("".to_string(), "".to_string())), Some("".to_string()))
1366-
.expect(format!("failed to exec `{}`", config.adb_path).as_slice());
1366+
.expect(format!("failed to exec `{}`", config.adb_path));
13671367

13681368
// get exitcode of result
13691369
runargs = Vec::new();
@@ -1377,7 +1377,7 @@ fn _arm_exec_compiled_test(config: &Config,
13771377
runargs.as_slice(),
13781378
vec!(("".to_string(), "".to_string())),
13791379
Some("".to_string()))
1380-
.expect(format!("failed to exec `{}`", config.adb_path).as_slice());
1380+
.expect(format!("failed to exec `{}`", config.adb_path));
13811381

13821382
let mut exitcode: int = 0;
13831383
for c in exitcode_out.as_slice().chars() {
@@ -1400,7 +1400,7 @@ fn _arm_exec_compiled_test(config: &Config,
14001400
runargs.as_slice(),
14011401
vec!(("".to_string(), "".to_string())),
14021402
Some("".to_string()))
1403-
.expect(format!("failed to exec `{}`", config.adb_path).as_slice());
1403+
.expect(format!("failed to exec `{}`", config.adb_path));
14041404

14051405
// get stderr of result
14061406
runargs = Vec::new();
@@ -1414,7 +1414,7 @@ fn _arm_exec_compiled_test(config: &Config,
14141414
runargs.as_slice(),
14151415
vec!(("".to_string(), "".to_string())),
14161416
Some("".to_string()))
1417-
.expect(format!("failed to exec `{}`", config.adb_path).as_slice());
1417+
.expect(format!("failed to exec `{}`", config.adb_path));
14181418

14191419
dump_output(config,
14201420
testfile,
@@ -1448,7 +1448,7 @@ fn _arm_push_aux_shared_library(config: &Config, testfile: &Path) {
14481448
vec!(("".to_string(),
14491449
"".to_string())),
14501450
Some("".to_string()))
1451-
.expect(format!("failed to exec `{}`", config.adb_path).as_slice());
1451+
.expect(format!("failed to exec `{}`", config.adb_path));
14521452

14531453
if config.verbose {
14541454
println!("push ({}) {} {} {}",

branches/try/src/doc/guide-unsafe.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -213,14 +213,14 @@ pub struct Unique<T> {
213213
impl<T: Send> Unique<T> {
214214
pub fn new(value: T) -> Unique<T> {
215215
unsafe {
216-
let ptr = malloc(mem::size_of::<T>() as size_t) as *mut T;
216+
let ptr = malloc(std::mem::size_of::<T>() as size_t) as *mut T;
217217
// we *need* valid pointer.
218218
assert!(!ptr.is_null());
219219
// `*ptr` is uninitialized, and `*ptr = value` would
220220
// attempt to destroy it `overwrite` moves a value into
221221
// this memory without attempting to drop the original
222222
// value.
223-
ptr::write(&mut *ptr, value);
223+
mem::overwrite(&mut *ptr, value);
224224
Unique{ptr: ptr}
225225
}
226226
}

branches/try/src/doc/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ li {list-style-type: none; }
6161
* [The `time` library](time/index.html)
6262
* [The `uuid` 128-bit universally unique identifier library](uuid/index.html)
6363
* [The `url` library](url/index.html)
64+
* [The `workcache` library](workcache/index.html)
6465
* [The `log` library](log/index.html)
6566

6667
# Tooling

branches/try/src/doc/intro.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ and its implications on a task that programmers usually find very difficult: con
1818

1919
Ownership is central to Rust,
2020
and is the feature from which many of Rust's powerful capabilities are derived.
21-
"Ownership" refers to which parts of your code are allowed to read,
21+
"Ownership" refers to which parts of your code are allowed read,
2222
write, and ultimately release, memory.
2323
Let's start by looking at some C++ code:
2424

branches/try/src/liballoc/rc.rs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ use core::option::{Option, Some, None};
3333
use core::ptr;
3434
use core::ptr::RawPtr;
3535
use core::mem::{min_align_of, size_of};
36-
use core::fmt;
3736

3837
use heap::deallocate;
3938

@@ -179,12 +178,6 @@ impl<T: Ord> Ord for Rc<T> {
179178
fn cmp(&self, other: &Rc<T>) -> Ordering { (**self).cmp(&**other) }
180179
}
181180

182-
impl<T: fmt::Show> fmt::Show for Rc<T> {
183-
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
184-
(**self).fmt(f)
185-
}
186-
}
187-
188181
/// Weak reference to a reference-counted box
189182
#[unsafe_no_drop_flag]
190183
pub struct Weak<T> {

branches/try/src/libarena/lib.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ use std::intrinsics::{TyDesc, get_tydesc};
3636
use std::intrinsics;
3737
use std::mem;
3838
use std::num;
39-
use std::ptr;
39+
use std::ptr::read;
4040
use std::rc::Rc;
4141
use std::rt::heap::allocate;
4242

@@ -209,7 +209,7 @@ impl Arena {
209209
let ptr = self.alloc_copy_inner(mem::size_of::<T>(),
210210
mem::min_align_of::<T>());
211211
let ptr = ptr as *mut T;
212-
ptr::write(&mut (*ptr), op());
212+
mem::overwrite(&mut (*ptr), op());
213213
return &*ptr;
214214
}
215215
}
@@ -262,7 +262,7 @@ impl Arena {
262262
// has *not* been initialized yet.
263263
*ty_ptr = mem::transmute(tydesc);
264264
// Actually initialize it
265-
ptr::write(&mut(*ptr), op());
265+
mem::overwrite(&mut(*ptr), op());
266266
// Now that we are done, update the tydesc to indicate that
267267
// the object is there.
268268
*ty_ptr = bitpack_tydesc_ptr(tydesc, true);
@@ -360,7 +360,7 @@ impl<T> TypedArenaChunk<T> {
360360
let mut chunk = unsafe {
361361
let chunk = allocate(size, mem::min_align_of::<TypedArenaChunk<T>>());
362362
let mut chunk: Box<TypedArenaChunk<T>> = mem::transmute(chunk);
363-
ptr::write(&mut chunk.next, next);
363+
mem::overwrite(&mut chunk.next, next);
364364
chunk
365365
};
366366

@@ -376,7 +376,7 @@ impl<T> TypedArenaChunk<T> {
376376
if intrinsics::needs_drop::<T>() {
377377
let mut start = self.start();
378378
for _ in range(0, len) {
379-
ptr::read(start as *T); // run the destructor on the pointer
379+
read(start as *T); // run the destructor on the pointer
380380
start = start.offset(mem::size_of::<T>() as int)
381381
}
382382
}
@@ -442,7 +442,7 @@ impl<T> TypedArena<T> {
442442
}
443443

444444
let ptr: &'a mut T = mem::transmute(this.ptr);
445-
ptr::write(ptr, object);
445+
mem::overwrite(ptr, object);
446446
this.ptr = this.ptr.offset(1);
447447
let ptr: &'a T = ptr;
448448
ptr

branches/try/src/libcollections/priority_queue.rs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@
1313
#![allow(missing_doc)]
1414

1515
use std::clone::Clone;
16-
use std::mem::{zeroed, replace, swap};
17-
use std::ptr;
16+
use std::mem::{overwrite, zeroed, replace, swap};
1817
use std::slice;
1918

2019
/// A priority queue implemented with a binary heap
@@ -164,13 +163,13 @@ impl<T: Ord> PriorityQueue<T> {
164163
let parent = (pos - 1) >> 1;
165164
if new > *self.data.get(parent) {
166165
let x = replace(self.data.get_mut(parent), zeroed());
167-
ptr::write(self.data.get_mut(pos), x);
166+
overwrite(self.data.get_mut(pos), x);
168167
pos = parent;
169168
continue
170169
}
171170
break
172171
}
173-
ptr::write(self.data.get_mut(pos), new);
172+
overwrite(self.data.get_mut(pos), new);
174173
}
175174
}
176175

@@ -186,12 +185,12 @@ impl<T: Ord> PriorityQueue<T> {
186185
child = right;
187186
}
188187
let x = replace(self.data.get_mut(child), zeroed());
189-
ptr::write(self.data.get_mut(pos), x);
188+
overwrite(self.data.get_mut(pos), x);
190189
pos = child;
191190
child = 2 * pos + 1;
192191
}
193192

194-
ptr::write(self.data.get_mut(pos), new);
193+
overwrite(self.data.get_mut(pos), new);
195194
self.siftup(start, pos);
196195
}
197196
}

0 commit comments

Comments
 (0)