RFR: 8271623: Omit enclosing instance fields from inner classes that don't use it [v4]
Vicente Romero
vromero at openjdk.java.net
Mon Nov 22 21:18:07 UTC 2021
On Mon, 15 Nov 2021 20:18:06 GMT, Liam Miller-Cushon <cushon at openjdk.org> wrote:
>> This change omits the synthetic `this$0` field from inner classes that do not access any enclosing instance state.
>
> Liam Miller-Cushon has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits:
>
> - Don't remove enclosing instance fields from serializable classes without serialVersionUIDs
> - Enable enclosing instance optimization for --release 18 and newer
> - Add a test case with nested inner classes
> - 8271623: Omit enclosing instance fields from inner classes that don't use it
src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Target.java line 210:
> 208: * instance state.
> 209: */
> 210: public boolean omitUnusedPrivateSyntheticEnclosingInstanceFields() {
nit: what about a shorter name for this one?
-------------
PR: https://git.openjdk.java.net/jdk/pull/4966
More information about the compiler-dev
mailing list