bors
fa91446b2b
auto merge of #11597 : sfackler/rust/err-enums, r=alexcrichton
...
An enum allows callers to deal with errors in a more reasonable way.
2014-01-16 07:06:58 -08:00
bors
f63a7f598a
auto merge of #11596 : derekchiang/rust/fix-libnative-docs, r=alexcrichton
2014-01-16 05:51:44 -08:00
bors
e6a27424ad
auto merge of #11590 : vadimcn/rust/llvm-tools, r=alexcrichton
...
Closes #10893 - because we'll no longer build llvm-c-test
2014-01-16 04:31:52 -08:00
bors
142ee5fc55
auto merge of #11588 : am0d/rust/dox, r=brson
...
This is a bit cleaner and means we don't need whitespace at the end of each line to force line breaks.
2014-01-16 03:06:48 -08:00
bors
6361c1dee5
auto merge of #11579 : kballard/rust/windows-path-join, r=erickt
...
WindowsPath::new("C:").join("a") produces r"C:". This is incorrect.
It should produce "C:a".
2014-01-16 00:51:44 -08:00
Steven Fackler
9fe5d1620c
Stop returning error strings in From{Base64,Hex}
...
An enum allows callers to deal with errors in a more reasonable way.
2014-01-15 23:15:04 -08:00
Derek Chiang
f98f76e3a7
Fixing a typo: bookeeping -> bookkeeping
2014-01-16 14:17:56 +08:00
bors
793f740c0a
auto merge of #11575 : pcwalton/rust/parse-substrs, r=alexcrichton
...
This was used by the quasiquoter.
r? @alexcrichton
2014-01-15 21:51:42 -08:00
bors
6708558c34
auto merge of #11548 : bjz/rust/bitwise, r=alexcrichton
...
One less trait in `std::num` and three less exported in the prelude.
cc. #10387
2014-01-15 20:36:48 -08:00
bors
bf2ab22cd0
auto merge of #11574 : neeee/rust/master, r=alexcrichton
...
Reverted according to https://github.com/mozilla/rust/issues/11458#issuecomment-32269477 . Fixes #11458 .
2014-01-15 19:06:45 -08:00
a_m0d
c6268384a6
Update docs index to use lists
...
Also include a missing link to the rustdoc manual
2014-01-15 20:54:34 -05:00
Vadim Chugunov
62fbd00bed
Only build LLVM tools Rust needs.
2014-01-15 17:47:48 -08:00
bors
a5ed0c58cb
auto merge of #11565 : mozilla/rust/snapshot, r=huonw
2014-01-15 17:46:42 -08:00
Brendan Zabarauskas
1dd6906db2
Merge Bitwise and BitCount traits and remove from prelude, along with Bounded
...
One less trait in std::num, and three less exported in the prelude.
2014-01-16 11:51:33 +11:00
bors
36971217aa
auto merge of #11568 : FlaPer87/rust/even, r=alexcrichton
...
This implementation should be a bit more optimal than calling `self.is_multiple_of(&2)`
2014-01-15 16:02:01 -08:00
bors
149fc76698
auto merge of #11550 : alexcrichton/rust/noinline, r=thestinger
...
The failure functions are generic, meaning they're candidates for getting
inlined across crates. This has been happening, leading to monstrosities like
that found in #11549 . I have verified that the codegen is *much* better now that
we're not inlining the failure path (the slow path).
2014-01-15 13:51:50 -08:00
Kevin Ballard
c57920b37b
path: Fix joining Windows path when the receiver is "C:"
...
WindowsPath::new("C:").join("a") produces r"C:\a". This is incorrect.
It should produce "C:a".
2014-01-15 12:53:56 -08:00
bors
7ce3386511
auto merge of #11112 : alexcrichton/rust/issue-11087, r=brson
...
This should allow callers to know whether the channel was empty or disconnected
without having to block.
Closes #11087
2014-01-15 12:37:00 -08:00
Alex Crichton
adb895a34f
Allow more "error" values in try_recv()
...
This should allow callers to know whether the channel was empty or disconnected
without having to block.
Closes #11087
2014-01-15 11:21:56 -08:00
bors
f60d937dd9
auto merge of #11543 : thestinger/rust/gc, r=cmr
...
This type isn't yet very useful since it only pretends cycles won't be
a problem. Anyone using it should be made aware that they're going to
leak.
2014-01-15 11:21:45 -08:00
Patrick Walton
ff6c0af15b
libsyntax: Remove the obsolete ability to parse from substrings.
...
This was used by the quasiquoter.
2014-01-15 10:59:48 -08:00
Flavio Percoco
515978d1bd
Use the least significant beat to determine if int/uint is even
2014-01-15 19:11:00 +01:00
bors
7cb2aa2429
auto merge of #11523 : alexcrichton/rust/stage3, r=brson
...
This should go back to the old behavior while preserving the snapshot ease.
2014-01-15 09:51:46 -08:00
lucy
3b32ea8c93
Revert "show options for -W help and -W". Fixes #11458 .
...
This reverts commit 1009c21ad7
.
2014-01-15 18:38:10 +01:00
Alex Crichton
7a37294acc
Add a configure to disable libstd version injection
...
We'll use this when building snapshots so we can upgrade freely, but all
compilers will inject a version by default.
2014-01-15 08:22:16 -08:00
bors
7232dbf768
auto merge of #11564 : am0d/rust/dox, r=huonw
...
Needs a line break here for readability.
2014-01-15 07:46:37 -08:00
bors
7bebdbd968
auto merge of #11561 : eddyb/rust/moar-inlines, r=pcwalton
2014-01-15 06:26:38 -08:00
Daniel Micay
29840addd4
remove the concept of managed-unique from libstd
...
Closes #11545
2014-01-15 08:22:59 -05:00
Daniel Micay
197fe67e11
register snapshots
2014-01-15 08:22:56 -05:00
bors
180ac0cc07
auto merge of #11556 : am0d/rust/docs, r=huonw
2014-01-15 05:01:47 -08:00
a_m0d
8e5f068d69
Fix formatting in rust-guide document.
2014-01-15 07:20:04 -05:00
bors
b549b08ca3
auto merge of #11557 : brson/rust/anotherandroidfix, r=thestinger
2014-01-15 03:36:43 -08:00
Eduard Burtescu
7ca3bea5bf
libstd: Added more #[inline] annotations and replaced uses of libc::abort
with the intrinsic.
2014-01-15 11:45:12 +02:00
bors
29070c3bee
auto merge of #11535 : thestinger/rust/header, r=alexcrichton
...
Unique pointers and vectors currently contain a reference counting
header when containing a managed pointer.
This `{ ref_count, type_desc, prev, next }` header is not necessary and
not a sensible foundation for tracing. It adds needless complexity to
library code and is responsible for breakage in places where the branch
has been left out.
The `borrow_offset` field can now be removed from `TyDesc` along with
the associated handling in the compiler.
Closes #9510
Closes #11533
2014-01-14 23:01:51 -08:00
Alex Crichton
86c60b68f9
Flag failure functions as inline(never)
...
The failure functions are generic, meaning they're candidates for getting
inlined across crates. This has been happening, leading to monstrosities like
that found in #11549 . I have verified that the codegen is *much* better now that
we're not inlining the failure path (the slow path).
2014-01-14 22:52:03 -08:00
bors
e063e96ec9
auto merge of #11547 : b1nd/rust/rust-doc, r=alexcrichton
...
closes #10535
2014-01-14 20:56:39 -08:00
Brian Anderson
6232290f73
extra: Ignore time tests on android correctly
2014-01-14 19:57:59 -08:00
a_m0d
e9c30ebaaf
Mark LineIterator as public so its docs get generated.
2014-01-14 22:13:54 -05:00
Daniel Micay
77758f0b5e
add implementation of Repr
for ~[T]
2014-01-14 22:01:44 -05:00
Daniel Micay
6809b172e0
remove borrow_offset
as ~ is now free of headers
2014-01-14 22:01:44 -05:00
Daniel Micay
0e885e42b1
remove reference counting headers from ~
...
Unique pointers and vectors currently contain a reference counting
header when containing a managed pointer.
This `{ ref_count, type_desc, prev, next }` header is not necessary and
not a sensible foundation for tracing. It adds needless complexity to
library code and is responsible for breakage in places where the branch
has been left out.
The `borrow_offset` field can now be removed from `TyDesc` along with
the associated handling in the compiler.
Closes #9510
Closes #11533
2014-01-14 22:01:40 -05:00
bors
e6d9214ee1
auto merge of #11546 : huonw/rust/trie-insert, r=alexcrichton
...
This reduces the number of moves/memcpy's we do, which makes insert
faster, especially in cases of keys with long equal prefixes (the
\_low_bits tests):
Before:
bench_insert_large ... bench: 553966 ns/iter (+/- 64050)
bench_insert_large_low_bits ... bench: 1048151 ns/iter (+/- 92484)
bench_insert_small ... bench: 168840 ns/iter (+/- 22410)
bench_insert_small_low_bits ... bench: 185069 ns/iter (+/- 38332)
After:
bench_insert_large ... bench: 422132 ns/iter (+/- 35112)
bench_insert_large_low_bits ... bench: 339083 ns/iter (+/- 34421)
bench_insert_small ... bench: 134539 ns/iter (+/- 15254)
bench_insert_small_low_bits ... bench: 88775 ns/iter (+/- 5746)
Notably: no unsafe code.
2014-01-14 18:56:36 -08:00
b1nd
431e2bb923
Removed redundant code, improve performance
...
closes #10535
2014-01-15 12:09:50 +11:00
Huon Wilson
e1ebdb8790
std::trie: optimise insert slightly.
...
This reduces the number of moves/memcpy's we do, which makes insert
faster, especially in cases of keys with long equal prefixes (the
_low_bits tests):
Before:
bench_insert_large ... bench: 553966 ns/iter (+/- 64050)
bench_insert_large_low_bits ... bench: 1048151 ns/iter (+/- 92484)
bench_insert_small ... bench: 168840 ns/iter (+/- 22410)
bench_insert_small_low_bits ... bench: 185069 ns/iter (+/- 38332)
After:
bench_insert_large ... bench: 422132 ns/iter (+/- 35112)
bench_insert_large_low_bits ... bench: 339083 ns/iter (+/- 34421)
bench_insert_small ... bench: 134539 ns/iter (+/- 15254)
bench_insert_small_low_bits ... bench: 88775 ns/iter (+/- 5746)
2014-01-15 12:03:21 +11:00
Huon Wilson
6b5e63ff2d
std::trie: add benchmarks for insert.
2014-01-15 11:32:53 +11:00
bors
dd8b011319
auto merge of #11521 : dguenther/rust/hide_libdir_relative, r=alexcrichton
...
Renamed `LIBDIR_RELATIVE` to `CFG_LIBDIR_RELATIVE`. It's not a configurable variable, but it looks out of place without the `CFG_` prefix.
Fixes #11420
2014-01-14 15:11:30 -08:00
Daniel Micay
f40d5b1050
add an experimental tag for Gc<T> due to cycles
...
This type isn't yet very useful since it only pretends cycles won't be
a problem. Anyone using it should be made aware that they're going to
leak.
2014-01-14 17:13:22 -05:00
Derek Guenther
a599d897fc
Renamed LIBDIR_RELATIVE to CFG_LIBDIR_RELATIVE
2014-01-14 15:52:57 -06:00
bors
faa0b5aa61
auto merge of #11538 : eddyb/rust/llvm-attributes, r=alexcrichton
2014-01-14 13:51:34 -08:00
bors
9075025c7b
auto merge of #11485 : eddyb/rust/sweep-old-rust, r=nikomatsakis
2014-01-14 12:32:11 -08:00