| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Parse function declarations. | Rafael Ávila de Espíndola | 2011-02-04 | 1 | -1/+1 | |
| | | ||||||
| * | Correctly handle "import foo = bar.zed;". | Rafael Ávila de Espíndola | 2011-01-28 | 1 | -6/+6 | |
| | | ||||||
| * | Simplify and fix the resolution of expr_path. With this we now get to codegen | Rafael Ávila de Espíndola | 2011-01-27 | 1 | -19/+10 | |
| | | | | | | | | | | | | | | | | in ------------------- type foo = rec(int a); mod m1 { mod m2 { const foo bar = rec(a = 4); } } fn main(vec[str] args) { log m1.m2.bar.a; } ------------------- | |||||
| * | Resolve type paths. | Rafael Ávila de Espíndola | 2011-01-27 | 1 | -18/+3 | |
| | | ||||||
| * | Handle paths correctly. This lets us handle one more test :-) | Rafael Ávila de Espíndola | 2011-01-27 | 1 | -13/+7 | |
| | | ||||||
| * | First step for supporting "case (foo.bar(?zed))": Change the ast of | Rafael Ávila de Espíndola | 2011-01-27 | 1 | -5/+7 | |
| | | | | | pat_tag to hold a path. | |||||
| * | Correctly split a.b.c into its path and field access components. | Rafael Ávila de Espíndola | 2011-01-27 | 1 | -12/+14 | |
| | | ||||||
| * | Print an error if we try to refer to a module in an expr_path. | Rafael Ávila de Espíndola | 2011-01-25 | 1 | -1/+11 | |
| | | ||||||
| * | Small first step in expr_path. Call find_final_def just to detect | Rafael Ávila de Espíndola | 2011-01-25 | 1 | -24/+38 | |
| | | | | | | unresolved names. find_final_def is going to be extended to return the final expr. | |||||
| * | Remove unimplemented erorr and enable test. | Rafael Ávila de Espíndola | 2011-01-24 | 1 | -5/+0 | |
| | | ||||||
| * | Implement a bit of type parameter matching to get a simple case working. | Rafael Ávila de Espíndola | 2011-01-24 | 1 | -4/+0 | |
| | | ||||||
| * | Teach resolve about linear for loops. | Graydon Hoare | 2011-01-20 | 1 | -2/+26 | |
| | | ||||||
| * | Look at the type params of an item_ty when resolving. | Rafael Ávila de Espíndola | 2011-01-19 | 1 | -1/+8 | |
| | | ||||||
| * | Twiddle comment. | Graydon Hoare | 2011-01-18 | 1 | -1/+1 | |
| | | ||||||
| * | One last refactoring of the import handling: | Rafael Ávila de Espíndola | 2011-01-18 | 1 | -79/+109 | |
| | | | | | | | | | | | | | | * Create an import resolving stage. Currently this involves a copy of the ast, we can probably revisit this once we revisit doing full copies of the ast in general. * Don't repeat work. Once we resolve a import, put it on a hash table and use it next time we are asked for it. This solves a O(n^2) behaviour in degenerated cases. * Once import resolution is done, the target of an import is stored on the import itself. | |||||
| * | Enable more tests. | Rafael Ávila de Espíndola | 2011-01-17 | 1 | -1/+1 | |
| | | ||||||
| * | Fix the last known (to me) bug in import resolution. We were not properly | Rafael Ávila de Espíndola | 2011-01-17 | 1 | -12/+27 | |
| | | | | | | dropping the inner part of the environment when an intermediate item resolved in an outer scope. | |||||
| * | Some misc cleanups: | Rafael Ávila de Espíndola | 2011-01-17 | 1 | -25/+26 | |
| | | | | | | * Remove unused argument * Move option.t wrapping to outer functions. | |||||
| * | Fix the import handling in "complex" cases. When looking a.b.c and 'a' is a | Rafael Ávila de Espíndola | 2011-01-14 | 1 | -5/+22 | |
| | | | | | | | | module, we should look for 'b' *just* in the module 'a' and then continue resolving b.c in the environment created by updating *with* a. Still not 100% correct, but getting there. | |||||
| * | Make lookup non recursive and instead move the recursion just to | Rafael Ávila de Espíndola | 2011-01-14 | 1 | -60/+88 | |
| | | | | | | find_final_def. Use the fact that the recursion is in a simpler function to detected import loops and exit. | |||||
| * | Change single-ident expr_ident to greedy/fat multi-ident expr_path, to ↵ | Graydon Hoare | 2011-01-13 | 1 | -15/+51 | |
| | | | | | handle the module-path/value-indexing distinction. | |||||
| * | Produce better errors for invalid imports. | Rafael Ávila de Espíndola | 2011-01-12 | 1 | -0/+6 | |
| | | ||||||
| * | Call find_final_def directly in fold_view_item_import. It is both cleaner and | Rafael Ávila de Espíndola | 2011-01-12 | 1 | -1/+1 | |
| | | | | | faster. | |||||
| * | Change mod_index_entry to point directly to items and view_items. | Rafael Ávila de Espíndola | 2011-01-12 | 1 | -6/+6 | |
| | | ||||||
| * | Fix another import case we got wrong: The local environment should not | Rafael Ávila de Espíndola | 2011-01-11 | 1 | -27/+47 | |
| | | | | | interfere with the import statements. | |||||
| * | Fix two invalid import cases we were not detecting: | Rafael Ávila de Espíndola | 2011-01-11 | 1 | -12/+29 | |
| | | | | | | | | * If an import was unused we would never print any errors for it. * We would keep the existing environment in scope when descending 'foo.bar' and would find 'bar' in the global environment if there was no 'bar' in 'foo'. | |||||
| * | Add sufficient import support to compile some simple single-crate programs. | Rafael Ávila de Espíndola | 2011-01-07 | 1 | -32/+111 | |
| | | | | | | This is likely not the final solution. It does repetitive work and doesn't produce errors for invalid but unused imports. In any case, I think it is a useful step. | |||||
| * | Add names from imports to the namespace. | Rafael Ávila de Espíndola | 2011-01-04 | 1 | -2/+2 | |
| | | ||||||
| * | Add support for looking up a name introduced by a 'use'. | Rafael Ávila de Espíndola | 2011-01-04 | 1 | -0/+14 | |
| | | | | | | | | | | | With this we go from "error: unresolved name: foo" to "unimplemented definition variant for: foo" in use foo; fn main(vec[str] args) { foo.bar(); } | |||||
| * | Change resolve errs to span_errs. | Graydon Hoare | 2010-12-31 | 1 | -4/+4 | |
| | | ||||||
| * | Teach resolve to find obj fields and ty params from methods. | Graydon Hoare | 2010-12-30 | 1 | -0/+12 | |
| | | ||||||
| * | rustc: Resolve type params | Patrick Walton | 2010-12-15 | 1 | -1/+6 | |
| | | ||||||
| * | Teach resolve about obj items. | Graydon Hoare | 2010-12-14 | 1 | -0/+3 | |
| | | ||||||
| * | rustc: Fix nonexhaustive match failure on unresolved identifiers | Patrick Walton | 2010-12-12 | 1 | -0/+1 | |
| | | ||||||
| * | rustc: Resolve variant names in patterns | Patrick Walton | 2010-12-12 | 1 | -1/+26 | |
| | | ||||||
| * | rustc: "resoling" -> "resolving" typo | Patrick Walton | 2010-12-12 | 1 | -3/+3 | |
| | | ||||||
| * | rustc: Remove "update_env_for_arm" debugging message | Patrick Walton | 2010-12-11 | 1 | -1/+0 | |
| | | ||||||
| * | rustc: Resolve pattern bindings | Patrick Walton | 2010-12-10 | 1 | -1/+17 | |
| | | ||||||
| * | First sketch of support for const items, not including most of trans. | Graydon Hoare | 2010-12-09 | 1 | -0/+3 | |
| | | ||||||
| * | Fix missing case in resolve, un-XFAIL rec-tup.rs. | Graydon Hoare | 2010-12-08 | 1 | -0/+1 | |
| | | ||||||
| * | Add code to fail on non-exhaustive alt matching. Fix all cases this picked ↵ | Graydon Hoare | 2010-12-01 | 1 | -0/+1 | |
| | | | | | up in rustc. | |||||
| * | rustc: Resolve tag variant names | Patrick Walton | 2010-12-01 | 1 | -2/+21 | |
| | | ||||||
| * | rustc: Parse type-parametric typedefs | Patrick Walton | 2010-11-24 | 1 | -1/+1 | |
| | | ||||||
| * | rustc: Parse type-parametric functions | Patrick Walton | 2010-11-24 | 1 | -2/+2 | |
| | | ||||||
| * | Resolve the easy case of type paths. | Graydon Hoare | 2010-11-22 | 1 | -0/+35 | |
| | | ||||||
| * | rustc: Add an annotation to function and type items so that the typechecker ↵ | Patrick Walton | 2010-11-10 | 1 | -3/+3 | |
| | | | | | can store types with them | |||||
| * | Move the option type to its own module | Patrick Walton | 2010-11-05 | 1 | -9/+9 | |
| | | ||||||
| * | Revert "Move the option type to its own module" | Patrick Walton | 2010-11-05 | 1 | -2/+2 | |
| | | ||||||
| * | Move the option type to its own module | Patrick Walton | 2010-11-05 | 1 | -2/+2 | |
| | | ||||||
| * | rustc: Use an extensible annotation field instead of putting option[@ty] ↵ | Patrick Walton | 2010-11-03 | 1 | -2/+3 | |
| | | | | | everywhere | |||||