Skip to content

Conversation

@jchyb
Copy link
Contributor

@jchyb jchyb commented Feb 24, 2025

This PR fixes the 2 issues found in #20449, split into 2 commits.

The first commit fixes the stale symbol related issue found if the files from the issue minimization are compiled together. After suspending and retrying compilation, the classDefs that are defined directly in packages previously would sometimes not have companion objects regenerated, instead relying on the stale symbols from the previous run, causing them not to to pass the reallyExists check when looking for a specific ref. Now we make sure to go through lastKnwonDenotation, since the current one may not exists and may not point us to a Module flag when checking if to regenerate.

The second commit fixes the opaque type alias rhs leaking in a macro. That was caused by building proxies for all parts of the type, including type arguments to opaque types - from the perspective of a type like Object[OpaqueType], the opaque type rhs should not be visible.

@jchyb jchyb changed the title Fix i20449 stale and leaking opaque Fix opaque types leaking rhs when inlined and found in type params (and a related stale symbol issue) Feb 24, 2025
@jchyb jchyb force-pushed the fix-i20449-stale-and-leaking-opaque branch from 40f57f2 to 0469796 Compare February 24, 2025 15:28
@jchyb jchyb closed this Feb 24, 2025
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.

2 participants