Skip to content

Fix issue with certain synthetics missing in compiletime.typechecks#22978

Merged
hamzaremmal merged 1 commit intoscala:mainfrom
dotty-staging:fix-i22968
Apr 25, 2025
Merged

Fix issue with certain synthetics missing in compiletime.typechecks#22978
hamzaremmal merged 1 commit intoscala:mainfrom
dotty-staging:fix-i22968

Conversation

@jchyb
Copy link
Contributor

@jchyb jchyb commented Apr 11, 2025

Previously, instead of using the PostTyper phase directly, a typed tree Transformer was used. However, it did not transform the ClassInfo values using the PostTyper.transformInfo method, which lead to RefChecks not finding certain synthesized methods, throwing an incorrect error about a missing implementation. This is fixed by running the full suite of PostTyper transforms.

A minor refactor is included, to limit the repeated CompilationUnit construction and error checking.

FIxes #22968

Previously, instead of using the PostTyper phase directly, a typed tree
Transformer was used. However, it did not transform the ClassInfo
values using PostTyper.transformInfo, which lead to RefChecks not
finding certain synthesized methods, throwing an incorrect error about
a missing implementation. This is fixed by running the full suite of
PostTyper transforms. A minor refactor is included, to limit
the repeated CompilationUnit construction and error checking.
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.

Defining an enum in typeCheckErrors always returns errors

3 participants