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

[lworld] Examine Class::getAnnotatedInterfaces and other annotation-related API

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • repo-valhalla
    • repo-valhalla
    • core-libs

      After the introduction of the two new top interface types viz IdentityObject and InlineObject that implicitly get injected, the following tier1 tests fail:

      java/lang/annotation/TypeAnnotationReflection.java
      java/lang/annotation/typeAnnotations/GetAnnotatedInterfaces.java
      java/lang/reflect/Generics/TestC1.java
      java/lang/reflect/Generics/TestC2.java

      This is because java.lang.Class.getGenericInterfaces() and
      java.lang.Class.getAnnotatedInterfaces() and
      java.lang.Class.getInterfaces() now start exposing the injected interface.

      At least in the case of java.lang.Class.getAnnotatedInterfaces(),
      the present specification may call for the injected interface to be suppressed:

      ("<p> If this {@code Class} object represents a class or interface whose
           * declaration does not explicitly indicate any annotated superinterfaces,
           * the return value is an array of length 0.")

      Bsaically this ticket is raised to figure out what is the right thing to do from an API's standpoint and adjust the API/tests accordingly.

            sadayapalam Srikanth Adayapalam (Inactive)
            sadayapalam Srikanth Adayapalam (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: