JDK-8003306 : Compiler crash: Calculation of inner class access broken due to incorrect hasTag conversion
  • Type: Bug
  • Component: tools
  • Sub-Component: javac
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2012-11-13
  • Updated: 2013-10-22
  • Resolved: 2012-11-13
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 8
8 b66Fixed
Related Reports
Relates :  
Description
Compiler crashing:
    [javac] java.lang.NullPointerException
    [javac]     at com.sun.tools.javac.jvm.Code.emitop0(Code.java:538)
    [javac]     at com.sun.tools.javac.jvm.Items$SelfItem.load(Items.java:367)
    [javac]     at com.sun.tools.javac.jvm.Gen.genArgs(Gen.java:852)
    [javac]     at com.sun.tools.javac.jvm.Gen.visitNewClass(Gen.java:1729)
    [javac]     at com.sun.tools.javac.tree.JCTree$JCNewClass.accept(JCTree.java:1436)
due to bad code generated by LambdaToMethod, in turn caused by missed detection of inner class constructor, in turn caused by binary sense wrong in conversion from != TAG to hasTag().


Comments
Fix known and tested
13-11-2012