Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8304937

BufferedFieldBuilder.Model missing writeTo(DirectClassBuilder)

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 21
    • None
    • core-libs

      This affects creation of classes: for example, I was using a class transform that renames one class, chained with MethodParameters and/or Signature attributes dropping transforms. It ends up with this stack trace:

          java.lang.UnsupportedOperationException
                  at java.base/jdk.internal.classfile.impl.AbstractElement.writeTo(AbstractElement.java:35)
                  at java.base/jdk.internal.classfile.impl.DirectClassBuilder.with(DirectClassBuilder.java:76)
                  at java.base/jdk.internal.classfile.impl.DirectClassBuilder.with(DirectClassBuilder.java:49)
                  at java.base/jdk.internal.classfile.impl.ChainedClassBuilder.withField(ChainedClassBuilder.java:63)
                  at java.base/jdk.internal.classfile.ClassBuilder.withField(ClassBuilder.java:182)
                  at java.base/jdk.internal.classfile.components.ClassRemapper$ClassRemapperImpl.accept(ClassRemapper.java:176)
                  at java.base/jdk.internal.classfile.components.ClassRemapper$ClassRemapperImpl.accept(ClassRemapper.java:170)
                  at java.base/jdk.internal.classfile.ClassTransform.lambda$resolve$3(ClassTransform.java:166)
                  at java.base/java.lang.Iterable.forEach(Iterable.java:75)
                  at java.base/jdk.internal.classfile.impl.ClassImpl.forEachElement(ClassImpl.java:164)
                  at java.base/jdk.internal.classfile.ClassfileBuilder.transform(ClassfileBuilder.java:86)
                  at java.base/jdk.internal.classfile.impl.ClassImpl$2.accept(ClassImpl.java:181)
                  at java.base/jdk.internal.classfile.impl.ClassImpl$2.accept(ClassImpl.java:176)
                  at java.base/jdk.internal.classfile.Classfile.build(Classfile.java:217)
                  at java.base/jdk.internal.classfile.impl.ClassImpl.transform(ClassImpl.java:175)

      Looks like an accidental missing override.

            liach Chen Liang
            liach Chen Liang
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: