Graydon Hoare
|
153efb58bc
|
Teach typeck to check obj field accesses.
|
2010-12-30 15:28:19 -08:00 |
|
Graydon Hoare
|
bc9db2e972
|
Teach resolve to find obj fields and ty params from methods.
|
2010-12-30 15:27:52 -08:00 |
|
Graydon Hoare
|
a9d03dd1a2
|
Add def id to ast for obj fields.
|
2010-12-30 15:27:19 -08:00 |
|
Rafael Ávila de Espíndola
|
09ef31caa0
|
Record the ast of uses and imports.
|
2010-12-30 11:21:37 -05:00 |
|
Graydon Hoare
|
ad19961c47
|
More mopping up wrong-named rules in the Makefile.
|
2010-12-29 17:46:22 -08:00 |
|
Graydon Hoare
|
454bf428ef
|
Remove LLVM rustboot backend.
|
2010-12-29 16:27:19 -08:00 |
|
Patrick Walton
|
a634b21563
|
rustc: Make parametric return types go through an out pointer
|
2010-12-29 19:08:35 -05:00 |
|
Rafael Ávila de Espíndola
|
2c6dd18224
|
Add a -shared option to rustc and don't try to look for main if it is given.
|
2010-12-29 11:21:16 -05:00 |
|
Rafael Ávila de Espíndola
|
f900792fa3
|
Parse 'import' directives in rustc.
|
2010-12-24 21:06:14 -08:00 |
|
Rafael Ávila de Espíndola
|
8d2fdac93b
|
Parse 'use' directives in rustc.
|
2010-12-24 17:03:46 -08:00 |
|
Graydon Hoare
|
d948208978
|
Add Rafael to AUTHORS.
|
2010-12-24 17:00:02 -08:00 |
|
Rafael Ávila de Espíndola
|
e67234b29c
|
Handle missing ocaml bindings for LLVM.
|
2010-12-24 16:58:52 -08:00 |
|
Graydon Hoare
|
5c7cd6419c
|
Modify translation of obj methods to accept an initial recursive-self-typed (in the LLVM sense) obj argument.
|
2010-12-23 17:31:16 -08:00 |
|
Graydon Hoare
|
f2195d8b0a
|
Print recursive LLVM types.
|
2010-12-23 17:05:27 -08:00 |
|
Patrick Walton
|
daac7a8b13
|
rustc: Add a type_has_dynamic_size predicate
|
2010-12-22 18:02:48 -08:00 |
|
Graydon Hoare
|
3f3a121043
|
Copy body tydesc and args into obj bodies.
|
2010-12-22 16:09:59 -08:00 |
|
Graydon Hoare
|
a2a642c17a
|
Correct bug in typechecking ctor arguments to nonempty objects.
|
2010-12-22 13:57:18 -08:00 |
|
Graydon Hoare
|
ac270fc854
|
Allocate heap cells to store non-empty object bodies.
|
2010-12-22 13:56:51 -08:00 |
|
Patrick Walton
|
0411132679
|
rustc: Move unification out of typeck.rs; trans will need it too.
|
2010-12-21 17:47:13 -08:00 |
|
Patrick Walton
|
e06263ff4b
|
rustc: Reference count the function context in typechecking so that passing it around via objects isn't as costly
|
2010-12-21 17:27:29 -08:00 |
|
Graydon Hoare
|
3504f4a4bf
|
Sort methods in object types.
|
2010-12-21 16:43:28 -08:00 |
|
Patrick Walton
|
744b164b7d
|
rustc: Move type logic out of typeck so trans doesn't look like it's calling into typeck
|
2010-12-21 16:24:17 -08:00 |
|
Patrick Walton
|
d7cbeba731
|
rustboot: Only bottom out at opaque IL types after finding two cycles. DON'T ASK ME WHY THIS WORKS.
|
2010-12-21 15:59:14 -08:00 |
|
Graydon Hoare
|
6443179bca
|
Add std.sort, with a simple mergesort.
|
2010-12-21 00:44:06 -08:00 |
|
Patrick Walton
|
b9286a7179
|
rustc: Sanitize names better. Puts out burning tinderbox on OS X.
|
2010-12-20 19:52:14 -08:00 |
|
Patrick Walton
|
5cbf8889d0
|
rustc: Add bind expressions to the AST
|
2010-12-20 18:58:18 -08:00 |
|
Graydon Hoare
|
ed1dddc33f
|
Null-check on obj box ptr, init to null. Un-XFAIL simple-obj.rs.
|
2010-12-20 17:28:07 -08:00 |
|
Graydon Hoare
|
399929ba0b
|
Support ty_obj in trans_field; simple-obj.rs compiles (but crashes).
|
2010-12-20 16:48:28 -08:00 |
|
Graydon Hoare
|
86188da348
|
Mop up cases of s/copy/take/, remove 'binding' terminology, whitespace police, and make obj/fn structural.
|
2010-12-20 16:26:38 -08:00 |
|
Patrick Walton
|
e70c695ab9
|
rustc: Use the passed-in tydescs for take and drop glue in parametric fns. Also fix a level-of-indirection problem with tydesc params.
|
2010-12-20 15:23:24 -08:00 |
|
Patrick Walton
|
194d7844ea
|
rustc: Print the type when we die in trans.make_drop_glue_inner
|
2010-12-20 14:44:04 -08:00 |
|
Patrick Walton
|
9fb2284600
|
rustc: Add a type param ID -> type descriptor mapping to function contexts
|
2010-12-20 14:35:04 -08:00 |
|
Graydon Hoare
|
7bd30f83e1
|
Put out burning tree (sizeof / alignof bug).
|
2010-12-20 12:54:50 -08:00 |
|
Graydon Hoare
|
490da3564b
|
Use gvars for vtbls rather than returning const immediates.
|
2010-12-20 11:41:32 -08:00 |
|
Graydon Hoare
|
6a8518c97b
|
Trailing whitespace police.
|
2010-12-20 11:41:32 -08:00 |
|
Patrick Walton
|
a7e9984999
|
rustc: Build tydescs for types, and make all take and drop operations go through the tydescs for simplicity (LLVM inlines them).
|
2010-12-20 10:23:37 -08:00 |
|
Patrick Walton
|
ad5e920276
|
rustc: Remove the unused "name" parameter from trans.new_builder
|
2010-12-17 18:42:15 -08:00 |
|
Patrick Walton
|
9b56b79296
|
rustc: Make some no-op take and drop glue for scalar types
|
2010-12-17 18:40:24 -08:00 |
|
Graydon Hoare
|
01bcb1d10e
|
Split part of typeck.check_fn out into typeck.check_item_fn, then check all fns, including obj fns.
|
2010-12-17 18:25:14 -08:00 |
|
Patrick Walton
|
7210a31e2a
|
rustc: Make all drop and take glue have the same signature, so we can put them in tydescs
|
2010-12-17 18:20:51 -08:00 |
|
Graydon Hoare
|
b00abd04e2
|
Record type annotations for methods.
|
2010-12-17 17:52:25 -08:00 |
|
Patrick Walton
|
c44c7c5ab3
|
rustc: Zero out slots after dropping them
|
2010-12-17 17:21:56 -08:00 |
|
Graydon Hoare
|
56e040e61a
|
Trans methods more correctly, and store vtbl pointer in pair returned from obj ctor.
|
2010-12-17 00:31:41 -08:00 |
|
Graydon Hoare
|
62d62ce4da
|
Remove calltup fields from ABI, add binding fields.
|
2010-12-16 23:26:07 -08:00 |
|
Graydon Hoare
|
87b18f3539
|
Un-XFAIL tag.rs.
|
2010-12-16 23:25:32 -08:00 |
|
Graydon Hoare
|
a3f828f941
|
Sketch trans_vtbl.
|
2010-12-16 18:34:04 -08:00 |
|
Patrick Walton
|
bfdba2dbcc
|
rustc: Translate parametric function signatures into task + type parameters + formal arguments
|
2010-12-16 16:35:19 -08:00 |
|
Graydon Hoare
|
31f0642da3
|
Stub out translation of obj ctors (no vtbl or body built).
|
2010-12-16 15:55:28 -08:00 |
|
Patrick Walton
|
51782d2c21
|
rustc: Add a type fold mechanism to the typechecker
|
2010-12-16 15:13:04 -08:00 |
|
Patrick Walton
|
a6c6e8679e
|
rustc: Only generalize on definition types that can actually be parametric
|
2010-12-16 13:59:20 -08:00 |
|