-
Notifications
You must be signed in to change notification settings - Fork 6.1k
8336080: Fix -Wzero-as-null-pointer-constant warnings in ClassLoaderStats ctor #20109
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
Conversation
👋 Welcome back kbarrett! A progress list of the required criteria for merging this PR into |
@kimbarrett 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:
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 63 new commits pushed to the
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 |
@kimbarrett The following label will be automatically applied to this pull request:
When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing list. If you would like to change these labels, use the /label pull request command. |
_class_loader(), | ||
_parent(), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why are these not initialized with nullptr
given we have code like:
(cls._class_loader == nullptr ? ...)
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would work to do so, though I kind of wish otherwise.
I wish one wrote
(cls._class_loader == oop() ? ...)
and
_class_loader = oop();
instead of
_class_loader = nullptr;
but I think that ship sailed a long time ago. Instead we have some really questionable conversions
available in the (debug-only) oop class. Maybe we can trim those down a bit now that we consistently
use nullptr and can use std::nullptr_t as an overload type. Maybe I'll take a look at that sometime.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry missed this update. Thanks for explanation. I'm okay with things as they stand here.
Thanks for reviews @dholmes-ora and @walulyai |
/integrate |
Going to push as commit 59bf3d7.
Your commit was automatically rebased without conflicts. |
@kimbarrett Pushed as commit 59bf3d7. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
Mailing list message from Flauber on hotspot-runtime-dev: how to unsubscribe? Please help! On Tue, Jul 16, 2024 at 2:56?PM Kim Barrett <kbarrett at openjdk.org> wrote: -------------- next part -------------- |
Please review this change to member initializers in the ClassLoaderStats
constructor.
The initial value for members of pointer type are changed from 0 to nullptr.
The initializers for members of oop type are changed from a value of 0 to
using value initialization. In debug builds this calls the provided default
ctor for the (debug-only) oop class, which initialized the underlying value to
nullptr. In release builds (where oop is a type alias for oopDesc*) this is a
zero initialization of the pointer-typed member, but without triggering
-Wzero-as-null-pointer-constant warnings.
Testing: mach5 tier1
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/20109/head:pull/20109
$ git checkout pull/20109
Update a local copy of the PR:
$ git checkout pull/20109
$ git pull https://git.openjdk.org/jdk.git pull/20109/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 20109
View PR using the GUI difftool:
$ git pr show -t 20109
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/20109.diff
Webrev
Link to Webrev Comment