NOTICE! This is a static HTML version of a legacy Fiji BugZilla bug.

The Fiji project now uses GitHub Issues for issue tracking.

Please file all new issues there.

Bug 260 - Java bug compiling Fiji on Mac OS X
Java bug compiling Fiji on Mac OS X
Status: RESOLVED FIXED
Product: Fiji
Classification: Unclassified
Component: Other
unspecified
Macintosh Mac OS
: P2 normal
Assigned To: ImageJ Bugs Mailing List
Depends on:
Blocks:
 
Reported: 2010-12-08 23:01 CST by Curtis Rueden
Modified: 2010-12-08 23:56 CST
0 users

See Also:

Description Curtis Rueden 2010-12-08 23:01:29 CST
When compiling Fiji today on Mac OS X, with the imglib and bio-formats submodules checked out, I received the following error message (obviously a bug in the Java compiler):

Building in imglib/
Building imglib-scripting.jar <- imglib-scripting/src/main/java/sc...
An exception has occurred in the compiler (1.6.0_22). Please file a bug at the Java Developer Connection (http://java.sun.com/webapps/bugreport)  after checking the Bug Parade for duplicates. Include your program and the following diagnostic in your report.  Thank you.
java.lang.AssertionError: com.sun.tools.javac.jvm.Gen$1ComplexityScanner
    at com.sun.tools.javac.jvm.Gen$1ComplexityScanner.visitWildcard(Gen.java:1573)
    at com.sun.tools.javac.tree.JCTree$JCWildcard.accept(JCTree.java:1746)
    at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:35)
    at com.sun.tools.javac.jvm.Gen$1ComplexityScanner.scan(Gen.java:1503)
    at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:43)
    at com.sun.tools.javac.tree.TreeScanner.visitTypeApply(TreeScanner.java:254)
    at com.sun.tools.javac.tree.JCTree$JCTypeApply.accept(JCTree.java:1697)
    at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:35)
    at com.sun.tools.javac.jvm.Gen$1ComplexityScanner.scan(Gen.java:1503)
    at com.sun.tools.javac.tree.TreeScanner.visitVarDef(TreeScanner.java:80)
    at com.sun.tools.javac.tree.JCTree$JCVariableDecl.accept(JCTree.java:691)
    at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:35)
    at com.sun.tools.javac.jvm.Gen$1ComplexityScanner.scan(Gen.java:1503)
    at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:43)
    at com.sun.tools.javac.tree.TreeScanner.visitBlock(TreeScanner.java:88)
    at com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:739)
    at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:35)
    at com.sun.tools.javac.jvm.Gen$1ComplexityScanner.scan(Gen.java:1503)
    at com.sun.tools.javac.tree.TreeScanner.visitForLoop(TreeScanner.java:105)
    at com.sun.tools.javac.jvm.Gen$1ComplexityScanner.visitForLoop(Gen.java:1511)
    at com.sun.tools.javac.tree.JCTree$JCForLoop.accept(JCTree.java:818)
    at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:35)
    at com.sun.tools.javac.jvm.Gen$1ComplexityScanner.scan(Gen.java:1503)
    at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:43)
    at com.sun.tools.javac.tree.TreeScanner.visitBlock(TreeScanner.java:88)
    at com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:739)
    at com.sun.tools.javac.jvm.Gen.estimateCodeComplexity(Gen.java:1577)
    at com.sun.tools.javac.jvm.Gen.visitTry(Gen.java:1297)
    at com.sun.tools.javac.tree.JCTree$JCTry.accept(JCTree.java:967)
    at com.sun.tools.javac.jvm.Gen.genDef(Gen.java:665)
    at com.sun.tools.javac.jvm.Gen.genStat(Gen.java:700)
    at com.sun.tools.javac.jvm.Gen.genStat(Gen.java:686)
    at com.sun.tools.javac.jvm.Gen.genStats(Gen.java:737)
    at com.sun.tools.javac.jvm.Gen.visitBlock(Gen.java:1013)
    at com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:739)
    at com.sun.tools.javac.jvm.Gen.genDef(Gen.java:665)
    at com.sun.tools.javac.jvm.Gen.genStat(Gen.java:700)
    at com.sun.tools.javac.jvm.Gen.genMethod(Gen.java:893)
    at com.sun.tools.javac.jvm.Gen.visitMethodDef(Gen.java:866)
    at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:639)
    at com.sun.tools.javac.jvm.Gen.genDef(Gen.java:665)
    at com.sun.tools.javac.jvm.Gen.genClass(Gen.java:2198)
    at com.sun.tools.javac.main.JavaCompiler.genCode(JavaCompiler.java:617)
    at com.sun.tools.javac.main.JavaCompiler.generate(JavaCompiler.java:1289)
    at com.sun.tools.javac.main.JavaCompiler.generate(JavaCompiler.java:1259)
    at com.sun.tools.javac.main.JavaCompiler.compile2(JavaCompiler.java:765)
    at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:730)
    at com.sun.tools.javac.main.Main.compile(Main.java:353)
    at com.sun.tools.javac.main.Main.compile(Main.java:279)
    at com.sun.tools.javac.main.Main.compile(Main.java:270)
    at com.sun.tools.javac.Main.compile(Main.java:100)
    at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at fiji.build.Fake.callJavac(Fake.java:2217)
    at fiji.build.Fake.compileJavas(Fake.java:2304)
    at fiji.build.Fake$Parser$Rule.compileJavas(Fake.java:1163)
    at fiji.build.Fake$Parser$CompileJar.action(Fake.java:1506)
    at fiji.build.Fake$Parser$Rule.make(Fake.java:1012)
    at fiji.build.Fake.fakeOrMake(Fake.java:2842)
    at fiji.build.Fake$Parser$SubFake.action(Fake.java:1390)
    at fiji.build.Fake$Parser$SubFake.action(Fake.java:1386)
    at fiji.build.Fake$Parser$SubFake.action(Fake.java:1361)
    at fiji.build.Fake$Parser$Rule.make(Fake.java:1012)
    at fiji.build.Fake$Parser$Rule.makePrerequisites(Fake.java:1091)
    at fiji.build.Fake$Parser$Rule.make(Fake.java:1007)
    at fiji.build.Fake.make(Fake.java:235)
    at fiji.build.Fake.main(Fake.java:63)
