| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2011-05-13 | rustc: Fix the type of node_types; stub the write_type function | Patrick Walton | -7/+16 | |
| 2011-05-13 | rustc: Remove a minor rustboot workaround in ↵ | Patrick Walton | -9/+4 | |
| typeck::resolve_local_types_in_block() | ||||
| 2011-05-13 | Fix naming of libc that was mangled by recent module changes | Brian Anderson | -3/+3 | |
| It doesn't appear that rustc makes use of these strings so it didn't actually break anything yet. | ||||
| 2011-05-13 | rustc: Make typeck::instantiate_path() not return an annotation | Patrick Walton | -9/+16 | |
| 2011-05-13 | Implement module namespaces | Marijn Haverbeke | -70/+72 | |
| Module names no longer clash with type and value names. The tokenizer/parser still needs to be taught to be more careful in identifying keywords, so that we can use 'str' and 'vec' and so as module names. | ||||
| 2011-05-13 | Extend crate format to allow multiple definitions for a single name | Marijn Haverbeke | -113/+85 | |
| The type/value namespace distinction pretty much works now. Module namespace is up next. | ||||
| 2011-05-13 | Make module indices hold a list of items | Marijn Haverbeke | -42/+87 | |
| This way, they can support having both a type and a value of the same name. | ||||
| 2011-05-13 | Move capture checking into resolve.rs | Marijn Haverbeke | -140/+49 | |
| Drops capture.rs. The new algorithm also checks for captures function arguments and obj fields. | ||||
| 2011-05-13 | Change resolve to use walk instead of fold | Marijn Haverbeke | -104/+164 | |
| Possibly, at some point, we should add a state-passing variant of walk, or a wrapper that makes it easier to thread state. (See the repetetive pop_state_for_* functions in this commit.) | ||||
| 2011-05-13 | Ensure visit_ty is called on type parameters during walk | Marijn Haverbeke | -2/+25 | |
| 2011-05-13 | Add visit_arm and visit_method to walk.rs | Marijn Haverbeke | -3/+16 | |
| The resolver needs to update its state for individual arms and methods. | ||||
| 2011-05-12 | Rename std.extfmt.CT to std.extfmt.RT to ct and rt | Brian Anderson | -32/+32 | |
| Temporarily duplicate the entire RT module, leaving it with the old name to accomodate the stage0 compiler. Will be removed after the next snapshot. | ||||
| 2011-05-12 | rustc: Flatten recursive vectors in trans::simplify_type(). Prevents an ↵ | Patrick Walton | -0/+8 | |
| infinite loop. | ||||
| 2011-05-12 | rustc: Beginnings of a "shape" module to convert types to shapes | Patrick Walton | -0/+99 | |
| 2011-05-12 | rustc: Make ty::expr_ann() terser | Patrick Walton | -109/+37 | |
| 2011-05-12 | rustc: Pass a node type table around, unused as of yet | Patrick Walton | -154/+218 | |
| 2011-05-12 | Add stats option and lazily emit glue. | Graydon Hoare | -86/+269 | |
| 2011-05-12 | Downcase std modules again, move to :: for module dereferencing | Marijn Haverbeke | -6594/+6629 | |
| This should be a snapshot transition. | ||||
| 2011-05-12 | Transitional change to make extfmt output lowercase module name | Marijn Haverbeke | -1/+1 | |
| 2011-05-12 | Change module dereference syntax from . to :: | Marijn Haverbeke | -111/+41 | |
| This will need to be a snapshot. | ||||
| 2011-05-12 | Remove some truly wrong logic in parse_constrs | Marijn Haverbeke | -13/+8 | |
| 2011-05-12 | Keep resolve data in external hash table, rather than embedded defs | Marijn Haverbeke | -481/+516 | |
| One step closer to removing fold and having a single, immutable AST. Resolve still uses fold, because it has to detect and transform expr_field expressions. If we go through on our plan of moving to a different syntax for module dereferencing, the parser can spit out expr_field expressions, and resolve can move to walk. (I am truly sorry for the things I did in typestate_check.rs. I expect we'll want to change that to walk as well in the near future, at which point it should probably pass around a context record, which could hold the def_map.) | ||||
| 2011-05-12 | Ensure ann tags are actually kept around during typechecking | Marijn Haverbeke | -202/+224 | |
| This way, the tag assigned by the parser stays with the node. I realize ann replacing is probably going away real soon, but I needed this now for moving the resolve defs out of the AST. | ||||
| 2011-05-12 | Properly lex block comments followed by EOF | Marijn Haverbeke | -4/+4 | |
| 2011-05-12 | Provide a more useful message when failing to translate a const | Marijn Haverbeke | -0/+3 | |
| 2011-05-11 | Remove unused filename parameter from lexer.new_reader | Brian Anderson | -3/+3 | |
| 2011-05-11 | Give the lexer a session so that it can fail more informatively | Brian Anderson | -22/+34 | |
| 2011-05-11 | rustc: Represent types as uints. Cuts typechecking down from 14s to 12s. | Patrick Walton | -148/+143 | |
| 2011-05-11 | rustc: Remove a few kludges intended to work around rustboot's lack of ↵ | Patrick Walton | -74/+4 | |
| structural comparison from equal_type_structures() | ||||
| 2011-05-11 | rustc: Remove magic numbers; they aren't a win | Patrick Walton | -40/+3 | |
| 2011-05-11 | rustc: Intern all types. 4s regression. | Patrick Walton | -17/+1 | |
| 2011-05-11 | rustc: Hoist derived type descriptors to the top of the function | Patrick Walton | -69/+120 | |
| 2011-05-11 | Remove mod indices from the AST | Marijn Haverbeke | -202/+165 | |
| They are now created by the resolve pass, which is the only pass that needs them, and kept internal to that pass. | ||||
| 2011-05-11 | Get rid of arm indices | Marijn Haverbeke | -36/+26 | |
| 2011-05-11 | Get rid of block indices | Marijn Haverbeke | -116/+62 | |
| 2011-05-11 | Stop depending on block indices in capture.rs | Marijn Haverbeke | -5/+9 | |
| 2011-05-11 | Hash only on def_num when storing def_ids that are local | Marijn Haverbeke | -13/+14 | |
| 2011-05-11 | Use a const for crate-num-zero (ast.local_crate) | Marijn Haverbeke | -4/+4 | |
| 2011-05-11 | Cache external crate lookups in resolve.rs | Marijn Haverbeke | -6/+28 | |
| According to --time-passes, resolution went from 2 to 0 seconds. Not really the bottleneck... but if we want to be crazy fast, just consider this a future bottleneck that was fixed very timely. | ||||
| 2011-05-11 | Rewrite comp/middle/resolve.rs | Marijn Haverbeke | -655/+556 | |
| * Cleans up the algorithm * Move first pass to walk (second still folds) * Support part of a type/value namespace split (crate metadata and module indices still need to be taught about this) * Remove a few blatant inefficiencies (import tables being recreated for every lookup, most importantly) | ||||
| 2011-05-11 | More alias-ification of trans. | Graydon Hoare | -279/+285 | |
| 2011-05-10 | Add meta info to rustc.rc | Brian Anderson | -0/+6 | |
| 2011-05-10 | rustc: Don't interleave allocas with stores when copying arguments to allocas | Patrick Walton | -11/+7 | |
| 2011-05-10 | Begin alias-ifying trans. | Graydon Hoare | -82/+82 | |
| 2011-05-10 | Avoid mangle_name_by_type_only call in tydesc names unless debugging. | Graydon Hoare | -1/+8 | |
| 2011-05-10 | rustc: Lower the size limit on ty_to_short_str() and always call it in favor ↵ | Patrick Walton | -2/+2 | |
| of direct calls to metadata.Encode.ty_str() in trans | ||||
| 2011-05-10 | rustc: Make -g not take an argument | Patrick Walton | -1/+1 | |
| 2011-05-10 | rustc: Number everything with an annotation | Patrick Walton | -175/+193 | |
| 2011-05-10 | Only name LLVM values / blocks / types when saving temporaries. | Graydon Hoare | -17/+27 | |
| 2011-05-10 | Add --time-llvm-passes. | Graydon Hoare | -4/+26 | |
