PropertyMapWrapper is a class that implements equals and hashCode on property maps to allow for reuse of maps. It currently just compares properties, but not the owning object's class. If a property map is used with different owner classes accessing any field property will result in a ClassCastException. I noticed this while working on JDK-8077149, but the code that triggers the ClassCastException will not be part of the fix so I'm filing a separate bug.