Niko Matsakis
2e4790ca06
Merge remote-tracking branch 'mozilla/incoming' into issue-5910-dyna-freeze
2013-05-06 16:10:31 -04:00
Brian Anderson
de8071234f
Move core::run tests of process killing into standalone run-pass tests
...
These cause valgrind errors in subprocesses. I don't *think* these errors
lead to actual test failures but they are very confusing.
2013-05-06 12:50:08 -07:00
Felix S. Klock II
1cbf0a84dc
Step one for 'proper' pub condition: support pub keyword in form.
2013-05-06 19:05:36 +02:00
Niko Matsakis
c50a9d5b66
Use rust_try_get_task for compat with new rt, and strenghten assumptions about borrow list
2013-05-06 11:18:59 -04:00
Niko Matsakis
2ea52a38e5
refinement to technique used to not run regionck
2013-05-06 09:00:37 -04:00
Brendan Zabarauskas
0e2242f6d6
Add assert_approx_eq! macro
2013-05-06 21:51:48 +10:00
Brendan Zabarauskas
0211833008
Move FuzzyEq trait into core::cmp and rename it to 'ApproxEq'
2013-05-06 21:51:07 +10:00
Alex Crichton
44c1e46ef5
Improve lifetimes on foldl/foldr and lift the Copy requirement
2013-05-06 02:21:01 -04:00
Brian Anderson
24de5bb649
core: Remove a call to breakpoint
from a test
...
These breakpoints make it difficult to debug coretest
2013-05-05 20:13:32 -07:00
Daniel Micay
66842c8576
mark Cell as non-Const with #[mutable]
2013-05-05 15:42:03 -04:00
Niko Matsakis
4300d4d2fa
Merge remote-tracking branch 'mozilla/incoming' into issue-5910-dyna-freeze
...
Conflicts:
src/libcore/core.rc
src/libcore/hashmap.rs
src/libcore/num/f32.rs
src/libcore/num/f64.rs
src/libcore/num/float.rs
src/libcore/num/int-template.rs
src/libcore/num/num.rs
src/libcore/num/strconv.rs
src/libcore/num/uint-template.rs
src/libcore/ops.rs
src/libcore/os.rs
src/libcore/prelude.rs
src/libcore/rt/mod.rs
src/libcore/unstable/lang.rs
src/librustc/driver/session.rs
src/librustc/middle/astencode.rs
src/librustc/middle/borrowck/check_loans.rs
src/librustc/middle/borrowck/gather_loans.rs
src/librustc/middle/borrowck/loan.rs
src/librustc/middle/borrowck/preserve.rs
src/librustc/middle/liveness.rs
src/librustc/middle/mem_categorization.rs
src/librustc/middle/region.rs
src/librustc/middle/trans/base.rs
src/librustc/middle/trans/inline.rs
src/librustc/middle/trans/reachable.rs
src/librustc/middle/typeck/check/_match.rs
src/librustc/middle/typeck/check/regionck.rs
src/librustc/util/ppaux.rs
src/libstd/arena.rs
src/libstd/ebml.rs
src/libstd/json.rs
src/libstd/serialize.rs
src/libstd/std.rc
src/libsyntax/ast_map.rs
src/libsyntax/parse/parser.rs
src/test/compile-fail/borrowck-uniq-via-box.rs
src/test/compile-fail/regions-infer-borrow-scope-within-loop.rs
src/test/run-pass/borrowck-nested-calls.rs
2013-05-05 15:11:04 -04:00
Niko Matsakis
0b0b8018a6
add warning for #6248 and remove instances of it
2013-05-05 12:17:59 -04:00
Niko Matsakis
6806900a7c
disable lang debug for perf
2013-05-05 07:43:43 -04:00
Brian Anderson
8081e8debf
Register snapshots
2013-05-04 15:43:51 -07:00
Niko Matsakis
bf2d3c71e3
improve DEBUG_BORROW printouts
2013-05-04 14:25:15 -04:00
Björn Steinbrink
e5ca35d567
Reduce code bloat from managed allocations
...
In commit d7f5e43 "core::rt: Add the local heap to newsched tasks",
local_malloc and local_free have become rather big and their forced
inlining causes quite a bit of code bloat. Compile times for crates
affected by the bloat (e.g. rustc) improve, while others (e.g. libstd)
seem to be unaffected, so I guess the inlining doesn't gain us much.
Sizes:
| librustc | libsytax
---------------|–-----------|------------
with inlining | 18,547,824 | 7,110,848
w/o inlining | 15,092,040 | 5,518,608
2013-05-04 18:21:27 +02:00
bors
1f65e4a1d5
auto merge of #6230 : thestinger/rust/whitespace, r=catamorphism
...
I just had `git apply` fix most of them and then did a quick skim over the diff to fix a few cases where it did the wrong thing (mostly replacing tabs with 4 spaces, when someone's editor had them at 8 spaces).
2013-05-04 00:48:37 -07:00
bors
a47e4cb22f
auto merge of #6229 : catamorphism/rust/warning-police, r=catamorphism
2013-05-03 23:48:36 -07:00
bors
c3ab74b8b9
auto merge of #6227 : graydon/rust/issue-6112-box-annihilator, r=graydon
...
during task annihilation, since it is easy to tread on freed memory.
2013-05-03 22:06:37 -07:00
Daniel Micay
86efd97a10
add gitattributes and fix whitespace issues
2013-05-03 20:01:42 -04:00
Tim Chevalier
5fb5a94118
core: Warning police
2013-05-03 16:56:33 -07:00
Tim Chevalier
4d4cabff9e
rustpkg: Implement install command
...
The install command should work now, though it only installs
in-place (anything else has to wait until I implement RUST_PATH).
Also including:
core: Add remove_directory_recursive, change copy_file
Make copy_file preserve permissions, and add a remove_directory_recursive
function.
2013-05-03 16:06:07 -07:00
Alex Crichton
24cda9fbc2
Remove pub from core::{unicode,cmath,stackwalk,rt}
2013-05-03 17:10:32 -04:00
Niko Matsakis
c15fa3a02a
Be more careful about the order in which we read the next field
...
during task annihilation, since it is easy to tread on freed memory.
2013-05-03 13:07:28 -07:00
bors
bfd3cd8171
auto merge of #6217 : Sodel-the-Vociferous/rust/export-ToBytes, r=graydon
2013-05-03 13:00:47 -07:00
Niko Matsakis
f3a6ea2643
lang: um, actually set locking bits! this code got lost.
2013-05-03 15:12:04 -04:00
bors
4332f8188b
auto merge of #6216 : Sodel-the-Vociferous/rust/dralston-6146, r=graydon
...
cc #6146
2013-05-03 11:33:38 -07:00
bors
9a31cdb9bf
auto merge of #6213 : kud1ing/rust/patch-1, r=graydon
...
...re/index.html
2013-05-03 10:21:37 -07:00
bors
79aeb529d5
auto merge of #6046 : brson/rust/io, r=graydon
...
r? @pcwalton
Sorry this is so big, and sorry the first commit is just titled 'wip'.
Some interesting bits
* [LocalServices](f9069baa70
) - This is the set of runtime capabilities that *all* Rust code should expect access to, including the local heap, GC, logging, unwinding.
* [impl Reader, etc. for Option](5fbb0949a5
) - Constructors like `File::open` return Option<FileStream>. This lets you write I/O code without ever unwrapping an option.
This series adds a lot of [documentation](https://github.com/brson/rust/blob/io/src/libcore/rt/io/mod.rs#L11 ) to `core::rt::io`.
2013-05-03 09:09:40 -07:00
bors
d9c7d0bc93
auto merge of #6185 : gifnksm/rust/prelude-from_str, r=graydon
...
`core::prelude` re-exports `core::to_str::ToStr`, but doesn't re-export `core::from_str::FromStr`.
That is inconsistent.
2013-05-03 08:15:38 -07:00
Niko Matsakis
34024353e8
Change borrow debugging so it is disabled by -O
2013-05-03 05:42:00 -04:00
Daniel Ralston
47050c499a
FIX: Export to_bytes::ToBytes
2013-05-03 02:25:02 -07:00
Daniel Ralston
02889f7507
Add core::cmp::Equiv to prelude
2013-05-03 01:22:52 -07:00
gifnksm
e34a7ecbab
Remove extra #[cfg(stage0)]
2013-05-03 15:57:05 +09:00
kud1ing
f45c6b878f
Add a brief description to show up in http://static.rust-lang.org/doc/core/index.html
2013-05-03 09:20:01 +03:00
Brian Anderson
6c478c7de8
Merge remote-tracking branch 'brson/io' into incoming
...
Conflicts:
mk/rt.mk
src/libcore/run.rs
2013-05-02 20:51:56 -07:00
bors
baa1c1834f
auto merge of #6140 : Dretch/rust/run-with-rust, r=brson
...
Even more of `core::run` could be rust-ified -- I believe that access to the C extern environ can be done with rust now. I did not do this because some special casing is needed for OSX and I don't have a mac I can test with.
I think this will also fix #6096 .
2013-05-02 19:15:36 -07:00
Brian Anderson
f8dffc6789
core: Wire up the unwinder to newsched again
...
This was some merge fallout
2013-05-02 19:13:56 -07:00
Niko Matsakis
cc62680cc9
free the borrow list propertly instead of crashing
2013-05-02 17:08:04 -04:00
gareth
bd979c1fbf
Fix some issues with test_destroy_actually_kills:
...
- it is now cross platform, instead of just unix
- it now avoids sleeping (fixing issue #6156 )
- it now calls force_destroy() when force = true (was a bug)
2013-05-02 21:19:12 +01:00
Niko Matsakis
88ec89d3fe
fix numerous dynamic borrow failures
2013-05-02 14:32:37 -04:00
bors
ec9c7c324e
auto merge of #6184 : kud1ing/rust/master, r=sanxiyn
2013-05-02 11:30:41 -07:00
gareth
23e97ae893
Remove errant trailing whitespace.
2013-05-02 19:26:52 +01:00
gareth
544ac620ba
Convert most of rust_run_program.cpp to rust (issue #2674 ).
2013-05-02 19:26:52 +01:00
bors
69316f06f6
auto merge of #6182 : huonw/rust/core-str-opts, r=nikomatsakis
...
This adds #[inline] to many very common string routines (e.g. `len`).
It also rewrites `repeat` to not use `+=` and make it O(n) rather than O(n^2), and also concat/connect(_slices) to reduce the overhead of reallocations, and constantly `set_len`ing (etc) in `push_str`. (The added complexity might not be worth the 20% speedup though.)
2013-05-02 09:18:37 -07:00
bors
326d9661b7
auto merge of #6177 : gifnksm/rust/iter-chain, r=thestinger
...
`T: Iterator<A>` and `U: Iterator<A>` should be able to `chain` whether `T` and `U` are same or not.
2013-05-02 06:15:37 -07:00
gifnksm
cff6aba76e
libcore: Export core::from_str::FromStr from core::prelude
2013-05-02 20:42:54 +09:00
kud1ing
18c46b8fd4
The following code was generated by "src/etc/unicode.py"
2013-05-02 13:38:39 +03:00
Huon Wilson
5714e2c11b
libcore: optimize string joining routines.
...
This makes concat/connect/connect_slices about 20% faster, and takes
`repeat` from O(n^2) to O(n), and lowers the constant factor.
2013-05-02 19:49:15 +10:00
Huon Wilson
afcb9e9d86
core: inlining on common functions
2013-05-02 18:03:43 +10:00