Semantics of an empty PermittedSubtypes attribute for the VM
brian.goetz at oracle.com
Thu Apr 2 14:19:15 UTC 2020
At the language level, we won’t let you define a class with an empty set of permitted types; you should define a final class instead.
But, having the VM treat an empty PS attribute as if it were not there seems wrong; I would think an empty PS attribute would be a class file error.
> On Apr 2, 2020, at 7:58 AM, Remi Forax <forax at univ-mlv.fr> wrote:
> Hi all,
> With my ASM hat,
> from the JVMS POV, javac can not generate an empty list of permitted subtypes and the implementation in Hotspot ignores the attribute PermittedSubtypes if there is no subtype listed.
> So currently, ASM doesn't allow you to create an attribute PermittedSubtypes with an empty number of subtypes.
> I believe this is the correct semantics, i just want to be sure that i've not overlook something.
More information about the amber-spec-experts