| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Teach resolve about linear for loops. | Graydon Hoare | 2011-01-20 | 1 | -2/+26 | |
| | | ||||||
| * | Adjust AST encoding, teach fold about linear for loops. | Graydon Hoare | 2011-01-20 | 3 | -12/+39 | |
| | | ||||||
| * | typo | Rafael Ávila de Espíndola | 2011-01-20 | 1 | -1/+1 | |
| | | ||||||
| * | Teach ast and parser about linear for expressions. | Graydon Hoare | 2011-01-20 | 2 | -28/+56 | |
| | | ||||||
| * | Implement dynamic GEP enough to permit expr_field to work on tup(T,T,T). | Graydon Hoare | 2011-01-19 | 2 | -2/+127 | |
| | | ||||||
| * | Look at the type params of an item_ty when resolving. | Rafael Ávila de Espíndola | 2011-01-19 | 1 | -1/+8 | |
| | | ||||||
| * | Fold function output and argument types. With this change we fail to compile | Rafael Ávila de Espíndola | 2011-01-19 | 1 | -3/+15 | |
| | | | | | | | | type lteq[T] = fn(&T a) -> bool; with "unresolved name: T". Before we would silently get to the type checker and assert in a unresolved ty_path. | |||||
| * | Twiddle comment. | Graydon Hoare | 2011-01-18 | 1 | -1/+1 | |
| | | ||||||
| * | Fix bug (I think) when unifying ty_local and ty_param. | Graydon Hoare | 2011-01-18 | 1 | -1/+13 | |
| | | ||||||
| * | One last refactoring of the import handling: | Rafael Ávila de Espíndola | 2011-01-18 | 4 | -88/+121 | |
| | | | | | | | | | | | | | | * 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. | |||||
| * | Add bzero glue and preliminary code for dynamic size/align calculations. | Graydon Hoare | 2011-01-18 | 2 | -15/+174 | |
| | | ||||||
| * | Fix missing case in ty. | Graydon Hoare | 2011-01-17 | 1 | -0/+5 | |
| | | ||||||
| * | Use homebrew memcpy, not llvm intrinsic. Can't run the latter on a rust stack. | Graydon Hoare | 2011-01-17 | 2 | -32/+66 | |
| | | ||||||
| * | Fix a couple bugs in parametric returns. | Graydon Hoare | 2011-01-17 | 1 | -11/+11 | |
| | | ||||||
| * | Allocate and reload retslots. Copy into them on polymorphic returns. | Graydon Hoare | 2011-01-17 | 1 | -19/+35 | |
| | | ||||||
| * | Enable more tests. | Rafael Ávila de Espíndola | 2011-01-17 | 1 | -1/+1 | |
| | | ||||||
| * | Whitespace cleanup. | Graydon Hoare | 2011-01-17 | 1 | -9/+9 | |
| | | ||||||
| * | 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. | |||||
| * | Teach copy_ty to finish via memcpy of tydesc-provided size. | Graydon Hoare | 2011-01-17 | 1 | -11/+24 | |
| | | ||||||
| * | Some misc cleanups: | Rafael Ávila de Espíndola | 2011-01-17 | 1 | -25/+26 | |
| | | | | | | * Remove unused argument * Move option.t wrapping to outer functions. | |||||
| * | Pass tydescs to parametric fns, along with (dummy, presently) retptr when ↵ | Graydon Hoare | 2011-01-14 | 1 | -66/+82 | |
| | | | | | needed. Can call simple parametric fn now. | |||||
| * | 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. | |||||
| * | Expand generic info in lval_result. | Graydon Hoare | 2011-01-14 | 1 | -12/+17 | |
| | | ||||||
| * | Trim long lines. | Graydon Hoare | 2011-01-14 | 1 | -2/+2 | |
| | | ||||||
| * | Pass tydescs to parametric fns. | Graydon Hoare | 2011-01-14 | 1 | -6/+33 | |
| | | ||||||
| * | 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 | 7 | -98/+170 | |
| | | | | | 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 | 4 | -58/+66 | |
| | | ||||||
| * | Figure out what tydescs we need to pass when translating parametric function ↵ | Patrick Walton | 2011-01-12 | 2 | -4/+57 | |
| | | | | | calls | |||||
| * | 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'. | |||||
| * | Sketch support for reading multi-file crates in rustc. Add test, not yet ↵ | Graydon Hoare | 2011-01-10 | 1 | -32/+138 | |
| | | | | | working. | |||||
| * | Drop closures. Un-XFAIL bind-interior.rs. | Graydon Hoare | 2011-01-07 | 1 | -7/+54 | |
| | | ||||||
| * | Add sufficient import support to compile some simple single-crate programs. | Rafael Ávila de Espíndola | 2011-01-07 | 3 | -37/+115 | |
| | | | | | | 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. | |||||
| * | Synthesize closure thunks, and pass closure pointer into fn calls. | Graydon Hoare | 2011-01-07 | 1 | -30/+170 | |
| | | ||||||
| * | Whitespace cleanup, and copy target into closure. | Graydon Hoare | 2011-01-06 | 1 | -7/+10 | |
| | | ||||||
| * | Add the boilerplate for folding view items. | Rafael Ávila de Espíndola | 2011-01-06 | 1 | -1/+65 | |
| | | ||||||
| * | Sketch closure-forming logic for nontrivial bindings. | Graydon Hoare | 2011-01-05 | 2 | -4/+79 | |
| | | ||||||
| * | Translate trivial bindings. Un-XFAIL bind-trivial.rs. | Graydon Hoare | 2011-01-05 | 1 | -8/+20 | |
| | | ||||||
| * | Use uniform pair representation of functions everywhere, including static ↵ | Graydon Hoare | 2011-01-05 | 2 | -38/+132 | |
| | | | | | functions. | |||||
| * | rustc: Allow the type unification handler to handle both expected and actual ↵ | Patrick Walton | 2011-01-04 | 2 | -4/+20 | |
| | | | | | param types | |||||
| * | Correct function pointer type in closure. | Graydon Hoare | 2011-01-04 | 1 | -2/+2 | |
| | | ||||||
| * | Merge remote branch 'espindola/import' | Graydon Hoare | 2011-01-04 | 3 | -5/+9 | |
| |\ | ||||||
| | * | Add names from imports to the namespace. | Rafael Ávila de Espíndola | 2011-01-04 | 3 | -5/+9 | |
| | | | ||||||
| * | | rustc: Add an item type accessor | Patrick Walton | 2011-01-04 | 1 | -0/+38 | |
| |/ | ||||||
| * | Add support for looking up a name introduced by a 'use'. | Rafael Ávila de Espíndola | 2011-01-04 | 3 | -11/+38 | |
| | | | | | | | | | | | 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(); } | |||||
| * | Refactor the view_item code so that it is similar to the code used for | Rafael Ávila de Espíndola | 2011-01-04 | 2 | -30/+40 | |
| | | | | | parsing regular items. | |||||
| * | Rename use_or_import to view_item. | Rafael Ávila de Espíndola | 2011-01-04 | 2 | -8/+8 | |
| | | ||||||