8 Commits

Author SHA1 Message Date
Marijn Haverbeke
3a20dda7ea Get external interfaces / impls working
Issue #1227
2012-01-05 14:17:31 +01:00
Marijn Haverbeke
3971b520bc Use the right types for methods in trans_impl
This prevents misalignment between function and argument
types in corner cases.
2012-01-04 22:12:48 +01:00
Marijn Haverbeke
a7e1a35f88 Properly typecheck and compile invocations of generic methods.
Aligning the type parameters of the ifaces, impls, and methods
correctly in typeck is almost brain surgery. Seems to work now for
everything I threw at it, but might still break in other corner cases.

Issue #1227
2012-01-04 17:28:51 +01:00
Marijn Haverbeke
4e88d5ae92 Make resolution of dictionaries on bounded params work
Issue #1227
2012-01-03 16:37:41 +01:00
Marijn Haverbeke
e1dc40b271 More work on translating dictionary-passing
Reached a point where simple uses of interfaces without bounds work.

Issue #1227
2012-01-03 15:36:57 +01:00
Marijn Haverbeke
1741ef75ac Write out vtables for interface implementations
Issue #1227
2012-01-02 15:15:28 +01:00
Marijn Haverbeke
371b61a23d Drop two useless sub-passes from trans
Neither collect_tag_ctors nor the second pass in collect_items needed
to be separate passes.

Also remove obsolete obj_methods table kludge.
2012-01-02 15:15:28 +01:00
Marijn Haverbeke
a4694ce146 Create a trans_impl module 2012-01-02 15:15:27 +01:00