Compiler crash - AssertionError

Neal Gafter neal at gafter.com
Thu Jun 19 08:42:20 PDT 2008


Thanks for the report.  This is very interesting; the inferred type
for T is A&B.  I'll look at this when I resume development.

Regards,
Neal

On Thu, Jun 19, 2008 at 3:15 AM, Mark Mahieu
<mark at twistedbanana.demon.co.uk> wrote:
> This class triggers an AssertionError:
>
>
> class AssertionErrorCrash {
>
>        interface A {}
>        interface B {}
>
>        static class AB1 implements A, B {}
>        static class AB2 implements A, B {}
>
>        static <T> void foo({=>T} fn1, {=>T} fn2) {}
>
>        public static void main(String[] args) {
>
>                foo({=> new AB1()}, {=> new AB2()});
>        }
> }
>
>
> java.lang.AssertionError
>        at
> com.sun.tools.javac.jvm.ClassWriter.enterInner(ClassWriter.java:902)
>        at
> com.sun.tools.javac.jvm.ClassWriter.assembleClassSig(ClassWriter.java:387)
>        at
> com.sun.tools.javac.jvm.ClassWriter.assembleSig(ClassWriter.java:305)
>        at
> com.sun.tools.javac.jvm.ClassWriter.assembleSig(ClassWriter.java:318)
>        at com.sun.tools.javac.jvm.ClassWriter.typeSig(ClassWriter.java:444)
>        at
> com.sun.tools.javac.jvm.ClassWriter.writeMemberAttrs(ClassWriter.java:696)
>        at
> com.sun.tools.javac.jvm.ClassWriter.writeMethod(ClassWriter.java:1011)
>        at
> com.sun.tools.javac.jvm.ClassWriter.writeMethods(ClassWriter.java:1467)
>        at
> com.sun.tools.javac.jvm.ClassWriter.writeClassFile(ClassWriter.java:1548)
>        at
> com.sun.tools.javac.jvm.ClassWriter.writeClass(ClassWriter.java:1485)
>        at
> com.sun.tools.javac.main.JavaCompiler.genCode(JavaCompiler.java:646)
>        at
> com.sun.tools.javac.main.JavaCompiler.generate(JavaCompiler.java:1315)
>        at
> com.sun.tools.javac.main.JavaCompiler.generate(JavaCompiler.java:1285)
>        at
> com.sun.tools.javac.main.JavaCompiler.compile2(JavaCompiler.java:793)
>        at
> com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:758)
>        at com.sun.tools.javac.main.Main.compile(Main.java:380)
>        at com.sun.tools.javac.main.Main.compile(Main.java:306)
>        at com.sun.tools.javac.main.Main.compile(Main.java:297)
>        at com.sun.tools.javac.Main.compile(Main.java:82)
>        at com.sun.tools.javac.Main.main(Main.java:67)
>
>
> Regards,
>
> Mark
>
>



More information about the closures-dev mailing list