2018/5/18 3:11:25 -0700, per.li...@oracle.com: > On 05/17/2018 10:03 PM, mark.reinh...@oracle.com wrote: >> 2018/5/16 18:31:15 -0700, marti...@google.com: >>> I've been confused by NULL vs null for years. >> >> That’s because `NULL` in ReferenceQueue.java refers to the singleton >> object `ReferenceQueue.NULL`, not the null value. See the long comment >> at the top of Reference.java for an explanation. >> >> To improve this you could change mentions of `NULL` in the comments to >> `ReferenceQueue.NULL`, but changing them to `null` would be incorrect. > > The comments that were changed in the proposed patch refer to the > Reference.next and Reference.discovered fields, not Reference.queue. So > "null" should be correct there.
Oops, you’re right! Confused by my own twenty-year old code ... What’s missing here is a similar comment on the `Reference.queue` field. Suggested text: /* When active: queue with which this reference is registered * pending: queue with which this reference is registered * enqueued: ReferenceQueue.ENQUEUED * inactive: ReferenceQueue.NULL */ Martin -- while you’re at it, please lowercase “Enqueued:” and “Inactive:” in the other comments, and hard-wrap the comment on the `discovered` field to 80 columns. - Mark >>> 8203327: Small cleanups in java.lang.ref >>> http://cr.openjdk.java.net/~martin/webrevs/jdk/Reference-cleanup/ >>> https://bugs.openjdk.java.net/browse/JDK-8203327