about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2011-08-26Deleting trailing whitespaceEric Holk-1/+1
2011-08-26rt: Allow closures to be loggedPatrick Walton-11/+52
2011-08-26Adding a test case to make sure spawning polymorphic functions works.Eric Holk-0/+12
2011-08-26Bugfix. `--pretty typed` requires expansion. Closes #691.Paul Stansifer-21/+14
2011-08-26Fix invalid reads of cstrs in transBrian Anderson-5/+6
2011-08-26Revert "Use cstrcache in C_str, C_cstr, C_shape."Brian Anderson-14/+7
This reverts commit d5173b1f2cc174d53272be0d14a8290c05b8670a.
2011-08-26Revert "Add rustc::middle::cstrcache for getting c string bufs safely"Brian Anderson-30/+0
This reverts commit 4e136d1fd9bd5536d441c062d41e7b71b375a942.
2011-08-26Use cstrcache in C_str, C_cstr, C_shape.Brian Anderson-7/+14
This fixes up the current leaks.
2011-08-26Add rustc::middle::cstrcache for getting c string bufs safelyBrian Anderson-0/+30
We continue to leak string buffers in trans so this creates a way to get c string buffers from strings while guaranteeing that they are not freed before use. Hopefully this can be made efficient in the istr regime.
2011-08-26Add a valgrind suppression for the llvm::User leakBrian Anderson-0/+6
It's been around forever. I don't know what it is, but I need the compiler to be valgrind clean for the istr transition so I'm suppressing it.
2011-08-26Mostly-trivial commit to test build cycle on windows service.Graydon Hoare-0/+1
2011-08-26Revert "Revert "Use typestate constraints for trans_be""Tim Chevalier-6/+13
This reverts commit b0db13956f4f106c4bf5a9210c7df439b34506a4. (Should work now that we have a new snapshot)
2011-08-26Merge remote-tracking branch 'graydon/master' into snapTim Chevalier-39/+29
2011-08-26Register snapshotTim Chevalier-0/+5
2011-08-26Pass stuff to take_ty, free_ty, and drop_ty by address, even when immediateMarijn Haverbeke-39/+29
The glue-calling will spill the values again anyway. This should prevent a lot of load/spill junk in the output. It is also necessary to be able to have unique vecs be immediate values (take must know the actual address to be able to duplicate).
2011-08-26Revert "Use typestate constraints for trans_be"Tim Chevalier-13/+6
This reverts commit 1b60bba141c54f374d3378aa229c756d4a8f7f3d. (Need a snapshot first)
2011-08-26Use typestate constraints for trans_beTim Chevalier-6/+13
trans_be now has a precondition that its expression argument is a call expr. Obviously this code may be going away soon, but I wanted to exercise typestate somehow and this was an easy one :-)
2011-08-26Test case for checks on pattern-bound varsTim Chevalier-0/+16
2011-08-26Let typestate constraints mention pattern-bound varsTim Chevalier-5/+10
2011-08-25Remove remaining use of 'pred' and make 'pred' a non-reserved word. Huzzah\!Tim Chevalier-8/+2
2011-08-25Remove typestate workaround that's no longer necessaryTim Chevalier-4/+1
2011-08-25Test case for unchecked blocksTim Chevalier-0/+41
2011-08-25Support unchecked blocksTim Chevalier-19/+55
This patch supports the syntax unchecked { ... } to disable purity checking within a block. Presumably it will only be used within a declared "pure fn". However, there is no checking that it doesn't occur elsewhere, and it would be harmless for it to do so. I went with Lindsey's suggestion for the syntax, but it's subject to change. This allows you to write code that uses predicates that call arbitrary Rust functions, but you must declare your intentions by wrapping it in an unchecked { ... } block. The test case run-pass/unchecked-predicates.rs demonstrates how to do that.
2011-08-25Change "pred" to "pure fn" in all libraries and test casesTim Chevalier-31/+33
2011-08-25Change "pred" to "pure fn" within the compiler.Tim Chevalier-2/+2
2011-08-25Register snapshotTim Chevalier-0/+5
2011-08-25Allow pure fns to have any return typeTim Chevalier-15/+47
2011-08-25rt: Null check in walk_obj_contents. Prevents marking from crashing when ↵Patrick Walton-0/+2
calling object constructors.
2011-08-25rt: Remember the number of captured type descriptors for objects in the type ↵Patrick Walton-1/+12
descriptor crate cache
2011-08-25Move ast::pat_id_map to ast::utilBrian Anderson-5/+5
2011-08-25rustc: Add an extra flag to object tydescs so that shapes know how to find ↵Patrick Walton-72/+103
the captured subtydescs
2011-08-25Cleaning up task and comm exports, updating all the test cases.Eric Holk-522/+542
2011-08-25Fix istr::unsafe_from_bytes. Issue #855Brian Anderson-1/+9
2011-08-24rt: Fix walk_obj_contents for type-parameteric objects. Hash tables can be ↵Patrick Walton-27/+41
logged now.
2011-08-24rt: Factor out type param construction into from_tydesc and from_obj_shape. ↵Patrick Walton-31/+50
(The latter is unimplemented at the moment.)
2011-08-24Register new snapshotsBrian Anderson-0/+5
2011-08-24hmm, this should have been in the last commit. Oops.Tim Chevalier-0/+1
2011-08-24Change "pred" to "pure fn" (but still accept "pred")Tim Chevalier-7/+11
This is part 1 of changing the "pred" keyword to "pure fn". Right now, the compiler accepts both "pred" and "pure fn".
2011-08-24Test that processes that are supposed to fail return a non-zero statusBrian Anderson-0/+4
2011-08-24rt: Print out fields of objects when logging themPatrick Walton-2/+35
2011-08-24XFAIL task-comm-2. Doesn't work under windowsBrian Anderson-0/+5
2011-08-24Fix combine-tests.py for new ivec regimeBrian Anderson-1/+1
2011-08-24Return an error code after fail under win32Brian Anderson-1/+1
2011-08-24Revert "Back out copy-glue"Marijn Haverbeke-7/+111
This reverts commit 629ee94a0b360e2df1a1bbf7bf61ef346adf36ad.
2011-08-24Use memmove to load istr literals. Issue #855Brian Anderson-11/+4
2011-08-24Back out copy-glueMarijn Haverbeke-111/+7
This wasn't a good idea after all.
2011-08-24Use a single builder object throughoutMarijn Haverbeke-113/+271
This seems to be faster than creating separate ones for each block context.
2011-08-24Move to a more lightweight builder systemMarijn Haverbeke-1194/+1147
You now do bld::Ret(bcx, someval) where you used to say bcx.build.Ret(someval) Two fewer boxes are allocated for each block context, and build calls no longer go through a vtable.
2011-08-24Ensure values created in an alt guard are cleaned up properlyMarijn Haverbeke-2/+3
2011-08-24Remove rust_start_ivecMarijn Haverbeke-9/+0