aboutsummaryrefslogtreecommitdiff
path: root/src/comp/middle
Commit message (Collapse)AuthorAgeFilesLines
* Change decl_upcall to decl_upcall_glue, more correct name.Graydon Hoare2011-02-021-2/+2
|
* Add trace and trap helpers to trans for low level diagnostics.Graydon Hoare2011-02-021-0/+18
|
* Add most of the plumbing for native items and add support for parsing native ↵Rafael Ávila de Espíndola2011-02-021-1/+44
| | | | type declarations.
* Fix buggy argument assembly for upcall_get_type_desc. Can now complete calls ↵Graydon Hoare2011-02-011-5/+5
| | | | to glue of derived tydescs.
* Add very minimal support for native modules. For now they must be empty.Rafael Ávila de Espíndola2011-02-012-2/+33
|
* Pick up case for expr_block from brson's other branch.Graydon Hoare2011-02-011-0/+15
|
* Implement 'else if'Graydon Hoare2011-02-014-17/+70
|
* Use dynamic GEP and silly offset-encoding on tydescs. Successful call into a ↵Graydon Hoare2011-02-011-40/+70
| | | | derived tydesc.
* Add ty_type.Graydon Hoare2011-02-012-0/+9
|
* More work on derived tydescs. Can compile simple tests with generic objects.Graydon Hoare2011-01-312-33/+53
|
* Majority of the remaining work for derived tydescs. Not quite working yet.Graydon Hoare2011-01-311-106/+159
|
* Run cleanups in reverse order. Not presently observable, no dtors.Graydon Hoare2011-01-311-1/+4
|
* Fix a bug in linearize and get the captured tydescs type right.Graydon Hoare2011-01-281-9/+11
|
* Pass linearized typarams to make_generic_glue. Steps toward derived tydescs.Graydon Hoare2011-01-281-5/+22
|
* Pass tydesc array into type glue fns as first arg. Required for derived ↵Graydon Hoare2011-01-281-40/+53
| | | | tydescs to work.
* Teach rustc to failBrian Anderson2011-01-283-11/+24
|
* Correctly handle "import foo = bar.zed;".Rafael Ávila de Espíndola2011-01-282-16/+16
|
* Add helper function for derived type descriptors.Graydon Hoare2011-01-271-2/+45
|
* Simplify and fix the resolution of expr_path. With this we now get to codegenRafael Ávila de Espíndola2011-01-271-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índola2011-01-271-18/+3
|
* Handle paths correctly. This lets us handle one more test :-)Rafael Ávila de Espíndola2011-01-271-13/+7
|
* First step for supporting "case (foo.bar(?zed))": Change the ast ofRafael Ávila de Espíndola2011-01-273-16/+21
| | | | pat_tag to hold a path.
* Correctly split a.b.c into its path and field access components.Rafael Ávila de Espíndola2011-01-271-12/+14
|
* Note issue in comments.Graydon Hoare2011-01-271-3/+2
|
* Teach typeck to handle obj item names when used as type names, not just ↵Graydon Hoare2011-01-261-18/+47
| | | | constructor calls.
* Print an error if we try to refer to a module in an expr_path.Rafael Ávila de Espíndola2011-01-251-1/+11
|
* Small first step in expr_path. Call find_final_def just to detectRafael Ávila de Espíndola2011-01-251-24/+38
| | | | | unresolved names. find_final_def is going to be extended to return the final expr.
* Implement autoderef in rustc. Un-XFAIL autoderef-full-lval.rs.Graydon Hoare2011-01-242-24/+129
|
* Switch from booleans to symbolic tags in a few places.Graydon Hoare2011-01-241-23/+36
|
* Remove unimplemented erorr and enable test.Rafael Ávila de Espíndola2011-01-241-5/+0
|
* Implement a bit of type parameter matching to get a simple case working.Rafael Ávila de Espíndola2011-01-242-5/+31
|
* Teach AST, parser, folder about iter items.Graydon Hoare2011-01-212-7/+10
|
* First cut at translating const items. Support the literal forms at least. ↵Graydon Hoare2011-01-211-26/+74
| | | | Un-XFAIL const.rs.
* Merge remote branch 'espindola/params'Graydon Hoare2011-01-211-10/+40
|\
| * Change the return type of the getter method so that we can get to the typeRafael Ávila de Espíndola2011-01-211-10/+40
| | | | | | | | params.
* | Fix bug in trans_for, un-XFAIL linear-for-loop.rs.Graydon Hoare2011-01-211-1/+1
| |
* | First cut of trans_for.Graydon Hoare2011-01-211-0/+38
| |
* | Tweak effect-checking rules in rustboot, remove/rewrite/re-auth impure cases ↵Graydon Hoare2011-01-211-149/+164
| | | | | | | | in trans.rs
* | M-x indent-region on trans.rs.Graydon Hoare2011-01-211-27/+35
|/
* Teach ty and typeck about linear for loops.Graydon Hoare2011-01-202-30/+56
|
* Fix typo in fold.Graydon Hoare2011-01-201-1/+1
|
* Teach resolve about linear for loops.Graydon Hoare2011-01-201-2/+26
|
* Adjust AST encoding, teach fold about linear for loops.Graydon Hoare2011-01-201-0/+18
|
* Implement dynamic GEP enough to permit expr_field to work on tup(T,T,T).Graydon Hoare2011-01-192-2/+127
|
* Look at the type params of an item_ty when resolving.Rafael Ávila de Espíndola2011-01-191-1/+8
|
* Fold function output and argument types. With this change we fail to compileRafael Ávila de Espíndola2011-01-191-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 Hoare2011-01-181-1/+1
|
* Fix bug (I think) when unifying ty_local and ty_param.Graydon Hoare2011-01-181-1/+13
|
* One last refactoring of the import handling:Rafael Ávila de Espíndola2011-01-182-85/+117
| | | | | | | | | | | | | * 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 Hoare2011-01-181-15/+170
|