Skip to content

compiler: reimplement interface type asserts#4375

Closed
aykevl wants to merge 1 commit intodevfrom
interface-type-assert-table
Closed

compiler: reimplement interface type asserts#4375
aykevl wants to merge 1 commit intodevfrom
interface-type-assert-table

Conversation

@aykevl
Copy link
Copy Markdown
Member

@aykevl aykevl commented Jul 31, 2024

This is a big reimplementation that simplifies the compiler a lot. Instead of storing the method set in metadata and lowering the type asserts as a whole program pass, this change just puts the list of methods in the type code (and a separate global for the interface type).

I'm still working on this. I'm not very happy with the binary size increase (~4%) but I have a few ideas how to reduce it. But I made a PR for initial review for those interested (@dgryski?)

This is also a step in the direction of #2870.

This is a big reimplementation that simplifies the compiler a lot.
Instead of storing the method set in metadata and lowering the type
asserts as a whole program pass, this change just puts the list of
methods in the type code (and a separate global for the interface type).
@dgryski
Copy link
Copy Markdown
Member

dgryski commented Oct 27, 2025

Are you still thinking of working on this?

@reteps
Copy link
Copy Markdown

reteps commented Dec 21, 2025

cc @aykevl -- my assumption is no?

@jakebailey
Copy link
Copy Markdown
Member

FWIW I took a crack at this and #4376 in #5304, since this unblocks my own usage.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants