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

8267923: [lworld] Javac's implementation differs from JEP401 in a few matters. #432

Closed
wants to merge 7 commits into from

Conversation

@sadayapalam
Copy link
Collaborator

@sadayapalam sadayapalam commented May 31, 2021

Cumulative fix for the following issues:

JDK-8267918 - Javac tolerates synchronizing on a primitive reference type
JDK-8267907 - Withdraw support for the experimental option -XDallowValueMemberCycles
JDK-8267843 - Duplicate error when primitive class instance is passed around before being fully initialized
JDK-8267841 - A primitive class that implements Cloneable is tolerated by javac
JDK-8267835 - Javac tolerates vacuous chaining to super constructor from primitive class constructor
JDK-8267965 - Javac disallows calls to super.{hashCode(), equals(), toString()} on a primitive instance receiver

Progress

  • Change must not contain extraneous whitespace

Issues

  • JDK-8267923: [lworld] Javac's implementation differs from JEP401 in a few matters.
  • JDK-8267918: [lworld] Javac tolerates synchronizing on a primitive reference type
  • JDK-8267907: [lworld] Withdraw support for the experimental option -XDallowValueMemberCycles
  • JDK-8267843: [lworld] Double diagnostics when primitive class instance is passed around before being fully initialized
  • JDK-8267841: [lworld] A primitive class that implements Cloneable is tolerated by javac
  • JDK-8267835: [lworld] Javac tolerates vacuous chaining to super constructor from primitive class constructor
  • JDK-8267965: [lworld] Javac disallows calls to super.{hashCode(), equals(), toString()} on a primitive instance receiver

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.java.net/valhalla pull/432/head:pull/432
$ git checkout pull/432

Update a local copy of the PR:
$ git checkout pull/432
$ git pull https://git.openjdk.java.net/valhalla pull/432/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 432

View PR using the GUI difftool:
$ git pr show -t 432

Using diff file

Download this PR as a diff file:
https://git.openjdk.java.net/valhalla/pull/432.diff

@sadayapalam
Copy link
Collaborator Author

@sadayapalam sadayapalam commented May 31, 2021

/issue add JDK-8267918, JDK-8267907, JDK-8267843, JDK-8267841, JDK-8267835, JDK-8267965

@bridgekeeper
Copy link

@bridgekeeper bridgekeeper bot commented May 31, 2021

👋 Welcome back sadayapalam! A progress list of the required criteria for merging this PR into lworld will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk
Copy link

@openjdk openjdk bot commented May 31, 2021

@sadayapalam This change now passes all automated pre-integration checks.

ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details.

After integration, the commit message for the final commit will be:

8267923: [lworld] Javac's implementation differs from JEP401 in a few matters.
8267918: [lworld] Javac tolerates synchronizing on a primitive reference type
8267907: [lworld] Withdraw support for the experimental option -XDallowValueMemberCycles
8267843: [lworld] Double diagnostics when primitive class instance is passed around before being fully initialized
8267841: [lworld] A primitive class that implements Cloneable is tolerated by javac
8267835: [lworld] Javac tolerates vacuous chaining to super constructor from primitive class constructor
8267965: [lworld] Javac disallows calls to super.{hashCode(), equals(), toString()} on a primitive instance receiver

You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed.

At the time when this comment was updated there had been 3 new commits pushed to the lworld branch:

  • 44cb67e: 8267818: [lworld] [AArch64] Shenandoah barrier set build warnings and register conflict
  • 0871590: 8266890: [lworld] [AArch64] add support for InlineTypePassFieldsAsArgs
  • 0f1c33c: 8267710: [lworld][lw3] Hook AlwaysAtomicAccesses to primitive classes atomicity rules

Please see this link for an up-to-date comparison between the source branch of this pull request and the lworld branch.
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details.

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

@openjdk
Copy link

@openjdk openjdk bot commented May 31, 2021

@sadayapalam
Adding additional issue to issue list: 8267918: [lworld] Javac tolerates synchronizing on a primitive reference type.

Adding additional issue to issue list: 8267907: [lworld] Withdraw support for the experimental option -XDallowValueMemberCycles.

Adding additional issue to issue list: 8267843: [lworld] Double diagnostics when primitive class instance is passed around before being fully initialized.

Adding additional issue to issue list: 8267841: [lworld] A primitive class that implements Cloneable is tolerated by javac.

Adding additional issue to issue list: 8267835: [lworld] Javac tolerates vacuous chaining to super constructor from primitive class constructor.

Adding additional issue to issue list: 8267965: [lworld] Javac disallows calls to super.{hashCode(), equals(), toString()} on a primitive instance receiver.

@sadayapalam
Copy link
Collaborator Author

@sadayapalam sadayapalam commented May 31, 2021

/integrate

@openjdk openjdk bot closed this May 31, 2021
@openjdk openjdk bot added integrated and removed ready rfr labels May 31, 2021
@openjdk
Copy link

@openjdk openjdk bot commented May 31, 2021

@sadayapalam Since your change was applied there have been 3 commits pushed to the lworld branch:

  • 44cb67e: 8267818: [lworld] [AArch64] Shenandoah barrier set build warnings and register conflict
  • 0871590: 8266890: [lworld] [AArch64] add support for InlineTypePassFieldsAsArgs
  • 0f1c33c: 8267710: [lworld][lw3] Hook AlwaysAtomicAccesses to primitive classes atomicity rules

Your commit was automatically rebased without conflicts.

Pushed as commit f1b3269.

💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

@sadayapalam sadayapalam deleted the JDK-8267923 branch May 31, 2021
@mlbridge
Copy link

@mlbridge mlbridge bot commented May 31, 2021

Webrevs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
1 participant