1190 Commits

Author SHA1 Message Date
Graydon Hoare
79d3ceaac0 Steps toward implementing iterators. 2011-02-17 12:20:55 -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
a63696dfe2 Add a more specialized decl_native_fn_and_pair. Native functions now have
the right name.
2011-02-16 15:34:59 -05:00
Graydon Hoare
f50caa75c2 Wrap long line in last commit. 2011-02-16 11:33:14 -08: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
d4bf67dde6 Translate record extension. 2011-02-15 18:16:13 -08:00
Graydon Hoare
9ae89bd404 Add _mutable unop. 2011-02-15 12:20:30 -08: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
84dd64b6cf Switch ast.is_call_expr check in trans to non-typestate form. 2011-02-14 16:33:51 -08:00
Graydon Hoare
59bce06a96 Expand expr_rec to take its optional trailing 'with' parameter. 2011-02-14 15:52:38 -08:00
Brian Anderson
0ebfb8227c Add support for unsigned binops. Closes #57 2011-02-14 08:31:52 -08:00
Graydon Hoare
7446af747d Translate pat_lit, un-XFAIL alt-pattern-lit.rs for rustc. 2011-02-10 19:40:02 -08:00
Graydon Hoare
7c25fb5628 Fix bug in trans_field, un-XFAIL two more tests. 2011-02-10 17:33:08 -08:00
Graydon Hoare
c958eebf5d Change more of trans to rely on tydescs when dealing with generics. 2011-02-10 15:00:16 -08:00
Graydon Hoare
140d6fd964 Switch "." to "_" in name mangling, makes gdb happier. Also factor out into sep() helper. 2011-02-10 14:59:20 -08:00
Brian Anderson
f17a3421e0 Cleanup for 'be' statement and comments about future typestate 2011-02-10 12:12:10 -08:00
Brian Anderson
378c0087ca Parse 'be' statement. Pass tailcall tests. No actual tailcalls yet. 2011-02-10 12:12:10 -08:00
Graydon Hoare
8c0d35066b Elide passed-typarams when tydescs are captured. Un-XFAIL generic-obj.rs. 2011-02-09 09:54:58 -08:00
Graydon Hoare
2f25d9c983 Handle subtle view-shift on outptr in generic calls. Can construct generic objs now. 2011-02-08 17:05:53 -08:00
Graydon Hoare
74f71d387e Overhaul ABI. All retptrs, all the time. 2011-02-08 11:47:53 -08:00
Rafael Ávila de Espíndola
57bb9d809b Parse function declarations. 2011-02-04 11:10:04 -05:00
Graydon Hoare
be97a77be8 Capture typarams into obj, independent of body tydesc. 2011-02-03 14:40:57 -08:00
Graydon Hoare
ce17fe2a90 Attempt to put out burning tinderbox. 2011-02-02 17:49:15 -08:00
Graydon Hoare
c863427b64 Hack to work around apparent LLVM bug? 2011-02-02 16:22:11 -08:00
Graydon Hoare
b37995664b Store tydesc for whole body, not just fields, in objs and closures. Handles unusual field alignment. 2011-02-02 15:28:11 -08:00
Graydon Hoare
c61ff98985 Handle missing case in linearize_ty_params. 2011-02-02 15:26:16 -08:00
Graydon Hoare
c42a2d2bfb Change decl_upcall to decl_upcall_glue, more correct name. 2011-02-02 15:25:53 -08:00
Graydon Hoare
8e963f63a8 Add trace and trap helpers to trans for low level diagnostics. 2011-02-02 15:23:49 -08:00
Graydon Hoare
f22dc4d581 Fix buggy argument assembly for upcall_get_type_desc. Can now complete calls to glue of derived tydescs. 2011-02-01 18:02:57 -08:00
Graydon Hoare
70bf54bcac Implement 'else if' 2011-02-01 16:23:48 -08:00
Graydon Hoare
eb16942c1d Use dynamic GEP and silly offset-encoding on tydescs. Successful call into a derived tydesc. 2011-02-01 14:57:03 -08:00
Graydon Hoare
8ef22972db Add ty_type. 2011-02-01 14:56:21 -08:00
Brian Anderson
3fedb18c0a Allow the else part of an expr_if to be either expr_if or expr_block 2011-02-01 00:08:47 -05: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
784b2decf2 Majority of the remaining work for derived tydescs. Not quite working yet. 2011-01-31 15:03:05 -08:00
Graydon Hoare
f9b37c7348 Run cleanups in reverse order. Not presently observable, no dtors. 2011-01-31 12:06:27 -08:00
Graydon Hoare
bf9cebfc06 Fix a bug in linearize and get the captured tydescs type right. 2011-01-28 15:45:13 -08:00
Graydon Hoare
caa5b92985 Pass linearized typarams to make_generic_glue. Steps toward derived tydescs. 2011-01-28 15:28:20 -08:00
Graydon Hoare
ea42911561 Pass tydesc array into type glue fns as first arg. Required for derived tydescs to work. 2011-01-28 14:34:25 -08:00
Brian Anderson
6b7cab3602 Teach rustc to fail 2011-01-28 11:12:57 -08:00
Graydon Hoare
13b7a356f8 Add helper function for derived type descriptors. 2011-01-27 17:07:52 -08:00
Graydon Hoare
ce31b02113 Note issue in comments. 2011-01-27 11:18:40 -08:00
Graydon Hoare
a32d206d27 Implement autoderef in rustc. Un-XFAIL autoderef-full-lval.rs. 2011-01-24 18:03:31 -08:00
Graydon Hoare
2d7c2acf09 Switch from booleans to symbolic tags in a few places. 2011-01-24 15:26:10 -08:00
Graydon Hoare
90e329da6b First cut at translating const items. Support the literal forms at least. Un-XFAIL const.rs. 2011-01-21 12:09:25 -08:00
Graydon Hoare
51542b279f Fix bug in trans_for, un-XFAIL linear-for-loop.rs. 2011-01-21 08:25:13 -08:00
Graydon Hoare
6daec4004a First cut of trans_for. 2011-01-21 07:59:57 -08:00
Graydon Hoare
8bc57fa85e Tweak effect-checking rules in rustboot, remove/rewrite/re-auth impure cases in trans.rs 2011-01-21 07:59:56 -08:00