There are a few classes with copy constructors that don't (explicitly) construct a base class. This was found by attempting to enable -Wextra, which warns about such copy constructors. All of the classes in question have ResourceObj as a base class. However, simply calling the ResourceObj copy constructor with the object being copied from (as tried by JDK-8213414) doesn't work. A large number of tests are failing the jdk/jdk CI due to:
# Internal Error (/scratch/mesos/slaves/2dd962d0-8988-479b-a804-57ab764ada59-S1584/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/057f8d29-ff08-4ab5-9cf9-e6c81d19e3fc/runs/0c9d0343-6017-4923-b027-fc6c4ead127b/workspace/open/src/hotspot/share/memory/allocation.cpp:218), pid=26288, tid=6659
# assert(~(_allocation_t[0] | allocation_mask) != (uintptr_t)this || !is_type_set()) failed: embedded or stack only, this(0x00007fb22406cf80) type 1 a[0]=(0xffff804ddbf9307e) a[1]=(0x00007fb22406cf91)