In our prerelease testing we see an issue with javac / javadoc.
P2 because it seems to be a regression in 21.0.8 to be delivered in about 4 weeks. 21.0.8 had several backports to javac: [21.0.8 javac issues|https://bugs.openjdk.org/browse/JDK-8354893?filter=47405&jql=(issue%20in%20linked-subquery(%22issue%20in%20linked-subquery(%5C%22issue%20in%20linked-subquery(%5C%5C%5C%22fixVersion%20in%20(21.0.8)%20AND%20status%20in%20(Resolved%2C%20Closed)%20AND%20Resolution%20not%20in%20(%5C%5C%5C%5C%5C%5C%5C%22Won%27t%20Fix%5C%5C%5C%5C%5C%5C%5C%22)%5C%5C%5C%22%2C%20backport%2C%20inward)%5C%22%2C%20backport%2C%20outward)%20AND%20fixVersion%20in%20(21.0.8)%22%2C%20backport%2C%20inward)%20OR%20fixVersion%20in%20(21.0.8)%20AND%20status%20in%20(Resolved%2C%20Closed)%20AND%20Resolution%20not%20in%20(%22Won%27t%20Fix%22)%20AND%20issue%20not%20in%20linked-subquery(%22issue%20in%20linked-subquery(%5C%22fixVersion%20in%20(21.0.8)%5C%22%2C%20backport%2C%20inward)%22%2C%20backport%2C%20outward))%20%20AND%20type%20!%3D%20CSR%20AND%20labels%20not%20in%20(release-note%2C%20testbug%2C%20noreg-self%2C%20testonly%2C%20test-only)%20%20AND%20subcomponent%20in%20(javac)%20ORDER%20BY%20id%20DESC]
The failing code was introduced byJDK-8341779.
The stack trace we see is
java.lang.NullPointerException: Cannot invoke "com.sun.tools.javac.util.List.iterator()" because "s.params" is null
at jdk.compiler/com.sun.tools.javac.jvm.ClassReader$TypeAnnotationSymbolVisitor.visitMethodSymbol(ClassReader.java:2333)
at jdk.compiler/com.sun.tools.javac.jvm.ClassReader$TypeAnnotationSymbolVisitor.visitMethodSymbol(ClassReader.java:2289)
at jdk.compiler/com.sun.tools.javac.code.Symbol$MethodSymbol.accept(Symbol.java:2305)
at jdk.compiler/com.sun.tools.javac.code.Types$DefaultSymbolVisitor.visit(Types.java:4927)
at jdk.compiler/com.sun.tools.javac.jvm.ClassReader.addTypeAnnotationsToSymbol(ClassReader.java:2278)
at jdk.compiler/com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.run(ClassReader.java:2261)
at jdk.compiler/com.sun.tools.javac.comp.Annotate.flush(Annotate.java:191)
at jdk.compiler/com.sun.tools.javac.code.ClassFinder.complete(ClassFinder.java:322)
at jdk.compiler/com.sun.tools.javac.code.Symbol.complete(Symbol.java:683)
at jdk.compiler/com.sun.tools.javac.code.Symbol$ClassSymbol.complete(Symbol.java:1452)
at jdk.compiler/com.sun.tools.javac.code.Symbol.apiComplete(Symbol.java:689)
at jdk.compiler/com.sun.tools.javac.code.Symbol$TypeSymbol.getEnclosedElements(Symbol.java:860)
at jdk.compiler/com.sun.tools.javac.code.Symbol$ClassSymbol.getEnclosedElements(Symbol.java:1417)
at jdk.compiler/com.sun.tools.javac.code.Symbol$ClassSymbol.getEnclosedElements(Symbol.java:1260)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.getItems0(Utils.java:1782)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.recursiveGetItems(Utils.java:1763)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.recursiveGetItems(Utils.java:1766)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.getItems(Utils.java:1745)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.getAllClassesUnfiltered(Utils.java:1678)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.SerializedFormBuilder.buildPackageSerializedForm(SerializedFormBuilder.java:171)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.SerializedFormBuilder.buildSerializedFormSummaries(SerializedFormBuilder.java:158)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.SerializedFormBuilder.buildSerializedForm(SerializedFormBuilder.java:141)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.SerializedFormBuilder.build(SerializedFormBuilder.java:129)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.AbstractDoclet.generateOtherFiles(AbstractDoclet.java:228)
at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.HtmlDoclet.generateOtherFiles(HtmlDoclet.java:215)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.AbstractDoclet.startGeneration(AbstractDoclet.java:213)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.AbstractDoclet.run(AbstractDoclet.java:110)
at jdk.javadoc/jdk.javadoc.doclet.StandardDoclet.run(StandardDoclet.java:104)
at jdk.javadoc/jdk.javadoc.internal.tool.Start.parseAndExecute(Start.java:575)
at jdk.javadoc/jdk.javadoc.internal.tool.Start.begin(Start.java:398)
at jdk.javadoc/jdk.javadoc.internal.tool.Start.begin(Start.java:347)
at jdk.javadoc/jdk.javadoc.internal.tool.Main.execute(Main.java:57)
at jdk.javadoc/jdk.javadoc.internal.tool.Main.main(Main.java:46)
P2 because it seems to be a regression in 21.0.8 to be delivered in about 4 weeks. 21.0.8 had several backports to javac: [21.0.8 javac issues|https://bugs.openjdk.org/browse/JDK-8354893?filter=47405&jql=(issue%20in%20linked-subquery(%22issue%20in%20linked-subquery(%5C%22issue%20in%20linked-subquery(%5C%5C%5C%22fixVersion%20in%20(21.0.8)%20AND%20status%20in%20(Resolved%2C%20Closed)%20AND%20Resolution%20not%20in%20(%5C%5C%5C%5C%5C%5C%5C%22Won%27t%20Fix%5C%5C%5C%5C%5C%5C%5C%22)%5C%5C%5C%22%2C%20backport%2C%20inward)%5C%22%2C%20backport%2C%20outward)%20AND%20fixVersion%20in%20(21.0.8)%22%2C%20backport%2C%20inward)%20OR%20fixVersion%20in%20(21.0.8)%20AND%20status%20in%20(Resolved%2C%20Closed)%20AND%20Resolution%20not%20in%20(%22Won%27t%20Fix%22)%20AND%20issue%20not%20in%20linked-subquery(%22issue%20in%20linked-subquery(%5C%22fixVersion%20in%20(21.0.8)%5C%22%2C%20backport%2C%20inward)%22%2C%20backport%2C%20outward))%20%20AND%20type%20!%3D%20CSR%20AND%20labels%20not%20in%20(release-note%2C%20testbug%2C%20noreg-self%2C%20testonly%2C%20test-only)%20%20AND%20subcomponent%20in%20(javac)%20ORDER%20BY%20id%20DESC]
The failing code was introduced by
The stack trace we see is
java.lang.NullPointerException: Cannot invoke "com.sun.tools.javac.util.List.iterator()" because "s.params" is null
at jdk.compiler/com.sun.tools.javac.jvm.ClassReader$TypeAnnotationSymbolVisitor.visitMethodSymbol(ClassReader.java:2333)
at jdk.compiler/com.sun.tools.javac.jvm.ClassReader$TypeAnnotationSymbolVisitor.visitMethodSymbol(ClassReader.java:2289)
at jdk.compiler/com.sun.tools.javac.code.Symbol$MethodSymbol.accept(Symbol.java:2305)
at jdk.compiler/com.sun.tools.javac.code.Types$DefaultSymbolVisitor.visit(Types.java:4927)
at jdk.compiler/com.sun.tools.javac.jvm.ClassReader.addTypeAnnotationsToSymbol(ClassReader.java:2278)
at jdk.compiler/com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.run(ClassReader.java:2261)
at jdk.compiler/com.sun.tools.javac.comp.Annotate.flush(Annotate.java:191)
at jdk.compiler/com.sun.tools.javac.code.ClassFinder.complete(ClassFinder.java:322)
at jdk.compiler/com.sun.tools.javac.code.Symbol.complete(Symbol.java:683)
at jdk.compiler/com.sun.tools.javac.code.Symbol$ClassSymbol.complete(Symbol.java:1452)
at jdk.compiler/com.sun.tools.javac.code.Symbol.apiComplete(Symbol.java:689)
at jdk.compiler/com.sun.tools.javac.code.Symbol$TypeSymbol.getEnclosedElements(Symbol.java:860)
at jdk.compiler/com.sun.tools.javac.code.Symbol$ClassSymbol.getEnclosedElements(Symbol.java:1417)
at jdk.compiler/com.sun.tools.javac.code.Symbol$ClassSymbol.getEnclosedElements(Symbol.java:1260)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.getItems0(Utils.java:1782)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.recursiveGetItems(Utils.java:1763)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.recursiveGetItems(Utils.java:1766)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.getItems(Utils.java:1745)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.getAllClassesUnfiltered(Utils.java:1678)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.SerializedFormBuilder.buildPackageSerializedForm(SerializedFormBuilder.java:171)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.SerializedFormBuilder.buildSerializedFormSummaries(SerializedFormBuilder.java:158)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.SerializedFormBuilder.buildSerializedForm(SerializedFormBuilder.java:141)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.SerializedFormBuilder.build(SerializedFormBuilder.java:129)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.AbstractDoclet.generateOtherFiles(AbstractDoclet.java:228)
at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.HtmlDoclet.generateOtherFiles(HtmlDoclet.java:215)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.AbstractDoclet.startGeneration(AbstractDoclet.java:213)
at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.AbstractDoclet.run(AbstractDoclet.java:110)
at jdk.javadoc/jdk.javadoc.doclet.StandardDoclet.run(StandardDoclet.java:104)
at jdk.javadoc/jdk.javadoc.internal.tool.Start.parseAndExecute(Start.java:575)
at jdk.javadoc/jdk.javadoc.internal.tool.Start.begin(Start.java:398)
at jdk.javadoc/jdk.javadoc.internal.tool.Start.begin(Start.java:347)
at jdk.javadoc/jdk.javadoc.internal.tool.Main.execute(Main.java:57)
at jdk.javadoc/jdk.javadoc.internal.tool.Main.main(Main.java:46)
- caused by
-
JDK-8341779 [REDO BACKPORT] type annotations are not visible to javac plugins across compilation boundaries (JDK-8225377)
-
- Resolved
-