On Fri, 9 Oct 2026 16:21:58 GMT, Bill Huang <[email protected]> wrote:
>> Changed Tests: >> >> HashMap/KeySetRemove.java: equal ValueClass keys mapped to null can be >> removed from HashMap and TreeMap. >> >> HashMap/NullKeyAtResize.java: null-key resize behavior remains correct when >> surrounding keys are ValueClass instances. >> >> HashMap/PutNullKey.java: colliding comparable tree-bin keys are >> value-capable via @AsValueClass. >> >> HashMap/ReplaceExisting.java: replacing an existing ValueClass key during >> active iteration does not corrupt the iterator. >> >> HashMap/SetValue.java: Map.Entry.setValue() returns the old ValueClass value. >> >> HashMap/ToArray.java: toArray() coverage is added for ValueClass keys, >> values, and set elements across hash and linked variants. >> >> HashMap/TreeBinAssert.java: tree-bin iterator-removal coverage now uses a >> value-capable key. >> >> Hashtable/EqualsCast.java: Provider/Hashtable equality now includes matching >> ValueClass key/value entries. >> >> Hashtable/SimpleSerialization.java: serialization round-trip now also covers >> Hashtable<Integer,Integer>. >> >> LinkedHashMap/ComputeIfAbsentAccessOrder.java: access-order behavior is >> repeated with Integer keys. >> >> LinkedHashMap/EmptyMapIterator.java: fail-fast iterator behavior is repeated >> with Integer key/value entries. >> >> LinkedList/AddAll.java: append-order behavior is repeated with ValueClass >> elements. >> >> LinkedList/Clone.java: clone/equality checks for LinkedList, TreeSet, and >> TreeMap subclasses now include ValueClass contents. >> >> Unchanged Tests: >> >> HashMap/HashMapCloneLeak.java: unchanged because the test depends on >> WeakReference reachability. Value objects are not valid weak-reference >> targets, so adding VClass would not match the regression being tested. >> >> HashMap/OverrideIsEmpty.java: unchanged because the test is about HashMap >> subclass method dispatch. Value classes cannot extend HashMap, and changing >> only the key/value payload would not add meaningful value-class coverage. >> >> HashMap/WhiteBoxResizeTest.java: unchanged because it is a >> white-box/internal capacity and table-sizing test using >> reflection/VarHandles over HashMap, LinkedHashMap, HashSet, and WeakHashMap >> internals. Its purpose is sizing/lazy allocation/resize arithmetic, not >> key/value equality or value-object behavior. >> >> HashMap/ToString.java: unchanged because it specifically verifies that >> HashMap.Entry.toString() does not throw when the map contains null keys or >> values. Adding value-class keys or values would not extend the original >> null-handling regression in a meaningful ... > > Bill Huang has updated the pull request incrementally with one additional > commit since the last revision: > > Fixed code indentation. Closing this PR. As Stuart suggested, the work has been split into two clean PRs: - PR #33391 (JDK-8394676), already integrated: reverts the duplicated VClass test code that the JEP 401 integration added to the java/util/Collections tests. - A new PR under the same bug ID(JDK-8384611) coming shortly: the remaining value-class coverage changes in HashMap/PutNullKey and Collections/Ser. ------------- PR Comment: https://git.openjdk.org/jdk/pull/32201#issuecomment-6220327930