Fake failed: Compile error
    in rule imglib-scripting.jar <- imglib-scripting/src/main/java/sc...
    in rule jars/imglib-scripting.jar <- ij.jar jars/imglib.jar jars/...
    in rule all <- fiji jars/ij.jar misc/headless.jar plugins/loci_to...

Anybody else seeing this?
Comment 1 Johannes Schindelin 2010-12-08 23:31:19 CST
I tried it on a Quad-Core Intel Xeon with MacOSX 10.5.8, also Java 1.6.0_22, and it worked alright...
Comment 2 Johannes Schindelin 2010-12-08 23:34:06 CST
Actually, I take that back. Obviously, I was on the revision as per current fiji.git's master, not on the bleeding edge of imglib. Updating to imglib's master, I can reproduce.
Comment 3 Curtis Rueden 2010-12-08 23:39:55 CST
It looks like a bug in the imglib-scripting component. I know Albert wanted to reorganize that component anyway (move into Fiji proper?), so we can probably wait to see if the error goes away after the code moves.
Comment 4 Johannes Schindelin 2010-12-08 23:56:05 CST
Using git bisect (http://pacific.mpi-cbg.de/Pinpoint_regressions_with_Git), I was able to find out that the compilation error was triggered by commit 2c312ed5d. Together with the results from The Google, I was able to work around the bug in javac, and delivered the fix: http://pacific.mpi-cbg.de/cgi-bin/gitweb.cgi?p=imglib.git;a=commitdiff;h=3e014b79eaa2d4d59b673f20ead5f81f0cf7beb6;hb=refs/heads/master