| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2011-06-29 | rustc: Fix a leak that resulted from copying a structural interior type ↵ | Patrick Walton | -12/+5 | |
| containing interior vectors. Add a test case. | ||||
| 2011-06-29 | rustc: Unbreak self assignment | Patrick Walton | -6/+13 | |
| 2011-06-29 | Extend visit to use visit_fn to visit fn expressions. | Michael Sullivan | -11/+12 | |
| 2011-06-28 | Replace common::new_seq_hash with an adapter around std::smallintmap | Brian Anderson | -1/+69 | |
| It would be better to either convert ast_map to use smallintmap or make smallintmap and hashmap follow the same interface, but I don't feel up to it just now. Closes #585. | ||||
| 2011-06-28 | Comments and cleanup. | Lindsey Kuper | -4/+9 | |
| 2011-06-28 | Comments and cleanup. | Lindsey Kuper | -34/+95 | |
| 2011-06-28 | Support attaching attributes to modules via the crate file. Issue #487 | Brian Anderson | -4/+4 | |
| 2011-06-28 | rustc: Move duplicate_heap_parts to copy glue; add a test case | Patrick Walton | -10/+18 | |
| 2011-06-28 | Remove outdated comments | Tim Chevalier | -2/+0 | |
| 2011-06-28 | Require that both sides of a swap be lvals. | Michael Sullivan | -5/+12 | |
| 2011-06-28 | Cleanup attribute code. Issue #487 | Brian Anderson | -0/+1 | |
| 2011-06-28 | rustc: Rename take glue to copy glue | Patrick Walton | -26/+26 | |
| 2011-06-28 | Implement "claim" | Tim Chevalier | -7/+15 | |
| Implement "claim" (issue #14), which is a version of "check" that doesn't really do the check at runtime. It's an unsafe feature. The new flag --check-claims turns claims into checks automatically -- but it's off by default, so by default, the assertion in a claim doesn't execute at runtime. | ||||
| 2011-06-28 | Re-enabling some tests. | Eric Holk | -1/+1 | |
| 2011-06-28 | Teach the parser and typechecker to understand port[int](). Closes #588 | Eric Holk | -6/+14 | |
| 2011-06-28 | Extract meta_item sorting from back::link to middle::attr | Brian Anderson | -0/+34 | |
| 2011-06-28 | Add comments to middle::attr. Issue #487 | Brian Anderson | -0/+3 | |
| 2011-06-28 | Rework how linkage attributes are determined | Brian Anderson | -1/+39 | |
| The meta items within a crate's link attribute are used in linkage: #[link(name = "std", vers = "1.0", custom = "whatever")]; Name and vers are treated specially, and everything else is hashed together into the crate meta hash. Issue #487 | ||||
| 2011-06-28 | Add some helper functions for attributes. Issue #487 | Brian Anderson | -0/+74 | |
| 2011-06-28 | Handle lazy binops properly in typestate | Tim Chevalier | -7/+26 | |
| The typestate analysis now reflects that the second operand of a logical and or or may not be evaluated. | ||||
| 2011-06-28 | rustc: Add a "type-owns-heap-mem" cache. 2x translation speedup. | Patrick Walton | -0/+10 | |
| 2011-06-28 | rustc: Don't call cmp glue if the type is a simple scalar | Patrick Walton | -39/+60 | |
| 2011-06-28 | Add test cases for resources | Marijn Haverbeke | -1/+1 | |
| 2011-06-28 | Fix bug that prevented boxes-in-resources from being freed | Marijn Haverbeke | -1/+1 | |
| 2011-06-28 | Add some missing cases for ty_res in ty.rs | Marijn Haverbeke | -2/+28 | |
| 2011-06-28 | Make it possible to use * to dereference a resource | Marijn Haverbeke | -9/+16 | |
| 2011-06-28 | Add simple syntax extension (#simplext) | Paul Stansifer | -2/+0 | |
| 2011-06-28 | Properly guard resource values against double-drop | Marijn Haverbeke | -18/+51 | |
| Ths involved adding an extra field to their representation, so that there is something to check for zero. | ||||
| 2011-06-27 | rustc: Call cmp glue directly if we statically know it | Patrick Walton | -3/+11 | |
| 2011-06-27 | rustc: Fix stack explosion on -O0 from Alloca() instead of alloca() in cmp glue | Patrick Walton | -1/+1 | |
| 2011-06-27 | Tests for while loops that may invalidate constraints | Tim Chevalier | -96/+150 | |
| Wrote some small test cases that use while loops and moves, to make sure the poststate for the loop body gets propagated into the new prestate and deinitialization gets reflected. Along with that, rewrite the code for intersecting states. I still find it dodgy, but I guess I'll continue trying to add more tests. Also, I'll probably feel better about it once I start formalizing the algorithm. | ||||
| 2011-06-27 | pure_exp should set the state, not extend it | Tim Chevalier | -2/+2 | |
| This fixes a bug where de-initializations were getting masked (and programs that used a variable that had been de-initialized snuck through). | ||||
| 2011-06-27 | Move what's left of metadata::cwriter into middle::trans | Brian Anderson | -3/+17 | |
| 2011-06-27 | Extract metadata::decoder from metadata::creader | Brian Anderson | -7/+10 | |
| 2011-06-27 | Move metadata::cwriter::encode to metadata::tyencode | Brian Anderson | -4/+5 | |
| 2011-06-27 | Rename middle::metadata to metadata::cwriter. Move creader to metadata | Brian Anderson | -825/+9 | |
| Preparation for a lot more metadata refactoring | ||||
| 2011-06-27 | Limit exports from middle::metadata | Brian Anderson | -0/+26 | |
| 2011-06-27 | rustc: Directly emit calls to glue if possible | Patrick Walton | -2/+27 | |
| 2011-06-27 | Index obj and res ctor metadata by ctor id, not item id | Brian Anderson | -12/+16 | |
| Both the type and the ctor were trying to use the same id and this was making creader unable to find the ctor when running 'rustc --ls' | ||||
| 2011-06-27 | removing log statement that snuck in there | Tim Chevalier | -1/+0 | |
| 2011-06-27 | Implement move for scalar values | Tim Chevalier | -1/+3 | |
| Before, something like: let int y = 42; let int x; x <- y; would cause an LLVM assertion failure. Fixed it. | ||||
| 2011-06-26 | Add a very simple map implementation for sequential integer keys | Brian Anderson | -1/+1 | |
| Use it for the ast_map. Cuts 40% off the time spent prior to LLVM. | ||||
| 2011-06-26 | Reformulate an assert in ty::tag_variants | Brian Anderson | -2/+7 | |
| This was doing a redundant hashmap lookup. Removing the redundancy trims 5% (2.8s) off rustc's compile time | ||||
| 2011-06-25 | Fail typechecking for bad binop/type combinations | Brian Anderson | -13/+117 | |
| Includes assignment operations. Add regression tests for lots of less useful, less used or unexpected combinations, as well as a selection of compile-fail tests. Closes #500 (again!) | ||||
| 2011-06-25 | Use single-bar or to make tstate/states.rs prettier | Marijn Haverbeke | -173/+89 | |
| Sorry. This is the kind of thing I do when I'm on a plane and too tired to manage anything that requires thinking. | ||||
| 2011-06-25 | Primitive support for non-copyable values | Marijn Haverbeke | -10/+25 | |
| 2011-06-25 | Allow moving out of temporary values | Marijn Haverbeke | -15/+9 | |
| This will probably need more work, as moving doesn't appear to do quite the right thing yet in general, and we should also check somewhere that we're not, for example, moving out the content out of an immutable field (probably moving out of fields is not okay in general). | ||||
| 2011-06-25 | Partial implementation of resources | Marijn Haverbeke | -12/+152 | |
| Non-copyability is not enforced yet, and something is still flaky with dropping of the internal value, so don't actually use them yet. I'm merging this in so that I don't have to keep merging against new patches. | ||||
| 2011-06-25 | Remove variable name 'res' from test suite | Marijn Haverbeke | -6/+6 | |
| 2011-06-24 | Invalidate constraints correctly after an assignment expression | Tim Chevalier | -374/+397 | |
| Modified typestate to throw away any constraints mentioning a variable on the LHS of an assignment, recv, assign_op, or on either side of a swap. Some code cleanup as well. | ||||
