Commit Graph

12545 Commits

Author SHA1 Message Date
Brian Anderson
6e20ffeb8d Add sys::Closure type 2012-08-29 14:04:22 -07:00
Tim Chevalier
ec9c68c1df Merge pull request #3301 from jld/vec-truncate
Add vec::truncate, for efficiently shortening a vector.
2012-08-29 13:53:23 -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