| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2011-12-18 | Only look for a matching method when normal field access fails | Marijn Haverbeke | -4/+2 | |
| We should probalby warn when defining a method foo on {foo: int} etc. This should reduce the amount of useless typevars that are allocated. Issue #1227 | ||||
| 2011-12-16 | reorder args to the various vec, option fns so blk comes last | Niko Matsakis | -1/+1 | |
| 2011-12-15 | rustc: Box the vectors returned from ty::tag_variants | Brian Anderson | -3/+3 | |
| 2011-12-13 | Copy first batch of material from libstd to libcore. | Graydon Hoare | -1/+1 | |
| 2011-12-08 | Allow binding of nested patterns | Marijn Haverbeke | -19/+49 | |
| See src/test/run-pass/nested-patterns.rs for some examples. The syntax is boundvar@subpattern Which will match the subpattern as usual, but also bind boundvar to the whole matched value. Closes #838 | ||||
| 2011-12-02 | Allow literal patterns to contain arbitrary literal expressions | Marijn Haverbeke | -29/+17 | |
| This removes the need for the unary minus hacks, and allows some other neat things like matching on 1 >> 4. Issue #954 | ||||
| 2011-11-22 | Fix inconsistency in ordering of patterns during alt compilation | Marijn Haverbeke | -17/+12 | |
| Closes #1153 | ||||
| 2011-11-22 | Only warn about unreachable range patterns when appropriate | Marijn Haverbeke | -2/+1 | |
| Also simplifies the literal-munging, and moves it into ast_util Closes #1170 | ||||
| 2011-11-17 | remove compile-command from local variable blocks | Niko Matsakis | -1/+0 | |
| 2011-11-10 | Cleanup unused imports | Haitao Li | -4/+2 | |
| 2011-11-03 | Disallow writing to function arguments again | Marijn Haverbeke | -8/+8 | |
| Remove implicit copying hack. Closes #1118 | ||||
| 2011-11-02 | convert GEP to i32 | Niko Matsakis | -10/+4 | |
| 2011-11-02 | thread the context through so that int can be 64 bits on x86_64 | Niko Matsakis | -9/+13 | |
| 2011-11-02 | Evaluate alt expressions in their own block context | Marijn Haverbeke | -3/+10 | |
| Closes #785 | ||||
| 2011-10-21 | Move hash table iteration over to block-taking functions | Marijn Haverbeke | -6/+6 | |
| Issue #1056 | ||||
| 2011-10-20 | Make fn denote a bare function. Convert fn to fn@ as needed | Brian Anderson | -2/+2 | |
| 2011-10-18 | Don't try to build an LLVM switch on floats | Marijn Haverbeke | -1/+2 | |
| Closes #1046 | ||||
| 2011-10-10 | Make vectors and strings immediates again | Marijn Haverbeke | -6/+7 | |
| There's no good reason to force them to be spilled anymore. Some pieces of trans become more elegant this way, and less stack allocs and load/stores are needed. Issue #1021 | ||||
| 2011-10-07 | Make it possible to have locals that don't live on the stack | Marijn Haverbeke | -13/+14 | |
| Local values that are not mutated, don't need to be cleaned up, and are immediate, don't need to be spilled. (All immediate args, and non-pointer immediate let locals.) | ||||
| 2011-10-05 | Add trans_temp_expr for what used to be trans_expr, rename t_e_dps to trans_expr | Marijn Haverbeke | -2/+2 | |
| Issue #667 | ||||
| 2011-09-28 | Revert "Revert "Implement pattern ranges for all numeric types."" | Brian Anderson | -21/+82 | |
| This reverts commit a034f87146e60e1db2327c6f6807c47406a1bb0b. Conflicts: src/comp/middle/check_alt.rs src/comp/middle/trans_alt.rs src/comp/syntax/ast.rs src/comp/syntax/ast_util.rs src/comp/syntax/fold.rs src/comp/syntax/print/pprust.rs Conflicts: src/comp/middle/trans_alt.rs | ||||
| 2011-09-27 | Fix lurking bug in matching of nil | Marijn Haverbeke | -6/+6 | |
| Which was somehow made visible by the DPS changes. | ||||
| 2011-09-27 | Move expr_binary into trans_expr_dps | Marijn Haverbeke | -2/+3 | |
| Issue #667 | ||||
| 2011-09-27 | Move expr_lit and expr_vec into trans_expr_dps | Marijn Haverbeke | -1/+13 | |
| Issue #667 | ||||
| 2011-09-23 | Add let destructuring for unique boxes | Brian Anderson | -0/+4 | |
| Issue #409 | ||||
| 2011-09-23 | Begin to support pattern matching on unique boxes | Brian Anderson | -0/+25 | |
| Issue #409 | ||||
| 2011-09-23 | Properly mark unreachable alt bodies as unreachable | Marijn Haverbeke | -0/+2 | |
| 2011-09-23 | Start on a piecemeal conversion to DPS | Marijn Haverbeke | -9/+7 | |
| Issue #667 Wires in a basic framework for destination-passing style, with backwards-compatibility to the old approach, so that expression types can be moved over to it one at a time (by moving them from trans_expr to trans_expr_dps). | ||||
| 2011-09-23 | Better handling of unreachable code in trans | Marijn Haverbeke | -17/+17 | |
| The builder functions in trans_build now look at an 'unreachable' flag in the block context and don't generate code (returning undefined placeholder values) when this flag is set. Threading the unreachable flag through context still requires some care, but this seems a more sane approach than re-checking for terminated blocks throughout the compiler. When creating a block, if you use its closest dominator as parent, the flag will be automatically passed through. If you can't do that, because the dominator is a scope block that you're trying to get out of, you'll have to do something like this to explicitly pass on the flag: if bcx.unreachable { Unreachable(next_cx); } Closes #949. Closes #946. Closes #942. Closes #895. Closes #894. Closes #892. Closes #957. Closes #958. | ||||
| 2011-09-21 | Revert "Implement pattern ranges for all numeric types." | Marijn Haverbeke | -78/+20 | |
| This reverts commit ce0f054f9d56df4e60291fc2e1b89ce979cf374f. | ||||
| 2011-09-21 | Implement pattern ranges for all numeric types. | Josh Matthews | -20/+78 | |
| 2011-09-17 | Add a precondition to GEP_tup_like | Tim Chevalier | -0/+8 | |
| 2011-09-15 | Added an extra check in trans_alt | Tim Chevalier | -0/+1 | |
| Gratuitous right now, but I'm going to change the type of trans::type_of | ||||
| 2011-09-13 | Make for loop alias-safe | Marijn Haverbeke | -1/+1 | |
| 2011-09-13 | Apply implicit copying for unsafe references to alt patterns | Marijn Haverbeke | -4/+19 | |
| 2011-09-12 | Factor imports mindlessly. | Graydon Hoare | -11/+4 | |
| 2011-09-12 | Pretty-print for new arg-mode syntax | Marijn Haverbeke | -2/+2 | |
| 2011-09-12 | Reformat for new mode syntax, step 1 | Marijn Haverbeke | -39/+40 | |
| Long lines were fixed in a very crude way, as I'll be following up with another reformat in a bit. | ||||
| 2011-09-08 | rustc: Make unique pointers no longer immediates. | Patrick Walton | -2/+4 | |
| 2011-09-02 | Reformat. Issue #855 | Brian Anderson | -46/+46 | |
| 2011-09-02 | Add a constraint to trans::type_of | Tim Chevalier | -0/+3 | |
| trans::type_of now has a constraint saying that its type argument is statically sized. This eliminates the "impossible happened" case in type_of. Yay! I note that this change decreased translation time for stage2/rustc from 16.1 s to 14.0 s. I also think many of the remaining checks could be eliminated with some mildly clever use of constrained types and further preconditions. Future work! | ||||
| 2011-09-02 | rustc: Root values spilled via do_spill() | Patrick Walton | -3/+3 | |
| 2011-09-01 | Remove lots of estr code from rustc. Issue #855 | Brian Anderson | -1/+1 | |
| 2011-09-01 | Add a constraint in trans | Tim Chevalier | -1/+4 | |
| Experimenting with adding typestate constraints in the compiler. Added a constraint to GEP_tag that says the variant index is in bounds. Added necessary checks. | ||||
| 2011-09-01 | Rename std::istr to std::str. Issue #855 | Brian Anderson | -4/+4 | |
| 2011-09-01 | Make GEP_tag take a uint instead of an int | Tim Chevalier | -1/+1 | |
| Seems to make more sense and avoids the need for some casts. | ||||
| 2011-09-01 | Remove std::str. Issue #855 | Brian Anderson | -1/+0 | |
| 2011-09-01 | Allow istrs as patterns. Issue #855 | Brian Anderson | -5/+9 | |
| 2011-08-30 | Glob-import trans_build in other trans files | Marijn Haverbeke | -22/+21 | |
| The capitalization already prevents name clashes. Being able to refer to the bitcode-construction primitives directly makes the code cleaner. | ||||
| 2011-08-27 | Convert misc compiler bits to istrs. Issue #855 | Brian Anderson | -4/+4 | |
