> 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 way. > > HashSet/Serialization.java: unchanged because the existing HashSet<I...
Bill Huang has updated the pull request incrementally with one additional commit since the last revision: Implemented review comments ------------- Changes: - all: https://git.openjdk.org/valhalla/pull/2501/files - new: https://git.openjdk.org/valhalla/pull/2501/files/0cc66e6c..b704f531 Webrevs: - full: https://webrevs.openjdk.org/?repo=valhalla&pr=2501&range=01 - incr: https://webrevs.openjdk.org/?repo=valhalla&pr=2501&range=00-01 Stats: 118 lines in 5 files changed: 103 ins; 2 del; 13 mod Patch: https://git.openjdk.org/valhalla/pull/2501.diff Fetch: git fetch https://git.openjdk.org/valhalla.git pull/2501/head:pull/2501 PR: https://git.openjdk.org/valhalla/pull/2501
