Hi Remi,

Thanks for reporting this bug [1]. It has already been fixed, the fix can be accessed at [2],

Thanks,
Vicente

[1] https://bugs.openjdk.java.net/browse/JDK-8159439
[2] http://hg.openjdk.java.net/jdk9/dev/langtools/rev/d213ecfb98b2

On 06/13/2016 01:03 PM, Remi Forax wrote:
Hi Jon,
i've got an exception trying to reference in a module-info.java some modular 
jars generated by ASM,
i suppose there is a bug in the module-info generated by ASM but i'm not able 
to find it (javap is ok with the code ?)
Given that this exception is thrown by javac, it's likely that you can also 
harden the code of javac to avoid it. Again,
i suppose that the modular jars are rotten.

Here is the exception:
An exception has occurred in the compiler (9-ea). Please file a bug against the 
Java compiler via the Java bug reporting page (http://bugreport.java.com) after 
checking the Bug Database (http://bugs.java.com) for duplicates. Include your 
program and the following diagnostic in your report. Thank you.
java.lang.NullPointerException
        at 
com.sun.tools.javac.code.Symtab.lookupPackage(jdk.compiler@9-ea/Symtab.java:622)
        at 
com.sun.tools.javac.code.Symtab.enterClass(jdk.compiler@9-ea/Symtab.java:685)
        at 
com.sun.tools.javac.jvm.ClassReader.enterClass(jdk.compiler@9-ea/ClassReader.java:2356)
        at 
com.sun.tools.javac.jvm.ClassReader.readClassOrType(jdk.compiler@9-ea/ClassReader.java:502)
        at 
com.sun.tools.javac.jvm.ClassReader.readPool(jdk.compiler@9-ea/ClassReader.java:432)
        at 
com.sun.tools.javac.jvm.ClassReader.readClassSymbol(jdk.compiler@9-ea/ClassReader.java:516)
        at 
com.sun.tools.javac.jvm.ClassReader.readClass(jdk.compiler@9-ea/ClassReader.java:2423)
        at 
com.sun.tools.javac.jvm.ClassReader.readClassBuffer(jdk.compiler@9-ea/ClassReader.java:2501)
        at 
com.sun.tools.javac.jvm.ClassReader.readClassFile(jdk.compiler@9-ea/ClassReader.java:2514)
        at 
com.sun.tools.javac.code.ClassFinder.fillIn(jdk.compiler@9-ea/ClassFinder.java:358)
        at 
com.sun.tools.javac.code.ModuleFinder$1.complete(jdk.compiler@9-ea/ModuleFinder.java:311)
        at 
com.sun.tools.javac.code.Symbol.complete(jdk.compiler@9-ea/Symbol.java:602)
        at 
com.sun.tools.javac.code.Symbol$ClassSymbol.complete(jdk.compiler@9-ea/Symbol.java:1219)
        at 
com.sun.tools.javac.comp.Modules$2.complete(jdk.compiler@9-ea/Modules.java:461)
        at 
com.sun.tools.javac.code.Symtab.lambda$enterModule$10(jdk.compiler@9-ea/Symtab.java:748)
        at 
com.sun.tools.javac.code.Symbol.complete(jdk.compiler@9-ea/Symbol.java:602)
        at 
com.sun.tools.javac.comp.Modules.computeTransitiveClosure(jdk.compiler@9-ea/Modules.java:926)
        at 
com.sun.tools.javac.comp.Modules.allModules(jdk.compiler@9-ea/Modules.java:889)
        at 
com.sun.tools.javac.comp.Modules.completeModule(jdk.compiler@9-ea/Modules.java:978)
        at 
com.sun.tools.javac.comp.Modules.access$000(jdk.compiler@9-ea/Modules.java:118)
        at 
com.sun.tools.javac.comp.Modules$3.complete(jdk.compiler@9-ea/Modules.java:536)
        at 
com.sun.tools.javac.code.Symbol.complete(jdk.compiler@9-ea/Symbol.java:602)
        at 
com.sun.tools.javac.comp.Modules.computeTransitiveClosure(jdk.compiler@9-ea/Modules.java:926)
        at 
com.sun.tools.javac.comp.Modules.allModules(jdk.compiler@9-ea/Modules.java:889)
        at 
com.sun.tools.javac.comp.Modules.enter(jdk.compiler@9-ea/Modules.java:214)
        at 
com.sun.tools.javac.main.JavaCompiler.initModules(jdk.compiler@9-ea/JavaCompiler.java:1020)
        at 
com.sun.tools.javac.main.JavaCompiler.initModules(jdk.compiler@9-ea/JavaCompiler.java:1012)
        at 
com.sun.tools.javac.main.JavaCompiler.compile(jdk.compiler@9-ea/JavaCompiler.java:906)
        at 
com.sun.tools.javac.main.Main.compile(jdk.compiler@9-ea/Main.java:280)
        at 
com.sun.tools.javac.main.Main.compile(jdk.compiler@9-ea/Main.java:144)
        at com.sun.tools.javac.Main.compile(jdk.compiler@9-ea/Main.java:55)
        at com.sun.tools.javac.Main.main(jdk.compiler@9-ea/Main.java:41)


Step to reproduce, download that jar
   https://www.dropbox.com/s/3ieqah6wpawpsw0/jigsaw.zip?dl=0

and run:
   javac -modulesourcepath src -d classes -modulepath mlib/ 
src/fr.umlv.asm.test/module-info.java

cheers,
RĂ©mi

Reply via email to