--- old/src/hotspot/share/classfile/systemDictionary.cpp 2019-03-27 16:10:29.391020993 +0100 +++ new/src/hotspot/share/classfile/systemDictionary.cpp 2019-03-27 16:10:29.091016029 +0100 @@ -297,11 +297,11 @@ protection_domain, CHECK_NULL); if (k != NULL) { - k = k->array_klass(fd.dimension(), CHECK_NULL); + k = k->array_klass(fd.storage_props(), fd.dimension(), CHECK_NULL); } } else { k = Universe::typeArrayKlassObj(t); - k = TypeArrayKlass::cast(k)->array_klass(fd.dimension(), CHECK_NULL); + k = TypeArrayKlass::cast(k)->array_klass(fd.storage_props(), fd.dimension(), CHECK_NULL); } return k; } @@ -1028,7 +1028,7 @@ k = SystemDictionary::find(fd.object_key(), class_loader, protection_domain, THREAD); } if (k != NULL) { - k = k->array_klass_or_null(fd.dimension()); + k = k->array_klass_or_null(fd.storage_props(), fd.dimension()); } } else { k = find(class_name, class_loader, protection_domain, THREAD); @@ -2265,7 +2265,7 @@ } // If element class already loaded, allocate array klass if (klass != NULL) { - klass = klass->array_klass_or_null(fd.dimension()); + klass = klass->array_klass_or_null(fd.storage_props(), fd.dimension()); } } else { MutexLocker mu(SystemDictionary_lock, THREAD);