JDK-8199115 : NullPointerException at com.sun.tools.javac.comp.MemberEnter.baseEnv
  • Type: Bug
  • Component: tools
  • Sub-Component: javac
  • Affected Version: 8
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • OS: generic
  • CPU: generic
  • Submitted: 2018-03-06
  • Updated: 2018-03-06
  • Resolved: 2018-03-06
Related Reports
Duplicate :  
Description
FULL PRODUCT VERSION :
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)

ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows [Version 10.0.16299.248]

A DESCRIPTION OF THE PROBLEM :
> cat Error.java
class Error<T,T,T> {

}
> javac -version
javac 1.8.0_144
> javac .\Error.java
���������������������������������������������(1.8.0_144)���Bug Database (http://bugs.java.com)���������������������������������������������Java bug������������������������(http://bugreport.java.com)���Java���������������������������bug������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
java.lang.NullPointerException
        at com.sun.tools.javac.comp.MemberEnter.baseEnv(MemberEnter.java:1388)
        at com.sun.tools.javac.comp.MemberEnter.complete(MemberEnter.java:1046)
        at com.sun.tools.javac.code.Symbol.complete(Symbol.java:574)
        at com.sun.tools.javac.code.Symbol$ClassSymbol.complete(Symbol.java:1037)
        at com.sun.tools.javac.code.Symbol$ClassSymbol.flags(Symbol.java:973)
        at com.sun.tools.javac.code.Symbol$ClassSymbol.getKind(Symbol.java:1101)
        at com.sun.tools.javac.code.Kinds.kindName(Kinds.java:162)
        at com.sun.tools.javac.comp.Check.duplicateError(Check.java:329)
        at com.sun.tools.javac.comp.Check.checkUnique(Check.java:3380)
        at com.sun.tools.javac.comp.Enter.visitTypeParameter(Enter.java:454)
        at com.sun.tools.javac.tree.JCTree$JCTypeParameter.accept(JCTree.java:2224)
        at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:258)
        at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:272)
        at com.sun.tools.javac.comp.Enter.visitClassDef(Enter.java:418)
        at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:693)
        at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:258)
        at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:272)
        at com.sun.tools.javac.comp.Enter.visitTopLevel(Enter.java:334)
        at com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:518)
        at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:258)
        at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:272)
        at com.sun.tools.javac.comp.Enter.complete(Enter.java:486)
        at com.sun.tools.javac.comp.Enter.main(Enter.java:471)
        at com.sun.tools.javac.main.JavaCompiler.enterTrees(JavaCompiler.java:982)
        at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:857)
        at com.sun.tools.javac.main.Main.compile(Main.java:523)
        at com.sun.tools.javac.main.Main.compile(Main.java:381)
        at com.sun.tools.javac.main.Main.compile(Main.java:370)
        at com.sun.tools.javac.main.Main.compile(Main.java:361)
        at com.sun.tools.javac.Main.compile(Main.java:56)
        at com.sun.tools.javac.Main.main(Main.java:42)



REPRODUCIBILITY :
This bug can be reproduced always.


Comments
This is known issue JDK-8052070, this has been already fixed in 9. Upgrading to JDK9 should resolve this problem JDK-8052070 has been fixed in 9 ea b48, as the executing attached test case confirms the duplicate issue 8u172 - Fail 9 ea b47 - Fail 9 ea b48 - Pass // JDK-8052070 is fixed here 10 ea b44 - Pass
06-03-2018