Patrick Walton
|
55587a554c
|
rustc: Sort object methods when parsing textual types in the AST
|
2011-03-17 11:40:05 -07:00 |
|
Graydon Hoare
|
54587bdccb
|
Switch all vases of vec += elt to vec += vec. Prohibit former in rustboot. Tweak std lib vec fns in process.
|
2011-03-16 14:58:02 -07:00 |
|
Graydon Hoare
|
7f5bffc3ea
|
Merge remote branch 'brson/recursive-elseif'
|
2011-03-14 16:59:04 -07:00 |
|
Brian Anderson
|
4ce4d8857f
|
Add ty_port and ty_chan to expr_ty function
|
2011-03-14 16:41:46 -07:00 |
|
Brian Anderson
|
7464237256
|
Add folding and type checking for ports and chans
|
2011-03-14 16:41:46 -07:00 |
|
Brian Anderson
|
bbb6836da0
|
Merge branch 'master' into recursive-elseif
Conflicts:
src/comp/middle/typeck.rs
|
2011-03-13 19:40:25 -04:00 |
|
Graydon Hoare
|
8e8c336f93
|
Implement deep structural comparison through boxes and sequences.
|
2011-03-09 20:14:19 -08:00 |
|
Marijn Haverbeke
|
aed40fbcd8
|
Have the pretty-printer take a writer stream as argument
It now uses a string writer to also fill in for
middle.ty.ast_ty_to_str
|
2011-03-09 16:15:55 -08:00 |
|
Patrick Walton
|
e9fe47b359
|
rustc: Make ann_to_type() fail if the node has no type. Miraculously, no test cases fail.
|
2011-03-08 17:03:00 -08:00 |
|
Patrick Walton
|
4654faa67c
|
rustc: Add a slot for explicit type parameter instantations to the typechecker's AST annotation
|
2011-03-08 12:42:56 -08:00 |
|
Brian Anderson
|
9fc4db6b89
|
Merge branch 'master' into recursive-elseif
Conflicts:
src/Makefile
src/comp/front/ast.rs
src/comp/front/parser.rs
src/comp/middle/fold.rs
src/comp/middle/trans.rs
|
2011-03-07 21:21:01 -05:00 |
|
Marijn Haverbeke
|
0624f9db4a
|
Add a pretty-printer
Adds a -pp option to the compiler which will cause it to simply
pretty-print the given file.
|
2011-03-07 12:58:08 -08:00 |
|
Rafael Ávila de Espíndola
|
8047957b99
|
Construct the wrappers to native functions. Hello world now works :-)
|
2011-03-07 15:37:40 -05:00 |
|
Brian Anderson
|
d39da6f978
|
Remove typestate workarounds
|
2011-03-06 15:13:35 -08:00 |
|
Graydon Hoare
|
d97c800e31
|
Make ret and fail stmts have 0 out-edges, Closes #250.
|
2011-03-05 20:05:02 +00:00 |
|
Graydon Hoare
|
652cb48475
|
Assortment of additional work on vec-append. Not done yet.
|
2011-03-03 18:18:59 -08:00 |
|
Patrick Walton
|
04a0a6fbef
|
Revert "rustc: Add support for folding over tag types" as it's unnecessary. Oops.
|
2011-03-03 17:09:20 -08:00 |
|
Patrick Walton
|
f6682280f3
|
rustc: Add support for folding over tag types
|
2011-03-03 16:54:15 -08:00 |
|
Rafael Ávila de Espíndola
|
da8058ff83
|
Handle native types in calls.
|
2011-03-03 16:44:15 -05:00 |
|
Graydon Hoare
|
dddeba19d3
|
Sketch out some more pieces of vec-append.
|
2011-03-02 16:42:19 -08:00 |
|
Brian Anderson
|
f1500e5872
|
Add fold, typecheck and trans for expr_ext
|
2011-03-02 10:28:14 -08:00 |
|
Patrick Walton
|
8d8b3d985a
|
rustc: Mark tags that have subtypes with dynamic size as dynamic
|
2011-02-28 19:07:26 -08:00 |
|
Patrick Walton
|
0120571e90
|
rustc: Make the tag info table keyed by both tag ID and type parameter. Also fix a bug that was causing all tags to compare equal.
|
2011-02-25 19:42:26 -08:00 |
|
Rafael Ávila de Espíndola
|
081c3aa76d
|
Pass the abi of native functions all the way to codegen.
|
2011-02-25 15:58:08 -05:00 |
|
Patrick Walton
|
19b2850388
|
rustc: Perform type parameter substitutions when emitting glue for generic tags. Un-XFAIL generic-tag.rs.
|
2011-02-24 19:25:05 -08:00 |
|
Patrick Walton
|
b4d6589e73
|
Implement type descriptor binding. Un-XFAIL test/run-pass/generic-bind.rs.
|
2011-02-23 17:08:02 -08:00 |
|
Rafael Ávila de Espíndola
|
6849abcf7d
|
Handle the new ty_native_fn in type check.
|
2011-02-23 11:59:07 -05:00 |
|
Graydon Hoare
|
34c60b6edb
|
Make a tag for iterness / fnness, teach many places about it.
|
2011-02-18 17:30:57 -08:00 |
|
Patrick Walton
|
3aba50ff33
|
Implement Robinson's algorithm for type unification. Closes #227.
|
2011-02-18 14:52:33 -08:00 |
|
Patrick Walton
|
10befcd9a4
|
Add type parameters to tag types
|
2011-02-17 16:23:31 -08:00 |
|
Rafael Avila de Espindola
|
07c7888037
|
Don't add the rust arguments to native functions. We now produce the
correct arguments for native functions.
|
2011-02-16 16:16:11 -05:00 |
|
Rafael Avila de Espindola
|
293637139f
|
Add missing case to ty_to_str.
Disable test that now fails because we produce undefined references to the
native functions.
|
2011-02-16 15:00:40 -05:00 |
|
Rafael Avila de Espindola
|
012fa69ea5
|
More typechecking for native types and the needed plumbing in codegen.
|
2011-02-16 14:02:02 -05:00 |
|
Graydon Hoare
|
4a72a23171
|
Add basic front-end support for 'for each' loops.
|
2011-02-14 18:17:31 -08:00 |
|
Graydon Hoare
|
15a01f5c36
|
Add basic front-end support for expr_put.
|
2011-02-14 17:58:32 -08:00 |
|
Graydon Hoare
|
f1f33abdeb
|
Move all non-decl/non-expr stmts to exprs.
|
2011-02-14 17:46:28 -08:00 |
|
Graydon Hoare
|
59bce06a96
|
Expand expr_rec to take its optional trailing 'with' parameter.
|
2011-02-14 15:52:38 -08:00 |
|
Rafael Avila de Espindola
|
bd56dd9f2a
|
Add missing case to unify. This gets hello world to codegen.
|
2011-02-14 11:22:10 -05:00 |
|
Graydon Hoare
|
c9956a65b4
|
Teach ty and typeck about pat_lit.
|
2011-02-10 19:22:30 -08:00 |
|
Rafael Avila de Espindola
|
0d27eb1341
|
Add type checking for native types.
|
2011-02-10 16:22:08 -08:00 |
|
Graydon Hoare
|
9d576993f3
|
Add a fixme for last commit.
|
2011-02-07 14:16:40 -08:00 |
|
Graydon Hoare
|
d7f118135b
|
Iterate type unification to drive the types a bit further down into the leaves of results with residual vars. Cheap but kinda works.
|
2011-02-07 14:11:43 -08:00 |
|
Graydon Hoare
|
70bf54bcac
|
Implement 'else if'
|
2011-02-01 16:23:48 -08:00 |
|
Graydon Hoare
|
8ef22972db
|
Add ty_type.
|
2011-02-01 14:56:21 -08:00 |
|
Graydon Hoare
|
ef50d0e668
|
More work on derived tydescs. Can compile simple tests with generic objects.
|
2011-01-31 18:06:35 -08:00 |
|
Graydon Hoare
|
45fd05ac42
|
Teach ty and typeck about linear for loops.
|
2011-01-20 15:54:38 -08:00 |
|
Graydon Hoare
|
9d3ebd6a57
|
Implement dynamic GEP enough to permit expr_field to work on tup(T,T,T).
|
2011-01-19 16:29:14 -08:00 |
|
Graydon Hoare
|
9cc00d5f6c
|
Fix bug (I think) when unifying ty_local and ty_param.
|
2011-01-18 17:18:51 -08:00 |
|
Graydon Hoare
|
3a920e7ca8
|
Fix missing case in ty.
|
2011-01-17 17:24:47 -08:00 |
|
Graydon Hoare
|
f3c3fc0353
|
Change single-ident expr_ident to greedy/fat multi-ident expr_path, to handle the module-path/value-indexing distinction.
|
2011-01-13 17:42:28 -08:00 |
|