JDK-8035768 : Move TypeAnnotationPosition from Attribute.Compound to Attribute.TypeCompound
  • Type: Sub-task
  • Component: tools
  • Sub-Component: javac
  • Affected Version: 8,9
  • Priority: P4
  • Status: Closed
  • Resolution: Fixed
  • Submitted: 2014-02-25
  • Updated: 2014-07-18
  • Resolved: 2014-03-28
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9 b08Fixed
Related Reports
Blocks :  
Description
The current implementation of type annotations models type annotations as a special case of annotations.  However, the early stages of the javac pipeline have to consider that every annotation is potentially a type annotation.  Therefore, the relationship should be reversed.

Under the present model, type annotations are represented with Attribute.TypeCompound, while regular annotations are represented with Attribute.Compound, and there are generally two separate codepaths for dealing with these two classes.  This is a source of confusion and bugs, and should be eliminated.
Comments
Out for review
24-03-2014