Commit Graph

11463 Commits

Author SHA1 Message Date
Kevin Cantu
134e5c85a2 Demode sort.rs 2012-09-01 13:08:20 -07:00
Kevin Cantu
b06599a7a8 Demode fun_treemap.rs 2012-09-01 13:08:20 -07:00
Kevin Cantu
bf430b7032 Confirm demode of map.rs and prettyprint.rs 2012-09-01 13:08:20 -07:00
Kevin Cantu
2d8b3471e7 Confirm demode of base64.rs 2012-09-01 13:08:20 -07:00
Kevin Cantu
36a04bdd85 Confirm demode of cell.rs 2012-09-01 13:08:20 -07:00
Kevin Cantu
2095aee71d Confirm demode of unicode.rs 2012-09-01 13:08:20 -07:00
Tim Chevalier
329281ebcc Remove type annotation that is no longer necessary
Closes #2617
2012-08-31 16:29:30 -07:00
Tim Chevalier
4128cc4cb4 Make utility funs in core::int, core::uint, etc. not by-reference
Closes #3302
2012-08-31 16:21:47 -07:00
Zack Corr
638db28c47 jit: Correct formatting and argv[0] for JITted programs 2012-08-31 16:20:36 -07:00
Zack Corr
efb576a60d jit: Clean rustllvm code, let rustc expose __morestack instead of linking in libmorestack and return _rust_main and call it from rustc 2012-08-31 16:20:36 -07:00
Brian Anderson
e27b8f7f02 Add JIT testing to compiletest with --jit 2012-08-31 16:20:36 -07:00
Brian Anderson
b999973c0f Add a morestack_addr (temporary) intrinsic 2012-08-31 16:20:36 -07:00
Zack Corr
a02ab41b65 jit: correct formatting 2012-08-31 16:20:36 -07:00
Zack Corr
6723a5a0ea jit: Forgot header for inlining pass 2012-08-31 16:20:36 -07:00
Zack Corr
19ea3ab480 jit: Add passes and cleanup code 2012-08-31 16:20:36 -07:00
Zack Corr
795acb7395 jit: Link in __morestack and make it resolvable by JIT 2012-08-31 16:20:36 -07:00
Zack Corr
7993f48209 jit: Add custom memory manager (still segfaulting) 2012-08-31 16:20:35 -07:00
Zack Corr
d7aa9918ef Add experimental JIT compiler 2012-08-31 16:20:35 -07:00
Brian Anderson
97bb812238 Add rust_annihilate_box to rustrt.def.in 2012-08-31 16:19:02 -07:00
Brian Anderson
e4a7c88450 Fix test case 2012-08-31 16:14:22 -07:00
Brian Anderson
a0de6b6d5f Merge remote-tracking branch 'erickt/incoming' 2012-08-31 16:14:18 -07:00
Lindsey Kuper
6d8d258f35 Tag things that have to do with default methods with issue #2794. 2012-08-31 19:09:01 -04:00
Graydon Hoare
5236a304c4 Fix check-fast. 2012-08-31 15:58:36 -07:00
Patrick Walton
5b4d5cee03 rustc: Make entire crates privileged scopes for the purposes of coherence 2012-08-31 15:14:15 -07:00
Elliott Slaughter
3b554c1e0c rt: Add tests for box annihilator. 2012-08-31 15:10:52 -07:00
Elliott Slaughter
f022f566a4 rt: Fix box annihilator to deallocate exchange heap boxes properly. 2012-08-31 15:10:52 -07:00
Elliott Slaughter
f8323ac615 rt: Add interface to box annihilator. 2012-08-31 15:10:52 -07:00
Brian Anderson
dbf6abf6bf std: Camel case net modules 2012-08-31 15:01:48 -07:00
Brian Anderson
afc1ccd282 Merge pull request #3308 from killerswan/modes7
Remove deprecated modes
2012-08-31 14:51:48 -07:00
Elliott Slaughter
3cd54ab1f2 Register snapshots. 2012-08-31 13:24:10 -07:00
Kevin Cantu
7d57b4864a Remove deprecated modes from list.rs (and temporarily delete list::push) 2012-08-31 12:55:39 -07:00
Kevin Cantu
34bf84649e Remove deprecated modes from rope.rs 2012-08-31 12:55:39 -07:00
Kevin Cantu
e2667fda87 Remove deprecated modes from dbg.rs 2012-08-31 12:55:39 -07:00
Kevin Cantu
2580040995 Remove deprecated modes from FuzzyEq in cmp.rs
This commit may require changes to the following Servo files:
 * rust-geom/matrix.rs
 * servo/platform/osmain.rs
 * rust-layers/layers.rs
 * rust-geom/matrix.rs
