| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2012-03-02 | Move src/comp to src/rustc | Graydon Hoare | -373/+0 | |
| 2012-02-29 | optionally enforce local variable mutability | Niko Matsakis | -1/+1 | |
| 2012-02-29 | Recognize last uses for copied closed-over variables | Marijn Haverbeke | -75/+127 | |
| And clean up and fix some bad things in last_use.rs. Closes #1894 | ||||
| 2012-02-28 | change def's that are always local to use node_id, add --inline opt | Niko Matsakis | -6/+6 | |
| 2012-02-22 | Remove preconditions from libraries | Marijn Haverbeke | -1/+0 | |
| Closes #1805 | ||||
| 2012-02-15 | make mut a keyword synonymous with mutable | Niko Matsakis | -2/+2 | |
| first step towards issue #1273 | ||||
| 2012-02-15 | Support 'alt check' syntax | Marijn Haverbeke | -1/+1 | |
| It is only a way to flag an alt as intentionally non-exhaustive right now. Issue #1679 | ||||
| 2012-02-13 | Fix bug in handling of block functions in last-use analysis | Marijn Haverbeke | -2/+6 | |
| It would fail to start out with a fresh scope when going over a loop or block function for the second time, and thus not recognize last uses of locals defined inside the block. Closes #1818 | ||||
| 2012-02-10 | Remove a vestige of return-by-reference | Marijn Haverbeke | -1/+1 | |
| 2012-02-09 | Remove some pointless imports | Marijn Haverbeke | -1/+0 | |
| 2012-02-06 | Make ty::t type self-sufficient | Marijn Haverbeke | -3/+3 | |
| It is now no longer needed to have a ty::ctxt to get at the contents of a ty::t. The straight-forward approach of doing this, simply making ty::t a box type, unfortunately killed our compiler performance (~15% slower) through refcounting cost. Thus, this patch now represents ty::t as an unsafe pointer, assuming that the ty::ctxt, which holds these boxes alive, outlives any uses of the ty::t values. In the current compiler this trivially holds, but it is does of course add a new potential pitfall. ty::get takes a ty::t and returns a boxed representation of the type. I've changed calls to ty::struct(X) to do ty::get(X).struct. Type structs are full of vectors, and copying them every time we wanted to access them was a bit of a cost. | ||||
| 2012-02-05 | infer modes rather than overwriting with expected ty | Niko Matsakis | -3/+13 | |
| 2012-01-31 | Change option::t to option | Tim Chevalier | -1/+1 | |
| Now that core exports "option" as a synonym for option::t, search-and- replace option::t with option. The only place that still refers to option::t are the modules in libcore that use option, because fixing this requires a new snapshot (forthcoming). | ||||
| 2012-01-31 | Require alts to be exhaustive | Tim Chevalier | -0/+6 | |
| middle::check_alt does the work. Lots of changes to add default cases into alts that were previously inexhaustive. | ||||
| 2012-01-30 | Remove ternary operator | Paul Woolcock | -3/+0 | |
| `expr_ternary`, `ternary_to_if`, and all parses & lexer definitions have been removed. | ||||
| 2012-01-30 | Substitute type parameters more eagerly | Marijn Haverbeke | -1/+1 | |
| This simplifies the typechecker a bit (no more ty_param_substs_opt_and_ty) and is needed for another experiment I'm playing with. I hope it also makes compilation faster (the bots will tell). | ||||
| 2012-01-23 | s/block()/fn()/g | Niko Matsakis | -1/+1 | |
| 2012-01-19 | rustc: ";" to "," in enums | Patrick Walton | -2/+2 | |
| 2012-01-19 | rustc: "tag" -> "enum" | Patrick Walton | -2/+2 | |
| 2012-01-18 | Remove '.' after nullary tags in patterns | Tim Chevalier | -6/+6 | |
| Does what it says on the tin. The next commit will remove support for this syntax. | ||||
| 2012-01-13 | distinguish "any closure" and "stack closure" (block) | Niko Matsakis | -6/+13 | |
| 2012-01-09 | Change all uses of 'when' in alt-patterns to 'if' | Austin Seipp | -1/+1 | |
| Issue #1396 | ||||
| 2012-01-08 | modify last use to take into account cap clause, add new test | Niko Matsakis | -8/+25 | |
| 2012-01-06 | Disallow variable names that shadow tags in scope | Tim Chevalier | -3/+3 | |
| Now, if you have a tag named "foo", a variable declaration like "let foo..." is illegal. This change makes it possible to eliminate the '.' after a nullary tag pattern in an alt (but I'll be doing that in a future commit) -- as now it's always obvious whether a name refers to a tag or a new declared variable. resolve implements this change -- all the other changes are just to get rid of existing code that declares variables that shadow tag names. | ||||
| 2012-01-03 | Merge pull request #1392 from Lenny222/list | Brian Anderson | -2/+4 | |
| list: add "is_not_empty" requirement to "head" and "tail" (analogous to "vec") | ||||
| 2012-01-02 | Make last-use pass properly handle closed-over variables | Marijn Haverbeke | -3/+18 | |
| Closes #1399 | ||||
| 2011-12-29 | split proto from fn_decl, as not all fn_decls know the proto. | Niko Matsakis | -5/+5 | |
| this will address the (crashing) new test added. | ||||
| 2011-12-29 | list: use predicate to enforce non-empty requirement | Lenny222 | -2/+4 | |
| 2011-12-23 | Go back to a single visit_fn function in visit.rs | Marijn Haverbeke | -6/+6 | |
| 2011-12-22 | Unify some data structures in syntax::ast that were doing the same thing | Marijn Haverbeke | -1/+1 | |
| As a preparation to removing some duplication in typeck. | ||||
| 2011-12-21 | Make { || ... } sugar for any type of closure, inferred | Niko Matsakis | -6/+11 | |
| 2011-12-16 | reorder args to the various vec, option fns so blk comes last | Niko Matsakis | -3/+3 | |
| 2011-12-14 | first attempt, not happy with it | Niko Matsakis | -1/+2 | |
| 2011-12-13 | Copy first batch of material from libstd to libcore. | Graydon Hoare | -1/+2 | |
| 2011-12-01 | Fix mistake in last use pass | Marijn Haverbeke | -5/+12 | |
| Closes #1243 | ||||
| 2011-11-21 | Fix bad interaction between last-use finding and references | Marijn Haverbeke | -6/+14 | |
| The last-use pass now takes input from the alias pass to not mark things as last uses that are still accessed through a reference. Issue #925 | ||||
| 2011-11-18 | Add some comments to kind.rs and last_use.rs | Marijn Haverbeke | -0/+18 | |
| 2011-11-18 | Make trans use last_use info to not actually generate copies | Marijn Haverbeke | -1/+7 | |
| Issue #925 | ||||
| 2011-11-18 | Implement a last-use-of-local finding algorithm | Marijn Haverbeke | -0/+219 | |
| Issue #925 | ||||
