Javac throws AssertionError(Unexpected intersection type) for CompoundTypeGenerics

Maurizio Cimadamore maurizio.cimadamore at oracle.com
Tue Jan 10 09:35:22 PST 2012


Hi,
this bug has been fixed in the latest push.

Thanks for the report
Maurizio

On 09/01/12 09:41, bitter_fox wrote:
> Javac(Revision: 1245) throws AssertionError when I compile this program:
>
> import java.util.*;
>
> public class Test3
> {
>      interface Marker1
>      {}
>
>      interface Marker2
>      {}
>
>      static class Object1 implements Marker1, Marker2
>      {}
>
>      static class Object2 implements Marker1, Marker2
>      {}
>
>      interface SAM1<RET, ARG1>
>      {
>          RET invoke(ARG1 arg1);
>      }
>
>      public static void main(String[] args)
>      {
>          Test3.test(Arrays.asList(new Object1(), new Object2()), e ->  e);
>      }
>
>      public static<T>  void test(Iterable<T>  iterable, SAM1<T, T>  sam)
>      {}
> }
>
> This is the StackTrace:
>
> java.lang.AssertionError: Unexpected intersection type:
> java.lang.Object&Main.M
> arker1&Main.Marker2
>          at
> com.sun.tools.javac.jvm.ClassWriter.enterInner(ClassWriter.java:895)
>          at
> com.sun.tools.javac.jvm.ClassWriter.assembleClassSig(ClassWriter.java
> :383)
>          at
> com.sun.tools.javac.jvm.ClassWriter.assembleSig(ClassWriter.java:307)
>
>          at
> com.sun.tools.javac.jvm.ClassWriter.assembleSig(ClassWriter.java:410)
>
>          at
> com.sun.tools.javac.jvm.ClassWriter.assembleClassSig(ClassWriter.java
> :402)
>          at
> com.sun.tools.javac.jvm.ClassWriter.assembleSig(ClassWriter.java:307)
>
>          at
> com.sun.tools.javac.jvm.ClassWriter.writeClassFile(ClassWriter.java:1
> 592)
>          at
> com.sun.tools.javac.jvm.ClassWriter.writeClass(ClassWriter.java:1506)
>
>          at
> com.sun.tools.javac.main.JavaCompiler.genCode(JavaCompiler.java:728)
>          at
> com.sun.tools.javac.main.JavaCompiler.generate(JavaCompiler.java:1466
> )
>          at
> com.sun.tools.javac.main.JavaCompiler.generate(JavaCompiler.java:1434
> )
>          at
> com.sun.tools.javac.main.JavaCompiler.compile2(JavaCompiler.java:885)
>
>          at
> com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:844)
>          at com.sun.tools.javac.main.Main.compile(Main.java:430)
>          at com.sun.tools.javac.main.Main.compile(Main.java:344)
>          at com.sun.tools.javac.main.Main.compile(Main.java:335)
>          at com.sun.tools.javac.Main.compile(Main.java:76)
>          at com.sun.tools.javac.Main.main(Main.java:61)
>
> Was this problem already known?
>
> Thank you,
> bitter_fox
>



More information about the lambda-dev mailing list