RFR: 8345678: compute_modifiers should not be in create_mirror [v2]

Coleen Phillimore coleenp at openjdk.org
Wed Dec 11 14:12:42 UTC 2024


On Wed, 11 Dec 2024 02:49:40 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> I moved the TypeArrayKlass modifiers to apply to TypeArrayKlass, so they're not accidentally used for ObjArrayKlass, or any other new ArrayKlass that should have different modifiers.  I made the virtual function be defined for the most specific class.
>
> To be clear I would expect arrayKlass to define a pure virtual function for this, and then each subclass overrides as required. Otherwise you can't generally operate on an arrayKlass but must always know what subtype you are dealing with.

Klass has a pure virtual function for this, so ArrayKlass is abstract.  There isn't a reason to redeclare it in ArrayKlass.

     virtual jint compute_modifier_flags() const = 0;

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/22618#discussion_r1880266526


More information about the serviceability-dev mailing list