JDK-4851398 : generics: compiler crash when typevar bound is inner class
  • Type: Bug
  • Component: tools
  • Sub-Component: javac
  • Affected Version: 5.0
  • Priority: P4
  • Status: Closed
  • Resolution: Cannot Reproduce
  • OS: solaris_8
  • CPU: generic
  • Submitted: 2003-04-21
  • Updated: 2004-01-26
  • Resolved: 2004-01-26
Related Reports
Relates :  
Description
==========$ cat -n Inference.java 
     1  public class Inference {
     2      class A {}
     3      interface B {}
     4      class Foo<T extends A & B>{}
     5  }
==========$ newjavac -source 1.5 Inference.java 
+ /usr/java1.5/bin/javac -source 1.5 Inference.java
An exception has occurred in the compiler (1.5.0-internal). Please file a bug at the Java Developer Connection (http://java.sun.com/cgi-bin/bugreport.cgi)  after checking the Bug Parade for duplicates. Include your program and the following diagnostic in your report.  Thank you.
java.lang.NullPointerException
        at com.sun.tools.javac.comp.Flow.visitIdent(Flow.java:1155)
        at com.sun.tools.javac.tree.Tree$Ident.accept(Tree.java:930)
        at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:31)
        at com.sun.tools.javac.comp.Flow.scanExpr(Flow.java:492)
        at com.sun.tools.javac.comp.Flow.visitApply(Flow.java:1057)
        at com.sun.tools.javac.tree.Tree$Apply.accept(Tree.java:742)
        at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:31)
        at com.sun.tools.javac.tree.TreeScanner.visitExec(TreeScanner.java:171)
        at com.sun.tools.javac.tree.Tree$Exec.accept(Tree.java:660)
        at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:31)
        at com.sun.tools.javac.comp.Flow.scanStat(Flow.java:476)
        at com.sun.tools.javac.comp.Flow.scanStats(Flow.java:484)
        at com.sun.tools.javac.comp.Flow.visitBlock(Flow.java:724)
        at com.sun.tools.javac.tree.Tree$Block.accept(Tree.java:482)
        at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:31)
        at com.sun.tools.javac.comp.Flow.scanStat(Flow.java:476)
        at com.sun.tools.javac.comp.Flow.visitMethodDef(Flow.java:676)
        at com.sun.tools.javac.tree.Tree$MethodDef.accept(Tree.java:428)
        at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:31)
        at com.sun.tools.javac.comp.Flow.visitClassDef(Flow.java:616)
        at com.sun.tools.javac.tree.Tree$ClassDef.accept(Tree.java:394)
        at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:31)
        at com.sun.tools.javac.comp.Flow.scanStat(Flow.java:476)
        at com.sun.tools.javac.comp.Flow.scanDef(Flow.java:462)
        at com.sun.tools.javac.comp.Flow.visitClassDef(Flow.java:608)
        at com.sun.tools.javac.tree.Tree$ClassDef.accept(Tree.java:394)
        at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:31)
        at com.sun.tools.javac.comp.Flow.analyzeTree(Flow.java:1184)
        at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:352)
        at com.sun.tools.javac.main.Main.compile(Main.java:494)
        at com.sun.tools.javac.Main.compile(Main.java:41)
        at com.sun.tools.javac.Main.main(Main.java:32)
+ exit 0
==========$ 

Comments
PUBLIC COMMENTS ...
10-06-2004

EVALUATION A compiler crash can only be considered a bug. ###@###.### 2003-04-21 This crash doesn't occur on the latest Tiger builds. Closing as not reproducible. ###@###.### 2004-01-26
21-04-2003