On Fri, 6 Sep 2024 00:45:14 GMT, Shaojin Wen <s...@openjdk.org> wrote:
>> src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java line >> 1288: >> >>> 1286: if (staticConcat) { >>> 1287: clb.withSuperclass(CD_Object) >>> 1288: .withFlags(ACC_FINAL | ACC_SUPER | >>> ACC_SYNTHETIC); >> >> According to #19517, project lilliput wants utility classes to be declared >> `abstract` instead of `final` so their pointers won't be encodable in object >> headers > > Do I need to declare it as ACC_INTERFACE? Many utility classes do this. interface has extra restrictions that can fail class validation, such as fields must be public static final. So I recommend just using abstract class. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20675#discussion_r1746356802