Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Java generic signatures can't refer to type members #15093

Merged
merged 1 commit into from May 18, 2022

Conversation

smarter
Copy link
Member

@smarter smarter commented May 3, 2022

  • The PolyType case was dead code imported from Scala 2
  • The HKTypeLambda case was correct for eta-expanded classes
    (e.g. in t7932 Category[Tuple2] should get as signature
    Category<scala.Tuple2>), but not for other type lambdas
    where it could lead to type members appearing in the signature.
    Fixed by splitting the case into an EtaExpansion case and
    a case for all other HKTypeLambdas (which are just replaced
    by a wildcard).

Fixes #15091.

- The PolyType case was dead code imported from Scala 2
- The HKTypeLambda case was correct for eta-expanded classes
  (e.g. in t7932 `Category[Tuple2]` should get as signature
  `Category<scala.Tuple2>`), but not for other type lambdas
  where it could lead to type members appearing in the signature.
  Fixed by splitting the case into an EtaExpansion case and
  a case for all other HKTypeLambdas (which are just replaced
  by a wildcard).

Fixes scala#15091.
@smarter
Copy link
Member Author

smarter commented May 18, 2022

Ping for review.

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.

Type member appears in java generic signature (this breaks graal native and won't make javac happy either)
2 participants