2012-08-31 12:55:39 -07:00
Patrick Walton
340a219290 libsyntax: Get "extern mod foo;" working in .rc files 2012-08-31 11:46:04 -07:00
Patrick Walton
6e7d5e1cbd rustc: Implement "use mod" 2012-08-31 11:20:50 -07:00
Graydon Hoare
28b1473f84 Fix anon-extern-mod pretty print test. 2012-08-31 10:30:32 -07:00
Kevin Cantu
cf386188c8 Various JSON pretty printing tweaks 2012-08-31 07:11:07 -07:00
Kevin Cantu
4fb675be2f Fix JSON parsing of unicode escapes 2012-08-31 07:11:07 -07:00
Kevin Cantu
272c5ab0e9 Pretty print JSON: sorting object keys 2012-08-31 07:11:07 -07:00
Kevin Cantu
d47cb101bf Pretty print JSON: indentation and newlines 2012-08-31 07:11:06 -07:00
Erick Tryzelaar
5c6be13b29 libcore: add result::unwrap_err. 2012-08-30 21:11:28 -07:00
Erick Tryzelaar
7649860339 libcore: result::unwrap should use moves 2012-08-30 21:11:28 -07:00
Erick Tryzelaar
afeaf7d88c libcore: fix a typo 2012-08-30 21:11:27 -07:00
Erick Tryzelaar
c0f357924d libcore: vec::u8::hash is pure. 2012-08-30 20:40:52 -07:00
Erick Tryzelaar
628b946186 libcore: rewrite str::reserve in pure rust. 2012-08-30 20:40:52 -07:00
Erick Tryzelaar
9074d9b581 libcore: rewrite io::MemBuffer.write to use memcpy (#2004) 2012-08-30 20:40:52 -07:00
Erick Tryzelaar
7bb65848a1 libcore: Rewrite str::unsafe::push_byte in pure rust. 2012-08-30 20:40:52 -07:00
Erick Tryzelaar
94c3975a9a libcore: str::push_char should use str::unsafe::set_len. 2012-08-30 20:40:52 -07:00
Erick Tryzelaar
0e1a4a4da2 libcore: rewrite vec::unsafe::from_buf in pure rust 2012-08-30 20:40:52 -07:00
Graydon Hoare
536cb90a21 Migrate core::send_map to random, keyed hashes w/ hash::Hash trait. 2012-08-30 19:05:54 -07:00
Graydon Hoare
3462bb6a46 Fix some more test breakage. 2012-08-30 19:05:54 -07:00
Patrick Walton
f74014b0e7 test: Fix compile-fail tests 2012-08-30 17:13:35 -07:00
Patrick Walton
4846affedb rustc: "extern mod { ... }" should be written "extern { ... }" instead 2012-08-30 17:10:07 -07:00
Graydon Hoare
c3ac0f8fd9 Fix auto_serialize test. 2012-08-30 16:27:31 -07:00
Graydon Hoare
11871b8baa Fix json test. 2012-08-30 16:27:31 -07:00
Graydon Hoare
54a8d69c4f Change str : Eq to use memcmp. 2012-08-30 16:27:31 -07:00
Patrick Walton
7fec8419f3 test: Add a test for unused constants in foreign modules 2012-08-30 16:10:50 -07:00
Patrick Walton
1f056eda8e rustc: Make the compiler no longer ICE on unused foreign constants 2012-08-30 16:08:58 -07:00
Brian Anderson
65b05a6ce8 Bump version to 0.4 2012-08-30 14:05:59 -07:00
Graydon Hoare
bb8a510113 Add an impl path::WindowsPath : Eq. 2012-08-30 13:22:31 -07:00
Graydon Hoare
2d31c2afc4 Fix another Eq missing case. 2012-08-30 13:10:36 -07:00
Graydon Hoare
a9619306a5 Start moving core::hash to support a Hash trait. Add to_bytes::IterBytes trait. 2012-08-30 12:38:28 -07:00
Patrick Walton
ab53819a2c libstd: Fix another std test 2012-08-30 12:25:48 -07:00
Patrick Walton
5c721bd810 libstd: More test fixes 2012-08-30 12:15:53 -07:00
Patrick Walton
470a301467 libcore: Fix test issues harder 2012-08-30 11:02:13 -07:00
Patrick Walton
27576af73e libcore: Fix test issues 2012-08-30 10:42:48 -07:00
Patrick Walton
9518fc79ea cargo: Fix some lack of knowledge of basic algebraic identities 2012-08-30 10:39:28 -07:00
Patrick Walton
45e46f5fc0 libcore: Add missing unit.rs 2012-08-30 10:14:54 -07:00
Patrick Walton
a1c11cab2d rustc: Make <=, >=, and > use traits as well 2012-08-29 19:23:15 -07:00
Patrick Walton
70d3633c0b libstd: Fix some build breakage 2012-08-29 18:29:21 -07:00
Patrick Walton
59bdd8bde6 libcore: Fix build breakage 2012-08-29 18:27:26 -07:00
Patrick Walton
96534365c2 rustc: Make < and = into traits 2012-08-29 18:25:22 -07:00
Brian Anderson
94720fcea7 std: More camel casing 2012-08-29 17:44:29 -07:00
Brian Anderson
d8b34b2af8 Fix breakage 2012-08-29 16:56:04 -07:00
Brian Anderson
c0c8d3aa8f core: Demode int/uint mods 2012-08-29 16:23:36 -07:00
Brian Anderson
ee2ce036cc Camel case more std types 2012-08-29 16:09:50 -07:00
Brian Anderson
aab4d6b8d7 std: Camel case some constructors 2012-08-29 15:34:38 -07:00
Brian Anderson
8aca44ee0c core: Don't normalize paths by default. Add a normalize method 2012-08-29 14:28:37 -07:00
Brian Anderson
fd12188c07 core: Export sys::Closure 2012-08-29 14:05:27 -07:00
Brian Anderson
6e20ffeb8d Add sys::Closure type 2012-08-29 14:04:22 -07:00
Jed Davis
3e4b55807d Add vec::truncate, for efficiently shortening a vector. 2012-08-29 13:46:49 -07:00
Graydon Hoare
5eef15df12 Rename resolve3 -> resolve. 2012-08-29 13:26:52 -07:00
Graydon Hoare
6d22a805d7 Replace core::path with contents of core::path2. Back to one path module. 2012-08-29 13:26:51 -07:00
Tim Chevalier
cb8ecd7984 Allow extern mods to be anonymous
extern mod {
  f();
}

is now allowed, and puts f in the enclosing scope. (Requires a
link_name attribute to be really useful...)
2012-08-29 12:22:05 -07:00
Graydon Hoare
cdcf5a7580 Merge pull request #3299 from jld/mz-forceinline
Fix MZ_FORCEINLINE define to work with GCC 4.7.1.
2012-08-29 10:31:17 -07:00
Niko Matsakis
75201cdc04 vtable.rs: adjust formatting, correct build error 2012-08-29 06:07:17 -07:00
Niko Matsakis
e9ac7489b5 Refactor representation of borrowing so that it is tracked by fn_ctxt and not infer 2012-08-29 05:27:43 -07:00
Jed Davis
b043349833 Fix MZ_FORCEINLINE define to work with GCC 4.7.1.
Using just __always_inline__ without inline results in several instances
of "error: always_inline function might not be inlinable".
2012-08-29 01:18:00 -07:00
Erick Tryzelaar
e398a72c42 libcore: fix a typo exporting Err. 2012-08-28 20:16:21 -07:00
Tim Chevalier
06675caa42 Comment the default case in typeck::check::vtable::lookup_vtable copiously
Try to save the next person who looks at this code the heartbreak that I
went through.
2012-08-28 19:51:11 -07:00
Tim Chevalier
a70e37b214 In ty::impl_traits, treat structs properly
Treat structs just like impls: use their associated list of
trait refs to get the list of traits that one of them implements.
I don't understand what was happening before, but it was wrong.

Closes #2936
2012-08-28 19:51:11 -07:00
Niko Matsakis
a19dce6c16 correct name of SendMap trait 2012-08-28 19:10:44 -07:00
Ben Striegel
a605fd0cad CamelCasify lots of std 2012-08-28 18:52:44 -07:00
Graydon Hoare
ecb646477b Add lint modes for uses of @ and ~ pointers, in general. 2012-08-28 18:25:41 -07:00
Graydon Hoare
b769e29680 Compress metadata section. Seems a minor speed win, major space win. 2012-08-28 14:50:39 -07:00
Brian Anderson
31bbcf0267 Import Result, Ok, and Err by default. Closes #3287 2012-08-28 14:49:49 -07:00
Brian Anderson
cfbc7cbdc7 Convert core::pipes to camel case 2012-08-28 14:33:18 -07:00
Niko Matsakis
e9b7ce6f57 refactor send_map impl to be based on structs 2012-08-28 12:00:42 -07:00
Elliott Slaughter
0031617f30 rustc: Add cfg(gc) and cfg(nogc).
Needed in libcore to determine whether core::gc is being compiled with
GC on or not, which then affects various safety checks to avoid
collecting memory the GC is itself using.
2012-08-28 11:05:32 -07:00
Brian Anderson
adf9fa229f Fix a test that mysteriously resolves correctly when not check-fasting 2012-08-28 10:58:16 -07:00
Jed Davis
c5528198ab De-abstract std::sort:qsort3, which uses only the trait-based lt/eq.
quick_sort3 was converted from fn parameters to traits in d9cdddeb, but
was still passing around closures over core::cmp::{eq,lt} internally,
and LLVM doesn't and/or can't pick up that they're effectively constant.

Reduces time spent to sort a large random ~[uint] by 16% in my testing.
2012-08-28 06:37:06 -07:00
Niko Matsakis
206edf66c9 make rand code use slices 2012-08-27 19:56:42 -07:00
Niko Matsakis
0a01d82f6f preliminary work on making future's sendable
also various improvements to the ptr casting fns:
- rename assimilate() to to_unsafe_ptr() (fixes #3110)
- introduce `unsafe::copy_lifetime()` to copy the lifetime from one ptr to another
2012-08-27 19:56:16 -07:00
Patrick Walton
ff513b1bcd libcore: Replace a bunch of "== None" with ".is_none()".
Generally, "== None" calls into the shape glue, and it's also more useful.
2012-08-27 17:49:35 -07:00
Patrick Walton
f2dcd7663a libcore: Use is_none() in pipes 2012-08-27 17:43:15 -07:00
Patrick Walton
303e105677 libcore: Fix equality for pointers... again 2012-08-27 17:42:47 -07:00
Patrick Walton
32b13ce2ce libcore: Fix signature of the impl for *T 2012-08-27 17:37:41 -07:00
Patrick Walton
daf10a2a6c libcore: Fix a use of the shape glue in TLS 2012-08-27 17:37:31 -07:00
Patrick Walton
9c04454e7b libcore: Implement equality for pointers 2012-08-27 17:33:22 -07:00
Patrick Walton
5792244d03 rustc: Implement equality for option types 2012-08-27 17:24:50 -07:00
Brian Anderson
161a82e433 Camel case various core constructors 2012-08-27 17:22:18 -07:00
Kevin Cantu
4ba9fdd362 Remove deprecated modes from libstd/getopts.rs 2012-08-27 17:17:10 -07:00
Patrick Walton
0e5a0e1da5 libcore: Implement equality and ordering on vectors 2012-08-27 17:16:41 -07:00
Graydon Hoare
88e0476bd0 Add some counters to metadata. 2012-08-27 16:59:30 -07:00
Graydon Hoare
9fafb63d5e Turn off the verbose-mode of ebml. 2012-08-27 16:59:30 -07:00
Patrick Walton
060609cd56 libcore: Implement Eq for string types 2012-08-27 16:57:20 -07:00
Patrick Walton
381a628c4c libcore: Fix build harder 2012-08-27 15:44:44 -07:00
Brian Anderson
1cd97ee47d Mark intrinsic::tydesc with #[allow(non_camel_case_types)] 2012-08-27 15:06:46 -07:00
Patrick Walton
180202fa4d libcore: Fix core test 2012-08-27 15:04:47 -07:00
Brian Anderson
0c6e470a25 Convert core::result to camel case 2012-08-27 14:37:04 -07:00
Patrick Walton
3a1582012e libcore: Implement ord and eq language items 2012-08-27 14:27:43 -07:00
Patrick Walton
2bb056f4ab rustc: Avoid an allocation on every GEPi 2012-08-27 14:27:42 -07:00
Niko Matsakis
8453097dd5 remove ipv4 match which looks like it was... purposeless 2012-08-27 14:10:55 -07:00
Niko Matsakis
6d788198d7 fix a few remaining unused pattern binding warnings 2012-08-27 14:10:55 -07:00
Erick Tryzelaar
3e6ddf72ba rustc: make sure to import shr. 2012-08-27 14:10:55 -07:00
Erick Tryzelaar
ad19609dbc rustc: Fix typo in variant name 2012-08-27 14:10:55 -07:00
Erick Tryzelaar
c83ab4bcb8 rustc: import vstore_uniq 2012-08-27 14:10:55 -07:00
Erick Tryzelaar
65bd46c8a5 rustc: more pattern cleanup 2012-08-27 14:10:54 -07:00
Erick Tryzelaar
5ce5ee86bc rustc: fix the unused pattern vars warnings. 2012-08-27 14:10:54 -07:00
Erick Tryzelaar
1dc92d44be libcore: fix indention. 2012-08-27 14:10:54 -07:00
Graydon Hoare
5d56da1678 Convert over some residual uses of #oldmacros. 2012-08-27 13:54:12 -07:00
Elliott Slaughter
38fee9526a rustc: When landing pads are off, avoid skipping cleanup code.
This forces various things to be created (e.g. drop glue), and also
happens to be necessary for GC liveness to recognize cleanups as
roots.
2012-08-27 12:48:35 -07:00
Elliott Slaughter
5593add3a8 rustc: Break cyclical dependence between emit_tydescs and gen_shape_tables.
Force all tydescs to be emitted before emit_tydescs to avoid linker
failures.
2012-08-27 12:48:35 -07:00
Niko Matsakis
785c524d3e change to 4-space indents everywhere 2012-08-27 11:54:22 -07:00
Ben Blum
a831726b94 Fix region-related unsafety in arc::get's signature 2012-08-27 14:03:23 -04:00
Ben Blum
330311658f fix bench test for arc::arc camelcase 2012-08-26 22:15:10 -04:00
Ben Blum
61249da53a convert std::arc tests to use camel case ARCs 2012-08-26 21:51:18 -04:00
Ben Blum
09ae370c62 convert std::arc types to camelcase 2012-08-26 21:28:36 -04:00
Ben Blum
5dadee1ee7 minor core/std cleanup 2012-08-26 21:17:39 -04:00
Ben Blum
edd6d9ea37 convert std::sync types to camelcase 2012-08-26 21:17:36 -04:00
Ben Blum
cf1d2a7fef vim - camel-case the non builtin types 2012-08-26 20:45:04 -04:00
Brian Anderson
8337fa1a54 Camel case the option type 2012-08-26 15:56:16 -07:00
Brian Anderson
d9a6a63653 Fix build breakage 2012-08-26 13:51:10 -07:00
Patrick Walton
77b8144295 libcore: Implement result::get_ref.
This can be more efficient than unwrapping for large structural
types.
2012-08-26 11:50:21 -07:00
Patrick Walton
62be878ed1 rustc: Use memmove in unsafe::reinterpret_cast (issue #3025).
This was causing a bunch of structural copies, which when inlined
was leading to enormous register pressure. Often this is seen in
code which makes use of result::unwrap.
2012-08-26 11:25:53 -07:00
Patrick Walton
ff9151fa55 rustc: Use memset when zeroing allocas out (issue #3025).
Previously, LLVM was generating a ton of byte-by-byte copies,
leading to huge numbers of vregs and bloating the code. Now, using
memset, the code becomes a nice series of SSE moves instead.
2012-08-26 10:50:06 -07:00
Patrick Walton
db71ff3eb6 libcore: Add some methods to make working with string slices easier 2012-08-25 23:13:50 -07:00
Patrick Walton
80429dd7bd rustc: Add some more debugging to vtable 2012-08-25 23:13:50 -07:00
Brian Anderson
0de379fdf0 Merge pull request #3282 from killerswan/modes5
Removing more deprecated modes
2012-08-25 18:56:07 -07:00
Patrick Walton
ed1ab9a598 libstd: Don't make task-local GC data when creating TCP streams.
This exposed an ICE in a test; it's commented out for now.
2012-08-25 18:43:38 -07:00
Patrick Walton
7d86429415 libcore: Add an implementation of to_str for &str.
It duplicates the string.
2012-08-25 18:43:38 -07:00
Brian Anderson
09df8f1abf Fix more unused variable warnings 2012-08-25 18:38:21 -07:00
Brian Anderson
0cece20ea5 Fix some unused variable warnings 2012-08-25 18:19:54 -07:00
Tim Chevalier
7fb5f41bac Update test for new struct field syntax (fixes build breakage) 2012-08-25 17:54:17 -07:00
Tim Chevalier
6d3d4b9040 Merge pull request #3278 from erickt/incoming
A couple minor cleanups
2012-08-25 17:22:01 -07:00
Patrick Walton
d77acf7d07 libsyntax: Accept ',' to separate struct fields. Closes #3263. 2012-08-25 16:06:35 -07:00
Kevin Cantu
4f326dd650 Remove deprecated modes from SHA1 and MD4 in libstd 2012-08-25 15:28:57 -07:00
Kevin Cantu
b26084475c Remove deprecated modes from libstd/timer.rs 2012-08-25 15:28:57 -07:00
Patrick Walton
8ef4551904 rustc: Implement foreign constants.
This is needed for a lot of Apple libraries, as Apple tends to put a lot of
globals in dynamic libraries.
2012-08-25 15:09:33 -07:00
Erick Tryzelaar
dab3339971 libstd: Suppress warning about unused variable in net_tcp. 2012-08-25 12:22:44 -07:00
Erick Tryzelaar
f2f0ac9fe0 libstd: serialization should use &strs. 2012-08-25 12:22:44 -07:00
Tim Chevalier
bb5c07922f Add test case for #2356 2012-08-25 09:15:32 -07:00
Tim Chevalier
33ba097069 Add backquotes to error message 2012-08-25 09:15:26 -07:00
Vincent Belliard
bdbedb9d35 implements issue #2356 2012-08-25 17:01:52 +02:00
Ben Blum
6277046fa0 Add either::unwrap_{left,right} 2012-08-25 03:07:30 -04:00
Ben Blum
4cfb92f459 Use region variance to remove a bunch of unsafety in sync/arc (#2282) 2012-08-25 03:07:30 -04:00
Ben Blum
8d00603d78 Use less move_it in pipes and future (all but one use) 2012-08-25 03:07:30 -04:00
Ben Blum
6cf2f89452 Implement option::unwrap safely...! 2012-08-25 03:07:30 -04:00
Tim Chevalier
bed37a1dc9 Reset src/llvm to what it was (not sure what happened here) 2012-08-25 00:04:33 -07:00
Michael Sullivan
1ce7902a41 Add a Buildable interface for constructing general sequences. Work on #2921. 2012-08-24 22:56:05 -07:00
Michael Sullivan
c87e9a5815 Get rid of the unseemly reinterpret_casts in build_sized implementations. Closes #3272. 2012-08-24 22:56:05 -07:00
Michael Sullivan
b2aeb31451 Register snapshots. 2012-08-24 22:56:05 -07:00
Tim Chevalier
5e22fb9c7f Remove match check 2012-08-24 22:28:12 -07:00
Tim Chevalier
c7a3d0eb58 Remove one last match check, in send_map 2012-08-24 21:35:35 -07:00
Tim Chevalier
0dad78e03d Eliminate match checks in trans and typeck 2012-08-24 20:45:30 -07:00
Paul Stansifer
18180fd5da "earley_parser" -> "macro_parser" Let's be less confusing. 2012-08-24 18:20:17 -07:00
Paul Stansifer
e54acbf848 Document the macro parser a little more. 2012-08-24 18:20:17 -07:00
Michael Sullivan
90812c143d Rework method lookup to properly handle self types for non impl matches. Closes #3268. Closes #3274. 2012-08-24 17:57:41 -07:00
Michael Sullivan
6a56212649 A bunch of code refactoring in method matching. 2012-08-24 17:57:41 -07:00
Michael Sullivan
cf62433f43 Comments only: fix a comment in method resolution. 2012-08-24 17:57:41 -07:00
Ben Blum
01866fae4e Document task shutdown protocol and justify its concurrency safety. Close #2696. Close bblum's internship. 2012-08-24 19:59:03 -04:00
Graydon Hoare
5ebea76394 Fix a curious failure not seen during testing. 2012-08-24 16:39:16 -07:00
Graydon Hoare
23deed12ce Merge pull request #3269 from killerswan/modes3
Remove deprecated modes from libstd/time.rs
2012-08-24 16:08:38 -07:00
Graydon Hoare
c284b8b1dc Start using core::path2::Path in a lot of places. 2012-08-24 15:51:16 -07:00
Niko Matsakis
a8f1bee457 fix some unused pattern binding warnings 2012-08-24 15:37:21 -07:00
Ben Blum
5ba7434cb1 Avoid lifecycle_lock traffic in call_on_rust_stack. (close #3270) 2012-08-24 18:28:26 -04:00
Michael Sullivan
e55c5ceac2 Infer purity for || style closures. Closes #3023. 2012-08-24 14:21:27 -07:00
Michael Sullivan
b5dd01eb2a Add a bunch more unsafe blocks to prepare for the new semantics of unsafe/closure interactions. 2012-08-24 14:21:26 -07:00
Michael Sullivan
2c96a43cf1 Get rid of the unsafe hacks in resolve3. Closes #3267. 2012-08-24 14:21:26 -07:00
Elliott Slaughter
7706262a73 rustc: Add flag for enabling GC. 2012-08-24 14:01:27 -07:00
Elliott Slaughter
30768d3609 rustc: Don't emit metadata for default and GC box addrspaces. 2012-08-24 14:01:27 -07:00
Elliott Slaughter
2189f21d30 llvm: Update LLVM for addrspaces. 2012-08-24 14:01:27 -07:00
Elliott Slaughter
e68db3ad3c rustc: Fix for updated macro syntax. 2012-08-24 14:01:26 -07:00
Elliott Slaughter
a7a74c79fa rustc: Emit index of tydescs by addrspace. 2012-08-24 14:01:26 -07:00
Elliott Slaughter
c2e99ba826 rustc: Root resources with addrspaces. 2012-08-24 14:01:26 -07:00
Elliott Slaughter
c8daf2ac16 llvm: Update LLVM for liveness fixes. 2012-08-24 14:01:18 -07:00
Ben Blum
d09fd6561f Add a compile-fail test for #3255 2012-08-24 16:43:03 -04:00
Ben Blum
37bcd67a09 Enforce copyability in bind_by_value match arms (fix #3255) 2012-08-24 16:43:03 -04:00
Niko Matsakis
e47d2f6060 extend liveness to treat bindings more like other variables
This results in a lot of warnings in rustc.  I left them in because
many are bugs and we should fix our code, but Graydon asked that
I not touch every file in the codebase.
2012-08-24 12:55:08 -07:00
Paul Stansifer
aa024acae3 Use a faked-up function as a key, because functions aren't identical cross-crate in Windows. 2012-08-24 12:20:06 -07:00
Kevin Cantu
2dc9be7a14 Remove deprecated modes from libstd/time.rs
I've changed the unique string arguments to slices, and internally use
references to tm enums.  These changes are self-contained and so likely
don't step on any of @graydon's feet for a change!
2012-08-24 12:18:32 -07:00
Michael Sullivan
0f996f70a6 Remove purity from fn_decl and move it out to containing AST elements. 2012-08-23 19:40:01 -07:00
Ben Blum
34886ed488 Add a test case for helpful errors when copying into closures (#2942) 2012-08-23 22:20:34 -04:00
Ben Blum
673d0d83cf Less confusing error message when copying into heap closures (close #2942) 2012-08-23 22:07:56 -04:00
Niko Matsakis
d320848bf7 wrap long line 2012-08-23 18:56:56 -07:00
Niko Matsakis
a08f3a7d4d More complete fix to #3162 (borrowck bug related to access to rec fields) 2012-08-23 18:54:08 -07:00
Patrick Walton
83e7c869bd libcore: Add from_buf_len_nocopy 2012-08-23 18:10:16 -07:00
Ben Blum
dcbeebc801 Make vec::zip not require T:copy (close #3254) 2012-08-23 21:09:57 -04:00
Ben Blum
79266c614d remove a print in msgsend-ring-rw-arcs 2012-08-23 21:09:57 -04:00
Ben Blum
f7f909a8cf vim - fix indent rules, hilight format strings, some keywords 2012-08-23 21:09:57 -04:00
Niko Matsakis
5ccf8175a8 don't consider use of @fn to be region-param'd 2012-08-23 17:55:04 -07:00
Erick Tryzelaar
bf0ea66dac libcore: update bytes/str reader to work with regions.
This optimizes away a copy.
2012-08-23 17:42:50 -07:00
Tim Chevalier
6b6bea9531 Add boolean constants as part of const_eval
Doesn't exactly eliminate a match check, but simplifies the logic a bit
2012-08-23 17:22:08 -07:00
Tim Chevalier
80d129aa45 Parenthesize unary move exprs in prettyprinter
Closes #3220
2012-08-23 16:59:05 -07:00
Niko Matsakis
5eea7d6e61 don't infer region paramaterization for ids in a bound context 2012-08-23 16:22:23 -07:00
Tim Chevalier
89222646f4 Remove match checks in rustdoc 2012-08-23 15:46:59 -07:00
Tim Chevalier
9f591319dd Rename str::bytes to str::to_bytes
Closes #3245
2012-08-23 15:46:10 -07:00
Tim Chevalier
e9622f09aa Remove match check from test cases 2012-08-23 15:12:02 -07:00
Ben Blum
01a5845db5 fix atomic intrinsic test cases 2012-08-23 17:19:35 -04:00
Ben Blum
caceac06ce Remove old-moded atomic intrinsics (#3200) 2012-08-23 16:54:25 -04:00
Ben Blum
c47342e7c2 Convert pipes to new atomic intrinsics 2012-08-23 16:54:25 -04:00
Michael Sullivan
dc107898b2 Fix logging code to not sign extend chars being printed in hex. 2012-08-23 12:48:08 -07:00
Niko Matsakis
3cf74564b8 update liveness to camel-cased conventions, silence warnings 2012-08-23 12:38:18 -07:00
Paul Stansifer
129c4b694b Give a special error message when [de]serializing fails because the interner isn't in TLS yet. 2012-08-23 11:47:35 -07:00
Paul Stansifer
89bbaff84f m1!{...} is now forbidden. Use m1!(...) instead. 2012-08-23 11:14:15 -07:00
Paul Stansifer
11b640d990 Pretty-print macros with () instead of {}. 2012-08-23 11:14:15 -07:00
Paul Stansifer
77e83d83a9 Change calls of proto! to use parens. 2012-08-23 11:14:15 -07:00
Paul Stansifer
c74a442e86 Eliminate some extraneous curly brackets inside invocations of macro_rules!. 2012-08-23 11:14:14 -07:00
Paul Stansifer
38891b91bf Update invocation syntax for macro_rules! 2012-08-23 11:14:14 -07:00
Paul Stansifer
29f32b4a72 m1!{...} -> m1!(...) 2012-08-23 11:14:14 -07:00
Michael Sullivan
226fd87199 Make a bunch more of the iteration functions/methods marked pure. Closes #3253. 2012-08-23 10:22:33 -07:00
Michael Sullivan
0f0a9775ba Some error message cleanup in check.rs. 2012-08-23 10:21:35 -07:00
Ben Blum
5d5cfcc005 Merge pull request #3258 from erickt/serialization
Fixing serialization no-implicit-copies warnings, and other misc cleanup
2012-08-23 09:37:21 -07:00
Niko Matsakis
511e7626ae Infer variance of types with respect to the region parameter.
A similar approach could be used for type parameters.

Fixes #2282.
2012-08-23 06:30:43 -07:00
Niko Matsakis
8185ede1fa convert send_map to use explicit self 2012-08-22 21:14:32 -07:00
Tim Chevalier
c8ce32e7f4 Represent "item families" in the decoder as an enum
This eliminates some match checks. Also get rid of other match checks
in metadata code.
2012-08-22 20:32:09 -07:00
Niko Matsakis
b3b1c3bf4d correct linux snapshots (sorry) 2012-08-22 20:21:03 -07:00
Niko Matsakis
822b2bb2c4 register new snapshot 2012-08-22 20:00:15 -07:00
Ben Blum
fe2566777d Use swap_remove in pipes::select(). Close #3219. 2012-08-22 22:20:42 -04:00
Ben Blum
20773f33f5 Add vec::swap_remove (#3219) 2012-08-22 22:20:42 -04:00
Erick Tryzelaar
d8988fe220 libstd: fix serialization no-implicit-copies warnings 2012-08-22 19:10:29 -07:00
Erick Tryzelaar
007e47d710 libstd: switch ebml's wr_tagged_str to use str::byte_slice 2012-08-22 19:10:28 -07:00
Erick Tryzelaar
cfa71a135b rustc: add all the pretty printer modes to error message 2012-08-22 19:10:28 -07:00
Brian Anderson
4ef1d9d5b5 rustc: Remove typestate source 2012-08-22 18:33:19 -07:00
Ben Blum
95bc9d4aef export unwrap_arc functions in core/std 2012-08-22 21:16:35 -04:00
Ben Blum
9f0b3e3164 remove a debug print statement moving out of enums 2012-08-22 21:16:34 -04:00
Tim Chevalier
f61bbe2709 Dead code elimination 2012-08-22 17:52:27 -07:00
Ben Blum
49c1bd7e86 WIP: Add an xfailed test for bind-by-move (#2329) 2012-08-22 20:40:25 -04:00
Ben Blum
37962288ec Compile moving out of enums (#2329) 2012-08-22 20:40:25 -04:00
Ben Blum
e5fb58e6c0 Add compile-fail tests for unsound moving out of enums (#2329) 2012-08-22 20:40:25 -04:00
Ben Blum
5b25fc918a Parse and typecheck moving out of enums (#2329) 2012-08-22 20:40:25 -04:00
Tim Chevalier
1b804ce343 Merge find_linkage_attrs with find_linkage_metas
This gets rid of a gratuitous `match check`.
2012-08-22 16:43:23 -07:00
Tim Chevalier
0a5f88a240 Change the log level to be an enum rather than an int
This allows for eliminating a match check.
2012-08-22 16:14:39 -07:00
Tim Chevalier
73ffc7e700 Remove match check in send_map 2012-08-22 15:24:33 -07:00
Tim Chevalier
6f77fcbd07 Comments only: update issue number for FIXME 2012-08-22 15:24:33 -07:00
Brian Anderson
48a4bca066 Merge pull request #3251 from fsouza/to_digit_fix
libcore: fix doc for char::to_digit
2012-08-22 15:13:59 -07:00
Brian Anderson
91c652b1ca Merge pull request #3244 from dbp/osbug
core: removing repeated code in os.rs homedir() test
2012-08-22 15:12:53 -07:00
Brian Anderson
aab37fa811 Merge pull request #3240 from Dretch/bitvfixes
Bitvfixes
2012-08-22 15:11:58 -07:00
Paul Stansifer
1153b5dcc8 intern identifiers 2012-08-22 14:59:25 -07:00
Paul Stansifer
7317bf8792 pre-intern some fixed names so they can be used as constants 2012-08-22 14:59:24 -07:00
Paul Stansifer
9a7890d73a Centralize ident interner generation. 2012-08-22 14:59:24 -07:00
Michael Sullivan
744fea1a4f Track the type of self properly. Closes #3247. 2012-08-22 13:18:29 -07:00
Tim Chevalier
7284969292 Eliminate many match checks in rustc 2012-08-22 12:25:08 -07:00
Ben Blum
0e620ac030 Remove one last default argument mode from core::os 2012-08-22 14:10:56 -04:00
Ben Blum
d2e2d97602 Merge pull request #3231 from killerswan/modes1
Remove deprecated modes from os.rs
2012-08-22 10:37:45 -07:00
Ben Blum
dbba49f902 Merge pull request #3229 from Vincent-Belliard/master
add syntax highlighting file for kate editor
2012-08-22 10:34:49 -07:00
Michael Sullivan
e94c5420f4 #[ignore(cfg(windows))] for a test I added to arena that involves failure. 2012-08-22 10:29:23 -07:00
Francisco Souza
493117dcda libcore: fix doc for char::to_digit
Closes #3249.
2012-08-22 13:51:45 -03:00
Niko Matsakis
907f5b4672 ignore should_fail tests on windows 2012-08-21 20:49:35 -07:00
Niko Matsakis
ce3cc46ce6 Fix generation of generic methods with explicit self
There used to be two distinct code paths.  Now there is one.
2012-08-21 20:15:22 -07:00
Niko Matsakis
b5411f765c add tests to manage, fix test breakage I inadvertently introduced 2012-08-21 20:15:22 -07:00
Ben Blum
9b489f6fff Don't refute "()" in let-bindings (fixes #3104). 2012-08-21 21:05:01 -04:00
Michael Sullivan
73a03824e8 Remove a level of indirection from std::arena. 2012-08-21 17:03:00 -07:00
Michael Sullivan
f24e0e7b13 Have std::arena segregate POD data and non-POD data into different chunks. 2012-08-21 17:03:00 -07:00
Michael Sullivan
5f32e18011 Make std::arena run destructors. Closes #2831. 2012-08-21 17:03:00 -07:00
Michael Sullivan
98d0aae9a1 Fix some map related build failures. 2012-08-21 17:03:00 -07:00
Ben Blum
7fe1005fd1 Add msgsend-ring-{rw,mutex}-arcs bench tests 2012-08-21 19:40:47 -04:00
Daniel Patterson
6083409f17 core: removing repeated code in os.rs homedir() test 2012-08-21 19:26:32 -04:00
Niko Matsakis
236f833007 remove tab character 2012-08-21 16:08:18 -07:00
Niko Matsakis
bc5eb95222 implement a map testing benchmark
This involved some other changes:
- add a managed<T> wrapper that makes send_map usable from @-data
- implement map<K,V> for managed<send_map>

Unit tests are coming.
2012-08-21 16:07:53 -07:00
Niko Matsakis
182814ef81 remove some FIXMEd code as the relevant issue is fixed 2012-08-21 16:07:53 -07:00
Patrick Walton
9440f8e9b8 libcore: Implement a dup2 2012-08-21 16:01:00 -07:00
Daniel Patterson
8b8e0c2a45 core: switching os::tmpdir() to always return a directory, by defaulting to Windows dir on windows, as per .NET 2012-08-21 15:51:36 -07:00
Daniel Patterson
9bb2963b7e core: adding test for os::tmpdir() 2012-08-21 15:51:36 -07:00
Daniel Patterson
3f1f6bf9e3 core: adding os::tmpdir() that returns a system temporary directory if it can find one, and none otherwise. 2012-08-21 15:51:36 -07:00
Ben Blum
47cca22d54 Bypass lifecycle_lock in inhibit_kill/allow_kill for 3% to 5% speedup. Close #3213. 2012-08-21 18:03:41 -04:00
Ben Blum
0229bc4def Remove fixmes about exporting. Close #2648, close #3119. 2012-08-21 15:30:53 -04:00
Ben Blum
932f239a9c respect distinct anonymous regions in unsafe::transmute_* 2012-08-21 15:30:53 -04:00
Ben Blum
f5332769d5 Convert atomic intrinsics away from old argument modes (partial #3200) 2012-08-21 15:30:53 -04:00
Gareth Daniel Smith
69d66a702e fix a bug in bitv where the undefined bits in small/big bitv values could cause operations to return incorrect results. 2012-08-21 19:42:16 +01:00
Gareth Daniel Smith
5ccd299b15 fix a logic bug in small_bitv.set 2012-08-21 19:41:29 +01:00
Niko Matsakis
9423302c82 remove trailing whitespace 2012-08-21 11:24:41 -07:00
Niko Matsakis
652b312122 more sound treatment of fn& regions; change all & to be distinct 2012-08-21 10:28:34 -07:00
Vincent Belliard
6c36dc8660 fix kate syntax highlighting file 2012-08-21 16:27:17 +02:00
Niko Matsakis
8ee79c79aa new region inference, seperate infer into modules, improve error msgs
Fixes #2806
Fixes #3197
Fixes #3138
2012-08-20 22:00:06 -07:00
Ben Blum
3b09c3deaa Document arc::unwrap. Close #3123. 2012-08-20 22:31:17 -04:00
Michael Sullivan
71ec545614 Try to do some resolution of vtables earlier, in a fairly ad-hoc way. Closes #3156. 2012-08-20 19:00:27 -07:00
Ben Blum
bd736a0f9b oops, remove #[cfg(stage1)]s from arc::unwrap functions+tests 2012-08-20 22:00:06 -04:00
Ben Blum
1aa50bba7c Add unwrap for std::arc ARC variants 2012-08-20 21:51:39 -04:00