Commit Graph

11433 Commits

Author SHA1 Message Date
Patrick Walton 10d8a68791 libcore: Add missing ops.rs 2012-07-25 19:03:55 -07:00
Patrick Walton da80bd17c3 rustc: Introduce a lang_items pass, part of coherence and operator overloading.
This will also help us remove kinds.
2012-07-25 18:37:03 -07:00
Eric Holk e1d4bd463c 3x faster typechecking 2012-07-25 18:00:29 -07:00
Eric Holk 3aee39a6ec Add #[inline(never)], and also fixed inlining on vec::push 2012-07-25 17:30:13 -07:00
Elliott Slaughter 987814f11e Added debug flag to enable LLVM debug output. 2012-07-25 16:00:13 -07:00
Graydon Hoare 0b3dba42cf Change iface and interface to trait. Close #2967. 2012-07-25 15:59:24 -07:00
Graydon Hoare 7c1339b2f1 Add check-notidy target. Close #2943. 2012-07-25 15:39:56 -07:00
Graydon Hoare f8dc9283ad Reject non-UTF-8 files when reading as str. Close #2918. 2012-07-25 15:34:18 -07:00
Eric Holk 62d4f8fe82 Added a select2 trait. Fixes #2898 2012-07-25 15:15:46 -07:00
Eric Holk 531ea695f6 Remove shared_arc (unused) and fix trivial-message 2012-07-25 15:15:46 -07:00
Eric Holk 2d15b6ef42 Use pipes in compiletest 2012-07-25 15:15:46 -07:00
Eric Holk 08a77e06a8 Rewrite task-comm-NN to use pipes 2012-07-25 15:15:46 -07:00
Ben Blum 60d682b577 Fix asserts & short-read bug in isaac_seed (#2870) 2012-07-25 18:03:00 -04:00
Ben Blum 4378e7ead1 Fix os::env race (#2870) 2012-07-25 18:03:00 -04:00
Graydon Hoare 43867bf6f3 Merge pull request #3014 from elliottslaughter/fix-failed-build-by-xfailing-tests
Fix build by xfailing tests which produce irreducible CFGs.
2012-07-25 14:50:02 -07:00
Elliott Slaughter 9ca2a11137 Fix build by xfailing tests which produce irreducible CFGs. 2012-07-25 14:42:37 -07:00
Eric Holk 6748f78cb1 Polymorphic protocols work well enough to do MapReduce.
I did some horrible things with type variable naming here. It should do the right thing in most cases, but we'll need to go through and make it correct someday.
2012-07-25 12:12:26 -07:00
Eric Holk 14adb98b64 Bounded protocols work well enough to compile core, but map reduce has too many type parameters, so we have to get fancier. 2012-07-25 12:12:25 -07:00
Eric Holk 1dde5e7fc2 Thread spans through the pipe compiler. They aren't perfect, but they make debugging far easier than core.rc:0:0.
Changed the is_bounded check, so we fail compiling core right now due to not supporting type parameters.
2012-07-25 12:12:25 -07:00
Eric Holk 7ecddb2771 More purity to make it easier to borrow strings in format strings. 2012-07-25 12:12:25 -07:00
Eric Holk f5be06fa1f Added infrastructure to spin for a bit on recv. A spin count > 0 makes bench/pingpong.rs about 10x faster, but makes msgsend-ring-pipes unbearably slow. 2012-07-25 12:12:25 -07:00
Eric Holk 35576168dc Added a benchmark of bounded vs unbounded. Bounded is 8-12% faster. The macros currently don't work without pretty printing first. 2012-07-25 12:12:25 -07:00
Eric Holk 7f5f1f90a0 Compiled a bounded version of pingpong.
There are some failures in the other pipe tests, but these seem to just be a matter of generalizing the library code.

Updating pipes library so all tests pass again
2012-07-25 12:12:25 -07:00
Eric Holk b97fe98354 Generate buffer type for bounded protocols 2012-07-25 12:12:25 -07:00
Eric Holk c28af26258 Refactor the bounded pingpong example to avoid needing to generate unsafe code.
Took some steps towards bounded codegen.
2012-07-25 12:12:25 -07:00
Eric Holk 88877effa8 Allow logging slices 2012-07-25 12:12:25 -07:00
Eric Holk 4f29814f2a Hand-written bounded pingpong implementation. 2012-07-25 12:12:25 -07:00
Eric Holk d74fb9875b Refactoring pipes to allow implementing bounded protocols. 2012-07-25 12:12:25 -07:00
Eric Holk f65d6026ef Started playing with macros to make receiving easier 2012-07-25 12:12:25 -07:00
Eric Holk 6535da8417 Tighten pipe exports, and refactor traits. 2012-07-25 12:12:25 -07:00
Ben Blum 729c37f3cc (minor) remove config_notify from rustrt.def.in 2012-07-25 13:29:50 -04:00
Ben Blum 8d43724087 minor rt cleanup 2012-07-25 13:24:00 -04:00
Ben Blum c68f2d9aab Remove notification channels in runtime (closes #1078) 2012-07-25 13:22:43 -04:00
Ben Blum d9e8efca19 Handle notification channels in task.rs 2012-07-25 13:22:43 -04:00
Graydon Hoare 1e241b5abd Merge pull request #3009 from elliottslaughter/utf8-idents-test-fix
Fix test floating point comparison to tolerate imprecise FPUs.
2012-07-25 10:20:40 -07:00
Niko Matsakis 4b8d0539f9 adjust deprecated_use not to warn about sugared closures 2012-07-25 10:19:28 -07:00
Niko Matsakis dc744e816d fix oversight in ty_decode.
I thought this case would not come up.
2012-07-25 09:19:59 -07:00
Niko Matsakis cc8086a045 add new deprecated_mode lint pass
It will warn you if you use the default mode for something that
is expensive to copy, and it will warn you if you use any explicit
mode other than copy.  So you should migrate over to using the
default mode for most things (and borrowed pointers when you don't
want to copy) and copy mode for things you really wanted to copy.
2012-07-25 09:19:02 -07:00
Niko Matsakis 99674dc52b avoid capture of bound regions when infering types for closure
expressions. cc #2981
2012-07-25 05:45:52 -07:00
Niko Matsakis 2d3a197f0e comment various region-related things better 2012-07-25 05:45:52 -07:00
Niko Matsakis 7022ede9b3 make unique pointers inherit mutability from owner 2012-07-25 05:45:52 -07:00
Niko Matsakis 3bcd973419 from_fn and ref_set do not require copy bound 2012-07-25 05:45:52 -07:00
Niko Matsakis f061560ce4 range() is pure 2012-07-25 05:45:52 -07:00
Niko Matsakis 168306f11b correct treatment of mutability for deref'd components
Fixes #2980
2012-07-25 05:45:52 -07:00
Patrick Walton 1df5c52791 vim: Highlight "struct" 2012-07-24 21:09:42 -07:00
Ben Blum a038d272b0 rust_cond_lock acquire/release should be inside the atomically { .. } 2012-07-24 20:28:30 -04:00
Ben Blum bb5db3bc8a Add 2-degree familial relations linked failure tests & fix secondborn behaviour 2012-07-24 20:21:20 -04:00
Elliott Slaughter d9c9a2f97e Remove rustllvm functions which have moved upstream. 2012-07-24 17:11:13 -07:00
Graydon Hoare 668e2c86a0 Bump LLVM, clang and compiler-rt, integrating eds' work. 2012-07-24 17:11:13 -07:00
Zack Corr 480fa7c00e Only initialize targets that are actually supported / linked to in RustWrapper 2012-07-24 17:11:13 -07:00