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

Annotation processing api returns default modifier for interface without default methods

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2
    • Resolution: Fixed
    • Affects Version/s: 8
    • Fix Version/s: 8
    • Component/s: core-libs

      Description

      Annotation processing api returns default modifier for interface without default methods, but with overriden method. Interface modifiers are different when annotation processor is used on class files and source files.

      The example sources are attached.

      When I process source file
      > C:\Java\8b106\windows-i586\bin\javac.exe -classpath C:\work\Oracle\Proc\out\production\Proc -processor jck.proc.Proc C:\work\Oracle\Proc\src\jck\proc\Test.java

      everything is fine, the reported modifiers are abstract.

      When I use it on class:
      C:\Java\8b106\windows-i586\bin\javac.exe -classpath C:\Users\ORA-56284\Dropbox\work\Oracle\Proc\out\production\Proc -processor jck.proc.Proc jck.proc.i2

      the reported modifiers are [abstract, default].

      Sources attached.

        Attachments

        1. Proc.java
          0.7 kB
          Victor Rudometov
        2. Test.java
          0.1 kB
          Victor Rudometov

          Activity

            People

            • Assignee:
              jlahoda Jan Lahoda
              Reporter:
              vrudomet Victor Rudometov
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Due:
                Created:
                Updated:
                Resolved: