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

JDK-8251986: [lworld] implement Class::valueType and Class::referenceType in Java #152

Closed
wants to merge 11 commits into from

Conversation

mlchung
Copy link
Member

@mlchung mlchung commented Aug 18, 2020

Now that javac generates the reference projection class as a sealed type,
this patch reimplements Class::valueType and Class::referenceType in Java.
VM no longer has any knowledge of the value projection type and reference projection type.

This patch includes a temporary workaround to disable the preview feature check
for sealed types because inline types are not (yet) a preview feature in valhalla repo.
This workaround should be removed when it's time to make inline class a preview feature.


Progress

  • Change must not contain extraneous whitespace

Issue

  • JDK-8251986: [lworld] implement Class::valueType and Class::referenceType in Java

Reviewers

  • Roger Riggs (rriggs - Committer)

Download

$ git fetch https://git.openjdk.java.net/valhalla pull/152/head:pull/152
$ git checkout pull/152

@bridgekeeper
Copy link

bridgekeeper bot commented Aug 18, 2020

👋 Welcome back mchung! A progress list of the required criteria for merging this PR into lworld will be added to the body of your pull request.

@openjdk
Copy link

openjdk bot commented Aug 18, 2020

@mlchung This change now passes all automated pre-integration checks, type /integrate in a new comment to proceed. After integration, the commit message will be:

8251986: [lworld] implement Class::valueType and Class::referenceType in Java

Reviewed-by: rriggs
  • If you would like to add a summary, use the /summary command.
  • To credit additional contributors, use the /contributor command.
  • To add additional solved issues, use the /issue command.

There are currently no new commits on the lworld branch since the last update of the source branch of this PR. If another commit should be pushed before you perform the /integrate command, your PR will be automatically rebased. If you would like to avoid potential automatic rebasing, specify the current head hash when integrating, like this: /integrate 2bde31fdb2b26c87ec2207f2c223d7fd58adfb37.

➡️ To integrate this PR with the above commit message to the lworld branch, type /integrate in a new comment.

@mlbridge
Copy link

mlbridge bot commented Aug 18, 2020

Webrevs

Copy link
Member

@hseigel hseigel left a comment

Hi Mandy,
The JVM changes look good.
Thanks, Harold

src/java.base/share/classes/java/lang/Class.java Outdated Show resolved Hide resolved
src/java.base/share/classes/java/lang/Class.java Outdated Show resolved Hide resolved
src/java.base/share/classes/java/lang/Class.java Outdated Show resolved Hide resolved
src/java.base/share/classes/java/lang/Class.java Outdated Show resolved Hide resolved
@mlchung
Copy link
Member Author

mlchung commented Aug 20, 2020

/integrate

@openjdk openjdk bot closed this Aug 20, 2020
@openjdk openjdk bot added integrated and removed ready rfr labels Aug 20, 2020
@openjdk
Copy link

openjdk bot commented Aug 20, 2020

@mlchung
Pushed as commit a5aa3a9.

@mlchung mlchung deleted the projection-types branch Sep 25, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
3 participants