| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2011-04-28 | Support all expression forms in typestate | Tim Chevalier | -12/+198 | |
| Added support for self_method, cont, chan, port, recv, send, be, do_while, spawn, and ext; handled break and cont correctly. (However, there are no non-xfailed test cases for ext or spawn in stage0 currently.) Although the standard library compiles and all test cases pass with typestate enabled, I left typestate checking disabled as rustc terminates abnormally when building the standard library if so, even though it does generate code correctly. | ||||
| 2011-04-28 | Further work on typestate_check | Tim Chevalier | -119/+343 | |
| Lots of work on typestate_check, seems to get a lot of the way through checking the standard library. * Added for, for_each, assign_op, bind, cast, put, check, break, and cont. (I'm not sure break and cont are actually handled correctly.) * Fixed side-effect bug in seq_preconds so that unioning the preconditions of a sequence of statements or expressions is handled correctly. * Pass poststate correctly through a stmt_decl. * Handle expr_ret and expr_fail properly (after execution of a ret or fail, everything is true -- this is needed to handle ifs and alts where one branch is a ret or fail) * Fixed bug in set_prestate_ann where a thing that needed to be mutated wasn't getting passed as an alias * Fixed bug in how expr_alt was treated (zero is not the identity for intersect, who knew, right?) * Update logging to reflect log_err vs. log * Fixed find_locals so as to return all local decls and exclude function arguments. * Make union_postconds work on an empty vector (needed to handle empty blocks correctly) * Added _vec.cat_options, which takes a list of option[T] to a list of T, ignoring any Nones * Added two test cases. | ||||
| 2011-04-28 | Actually perform take/drop on args (oh my!) | Graydon Hoare | -4/+36 | |
| 2011-04-27 | Use cnames when present in ty.ty_to_str. | Graydon Hoare | -10/+10 | |
| 2011-04-27 | Cache sha1 values of types, use seq-based mangling for glue as it's private ↵ | Graydon Hoare | -10/+17 | |
| anyways. | ||||
| 2011-04-27 | Partly disable simplified-type glue optimization due to compile-time cost. | Graydon Hoare | -1/+11 | |
| 2011-04-26 | rustc: Ignore the return value of native functions that return nil. stage1 ↵ | Patrick Walton | -1/+10 | |
| can build libstd now, though it leaks. | ||||
| 2011-04-26 | rustc: Actually write the optimized bitcode when --save-temps is on | Patrick Walton | -12/+13 | |
| 2011-04-26 | Speed up calls to get_tydesc and kill cname-redundant glue generation. | Graydon Hoare | -16/+29 | |
| 2011-04-26 | Merge branch 'master' of ssh://github.com/graydon/rust | Graydon Hoare | -1/+3 | |
| 2011-04-26 | Various bits of trans lint, nothing major. | Graydon Hoare | -25/+36 | |
| 2011-04-26 | rustc: Cap ridiculous type name sizes | Patrick Walton | -1/+3 | |
| 2011-04-25 | rustc: Add a missing return value to Collect.ty_of_item() | Patrick Walton | -1/+3 | |
| 2011-04-25 | A little more guarding against wasted work in ty, typeck. | Graydon Hoare | -2/+19 | |
| 2011-04-25 | rustc: Use the abbreviated type names to avoid LLVM bitcode size explosion | Patrick Walton | -5/+11 | |
| 2011-04-25 | Kick ty_var and ty_local entries out of the type store. Pre-compute presence ↵ | Graydon Hoare | -72/+183 | |
| of var, local, param and bound_params in types. | ||||
| 2011-04-25 | rustc: Add a -save-temps option to save bitcode and write output ↵ | Patrick Walton | -6/+49 | |
| simultaneously; document command line switches | ||||
| 2011-04-25 | rustc: Pass a "type context" around instead of directly passing the type ↵ | Patrick Walton | -783/+738 | |
| store; prep for removing type annotations | ||||
| 2011-04-25 | Avoid type_store hashtable access for a variety of cases, probably only ↵ | Graydon Hoare | -45/+168 | |
| ty_var matters. | ||||
| 2011-04-25 | Skip substitution and/or binding when there's no work to do. | Graydon Hoare | -0/+34 | |
| 2011-04-25 | Bind tag members as aliases rather than new locals. | Graydon Hoare | -19/+18 | |
| 2011-04-23 | Fix busted iter/put code. Un-XFAIL foreach-box-drop.rs. | Graydon Hoare | -95/+94 | |
| 2011-04-22 | rustc: Use a silly "magic numbers" hack; seems to speed things up a bit. | Patrick Walton | -2/+41 | |
| 2011-04-22 | rustc: Include the cname in the hash to increase entropy | Patrick Walton | -1/+10 | |
| 2011-04-22 | rustc: Thread the type store through everything that needs to access type ↵ | Patrick Walton | -382/+411 | |
| structures | ||||
| 2011-04-22 | rustc: Move the type serialization logic to an Encode module | Patrick Walton | -97/+108 | |
| 2011-04-22 | rustc: Remove direct access to the cname field of types | Patrick Walton | -4/+7 | |
| 2011-04-22 | rustc: Switch @ty.t to ty.t so that we can change it to a uint | Patrick Walton | -414/+415 | |
| 2011-04-22 | rustc: Eliminate the direct use of ty.t.struct | Patrick Walton | -110/+117 | |
| 2011-04-22 | Dispose the module. | Rafael Ávila de Espíndola | -0/+1 | |
| Thanks to brson for noticing it. | ||||
| 2011-04-22 | rustc: Add a fast path when the types to be unified are exactly equal | Patrick Walton | -0/+3 | |
| 2011-04-22 | rustc: Add a fast path if there are no type substitutions to be made | Patrick Walton | -2/+8 | |
| 2011-04-22 | rustc: Improve the efficiency of lookup_item_type() slightly | Patrick Walton | -7/+7 | |
| 2011-04-21 | rustc: Intern types | Patrick Walton | -331/+73 | |
| 2011-04-21 | Fix the signature of expr_ext | Brian Anderson | -4/+4 | |
| The extension body is just a string, not an expression. | ||||
| 2011-04-21 | rustc: Add a shallow type equality function, not used yet | Patrick Walton | -0/+321 | |
| 2011-04-21 | rustc: Pass a type store around, which does nothing yet | Patrick Walton | -392/+547 | |
| 2011-04-21 | rustc: Get rid of boring_ann(); it duplicates plain_ann() | Patrick Walton | -17/+14 | |
| 2011-04-21 | rustc: Create a unification context | Patrick Walton | -99/+75 | |
| 2011-04-21 | rustc: Move ty.unify to a separate namespace | Patrick Walton | -46/+50 | |
| 2011-04-21 | Change ty.eq_ty to avoid stringification. | Graydon Hoare | -43/+304 | |
| 2011-04-20 | rustc: Create an item collection context during typechecking; move ↵ | Patrick Walton | -170/+136 | |
| collection to a module | ||||
| 2011-04-20 | Fix walk bug that coupled with marijns work to regress stage1. | Graydon Hoare | -4/+3 | |
| 2011-04-20 | rustc: Add a type unification cache | Patrick Walton | -3/+63 | |
| 2011-04-20 | rustc: Define type hashing inductively | Patrick Walton | -12/+97 | |
| 2011-04-20 | rustc: Precompute type hashes | Patrick Walton | -39/+56 | |
| 2011-04-20 | rustc: Remove all manual type construction outside ty.rs | Patrick Walton | -45/+56 | |
| 2011-04-20 | rustc: Remove all uses of plain_ty() and friends from outside of ty.rs | Patrick Walton | -164/+135 | |
| 2011-04-20 | rustc: Introduce preferred type constructors, which will eventually ↵ | Patrick Walton | -1/+47 | |
| precompute hashes and intern | ||||
| 2011-04-20 | Remove last uses of fold from trans.rs | Marijn Haverbeke | -39/+34 | |
