| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2011-05-05 | rustc: Add Rust intrinsic support to the crate metadata reader and writer | Patrick Walton | -0/+3 | |
| 2011-05-05 | rustc: Fix bug in equal_abi that was preventing Rust intrinsics from working | Patrick Walton | -0/+6 | |
| 2011-05-05 | Enforce in typechecker that preds return a bool | Tim Chevalier | -0/+11 | |
| as well as a test case | ||||
| 2011-05-05 | Bring back "pred" syntax for writing predicates for check | Tim Chevalier | -9/+116 | |
| This commit reinstates the requirement that the predicate in a "check" must be a manifest call to a special kind of function declared with the new "pred" keyword instead of "fn". Preds must have a boolean return type and can only call other preds; they can't have any effects (as enforced by the typechecker). The arguments to a predicate in a check expression must be slot variables or literals. | ||||
| 2011-05-05 | Check well-formedness of constraints | Tim Chevalier | -6/+23 | |
| Check that the operand in a constraint is an explicit name, and that the operands are all local variables or literals. Still need to check that the name refers to a pure function. | ||||
| 2011-05-05 | Check that the operand in a check is a call | Tim Chevalier | -8/+19 | |
| In addition, fix bug in fold that was turning asserts into checks. More typechecking still needs to be done. | ||||
| 2011-05-05 | Remove 'deprecated mutable...' from our code | Marijn Haverbeke | -12/+12 | |
| This should make compilation a bit less noisy. | ||||
| 2011-05-05 | Return a fresh, unreachable context after ret, break, and cont | Marijn Haverbeke | -2/+2 | |
| This ensures we don't get compile errors on unreachable code (see test/run-pass/artificial-block.rs for an example of sane code that wasn't compiling). In the future, we might want to warn about non-trivial code appearing in an unreachable context, and/or avoid generating unreachable code altogether (though I'm sure LLVM will weed it out as well). | ||||
| 2011-05-05 | Eradicate fold from capture.rs | Marijn Haverbeke | -59/+54 | |
| The pass now uses walk. | ||||
| 2011-05-05 | rustc: Add a Link module; move crate writing to it to slim down trans slightly | Patrick Walton | -158/+4 | |
| 2011-05-05 | Fix and re-enable destructors | Marijn Haverbeke | -6/+7 | |
| There was some confusion on whether the destructors took their argument by pointer or direct value. They now take it directly, just like other methods. You no longer get a segfault when a constructor actually does something with its self value. | ||||
| 2011-05-04 | Add a structure for passing option flags around the compiler, put it in ↵ | Graydon Hoare | -25/+21 | |
| session, and use it. | ||||
| 2011-05-04 | Add missing ret statements to check_mod | Brian Anderson | -0/+4 | |
| Un-XFAIL compile-fail export tests | ||||
| 2011-05-04 | Support new -g flag, only mangle glue names by type when it's passed. | Graydon Hoare | -8/+16 | |
| 2011-05-03 | rustc: Stub support for Rust intrinsics | Patrick Walton | -28/+55 | |
| 2011-05-03 | rustc: Refactor metadata.Encode.* to not require a type abbreviation table ↵ | Patrick Walton | -45/+53 | |
| if abbreviation isn't enabled | ||||
| 2011-05-03 | rustc: Name type glue properly | Patrick Walton | -3/+17 | |
| 2011-05-02 | Extract ast.is_exported from the resolve module | Brian Anderson | -18/+1 | |
| 2011-05-02 | rustc: Time the Rust translation and LLVM passes separately | Patrick Walton | -3/+3 | |
| 2011-05-02 | rustc: Remove the artificial block in ty.rs. Fixes self-hosting. Add a test ↵ | Patrick Walton | -1/+1 | |
| case for this, XFAIL'd. | ||||
| 2011-05-02 | Un-revert "Use different syntax for checks that matter to typestate", fixing ↵ | Patrick Walton | -381/+370 | |
| the problem. This reverts commit d08b443fffb1181d8d45ae5d061412f202dd4118. | ||||
| 2011-05-02 | Revert "Use different syntax for checks that matter to typestate" | Graydon Hoare | -370/+381 | |
| This reverts commit aa25f22f197682de3b18fc4c8ba068d1feda220f. It broke stage2, not sure why yet. | ||||
| 2011-05-02 | rustc: Allocate tydescs on the stack when it's safe to do so. 60% compile ↵ | Patrick Walton | -12/+33 | |
| speed increase. | ||||
| 2011-05-02 | Use different syntax for checks that matter to typestate | Tim Chevalier | -381/+370 | |
| This giant commit changes the syntax of Rust to use "assert" for "check" expressions that didn't mean anything to the typestate system, and continue using "check" for checks that are used as part of typestate checking. Most of the changes are just replacing "check" with "assert" in test cases and rustc. | ||||
| 2011-05-02 | rustc: Add a "fat tydesc" LLVM type to trans | Patrick Walton | -0/+6 | |
| 2011-05-01 | Remove the search direction from resolve's fold environment | Brian Anderson | -36/+31 | |
| It's not actually involved in the fold so it can just be passed between the functions that need it. | ||||
| 2011-05-01 | Hide unexported tag variants | Brian Anderson | -3/+5 | |
| 2011-05-01 | Implement simple module export | Brian Anderson | -12/+60 | |
| 2011-04-29 | rustc: Run scope cleanups in the implicit block created by log statements. ↵ | Patrick Walton | -14/+18 | |
| Fixes a leak. | ||||
| 2011-04-29 | rustc: Emit pure native glue; we don't call it yet | Patrick Walton | -8/+19 | |
| 2011-04-29 | rustc: Start threading a purity flag through upcalls | Patrick Walton | -20/+26 | |
| 2011-04-29 | Temporarily disable dtors; they broke self-hosting. | Graydon Hoare | -1/+3 | |
| 2011-04-29 | rustc: First steps to determine whether tydescs escape | Patrick Walton | -17/+30 | |
| 2011-04-29 | Don't emit metadata unless compiling -shared. | Graydon Hoare | -5/+8 | |
| 2011-04-29 | Implement destructors in rustc | Marijn Haverbeke | -40/+60 | |
| Unlike rustboot, rustc keeps it destructors in vtables. Entry 0 holds either the destructor for the obj or a NULL pointer. The method offsets start at 1. | ||||
| 2011-04-29 | rustc: Add a --time-passes option | Patrick Walton | -1/+1 | |
| 2011-04-29 | rustc: Handle alias parameters in native functions properly | Patrick Walton | -14/+20 | |
| 2011-04-29 | Intern metadata while writing, shrink stage1 from 12mb to 5.7mb. | Graydon Hoare | -78/+175 | |
| 2011-04-28 | rustc: Fix vec append glue for strings. Add a test case. | Patrick Walton | -5/+8 | |
| 2011-04-28 | rustc: Add some value names to the vec append glue function. Un-XFAIL ↵ | Patrick Walton | -0/+6 | |
| vec-growth.rs. | ||||
| 2011-04-28 | More attempts at fixing broken vec-append glue. | Graydon Hoare | -3/+3 | |
| 2011-04-28 | Make the no-growth path (previously never exercised) in rustc *work*. | Graydon Hoare | -2/+1 | |
| 2011-04-28 | Actually hit the no-growth path on vec-append. | Graydon Hoare | -2/+12 | |
| 2011-04-28 | Consider unop deref as an lval. Un-XFAIL vec-push. | Graydon Hoare | -0/+1 | |
| 2011-04-28 | Drop args in native stubs too. | Graydon Hoare | -0/+11 | |
| 2011-04-28 | Add a session field to ty_ctxt and change an err to span_err | Tim Chevalier | -10/+16 | |
| I changed instantiate to print out a more helpful error message, which required passing it a session argument. To avoid threading extra arguments through a lot of functions, I added a session field to ty_ctxt. | ||||
| 2011-04-28 | Reindented things and removed superfluous comments, nothing to see here | Tim Chevalier | -14/+7 | |
| 2011-04-28 | Fix some nested patterns in rustc | Tim Chevalier | -0/+2 | |
| In rustc, nested patterns were potentially matching when they shouldn't match, because a loop index wasn't being incremented. Fixed it and added one test case. | ||||
| 2011-04-28 | Fix bug in handling of expr_alt (postcond for alts was being intersected ↵ | Tim Chevalier | -52/+102 | |
| with postcond for scrutinee) | ||||
| 2011-04-28 | Fixed bug in typeck that wasn't filling in anns for stmts | Tim Chevalier | -8/+19 | |
| (needed for typestate_check). Also changed a (log; fail) to (log_err; fail) in typestate_check, and added some more logging funs in util.common. | ||||
