From a6726b66dbb3ffa7b2245bb9c27c4bc87148f39c Mon Sep 17 00:00:00 2001 From: Jim Laskey Date: Wed, 7 Jun 2023 11:34:23 +0000 Subject: [PATCH] 8309568: javac crashes attempting to -Xprint on a class file of an unnamed class Reviewed-by: darcy, jlahoda --- .../share/classes/com/sun/tools/javac/jvm/ClassReader.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassReader.java b/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassReader.java index f13900f1f55..7189dc5fe33 100644 --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassReader.java +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassReader.java @@ -2731,7 +2731,10 @@ public class ClassReader { } readClass(c); if (previewClassFile) { - if ((c.flags_field & SYNTHETIC) != 0 && c.isSubClass(syms.objectType.tsym, types)) { + if ((c.flags_field & SYNTHETIC) != 0 && + c.owner.kind == PCK && + (c.flags_field & AUXILIARY) == 0 && + (c.flags_field & FINAL) != 0) { c.flags_field |= UNNAMED_CLASS; } }