Skip to content

Conversation

@tlively
Copy link
Member

@tlively tlively commented Nov 19, 2025

We were not previously recording that the input to extern.convert_any
has to be a subtype of anyref. This meant that it was possible for
Unsubtyping to optimize too aggressively and break casts.

We were not previously recording that the input to extern.convert_any
has to be a subtype of anyref. This meant that it was possible for
Unsubtyping to optimize too aggressively and break casts.
@tlively tlively requested a review from kripken November 19, 2025 21:17
@tlively tlively enabled auto-merge (squash) November 19, 2025 21:20
@tlively tlively mentioned this pull request Nov 19, 2025
case RefAsNonNull:
self()->noteCast(curr->value, curr);
return;
case AnyConvertExtern:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doesn't this require extern?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In principle, yes, but extern has no defined subtypes, so in practice (for Unsubtyping, at least) it doesn't matter.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right, I guess it doesn't make a difference...

@tlively tlively merged commit 653e424 into main Nov 19, 2025
16 checks passed
@tlively tlively deleted the unsubtyping-extern-convert-any branch November 19, 2025 22:44
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.

3 participants