[Checkers] Interning checker crashes on Daikon

Michael Ernst mernst at csail.mit.edu
Thu Aug 21 15:57:15 EDT 2008


Mahmood-

If you run "make check-interning" in $inv/java, the checker crashes.  See
below.
                    -Mike


make check-interning
jsr308_imports='checkers.interning.quals.*' /DS/home-0/mernst/research/invariants/scripts/javac-xlint -p '([/\\]jtb[/\\])|([/\\]junit[/\\])' javac -g -target 5 -typeprocessor checkers.interning.InterningChecker -Alint=-dotequals ./daikon/PptName.java ./daikon/inv/InvariantStatus.java ./daikon/util/StrTok.java ./daikon/util/Intern.java ./daikon/tools/WSMatch.java ./daikon/ValueTuple.java ./daikon/VarInfo.java ./daikon/VarInfoAux.java ./daikon/chicory/DeclReader.java ./daikon/chicory/DTraceReader.java ./daikon/VarInfoName.java ./daikon/FileIO.java ./daikon/Daikon.java ./daikon/ProglangType.java ./utilMDE/StrTok.java ./utilMDE/Intern.java


An annotation processor threw an uncaught exception.
Consult the following stack trace for details.
java.lang.NullPointerException
	at checkers.util.QualifierPolymorphism$PolyCollector.visitDeclared(QualifierPolymorphism.java:315)
	at checkers.util.QualifierPolymorphism$PolyCollector.visitDeclared(QualifierPolymorphism.java:277)
	at checkers.types.AnnotatedTypeMirror$AnnotatedDeclaredType.accept(AnnotatedTypeMirror.java:483)
	at checkers.types.visitors.SimpleAnnotatedTypeVisitor.visit(SimpleAnnotatedTypeVisitor.java:55)
	at checkers.util.QualifierPolymorphism$PolyCollector.visitArray(QualifierPolymorphism.java:344)
	at checkers.util.QualifierPolymorphism$PolyCollector.visitArray(QualifierPolymorphism.java:277)
	at checkers.types.AnnotatedTypeMirror$AnnotatedArrayType.accept(AnnotatedTypeMirror.java:893)
	at checkers.types.visitors.SimpleAnnotatedTypeVisitor.visit(SimpleAnnotatedTypeVisitor.java:55)
	at checkers.util.QualifierPolymorphism$PolyCollector.visitArray(QualifierPolymorphism.java:347)
	at checkers.util.QualifierPolymorphism$PolyCollector.visitArray(QualifierPolymorphism.java:277)
	at checkers.types.AnnotatedTypeMirror$AnnotatedArrayType.accept(AnnotatedTypeMirror.java:893)
	at checkers.types.visitors.SimpleAnnotatedTypeVisitor.visit(SimpleAnnotatedTypeVisitor.java:55)
	at checkers.util.QualifierPolymorphism$PolyCollector.visit(QualifierPolymorphism.java:306)
	at checkers.util.QualifierPolymorphism.annotate(QualifierPolymorphism.java:110)
	at checkers.types.BasicAnnotatedTypeFactory.methodFromUse(BasicAnnotatedTypeFactory.java:168)
	at checkers.types.TypeFromTree$TypeFromExpression.visitMethodInvocation(TypeFromTree.java:195)
	at checkers.types.TypeFromTree$TypeFromExpression.visitMethodInvocation(TypeFromTree.java:58)
	at com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1315)
	at com.sun.source.util.SimpleTreeVisitor.visit(SimpleTreeVisitor.java:52)
	at checkers.types.AnnotatedTypeFactory.fromTreeWithVisitor(AnnotatedTypeFactory.java:333)
	at checkers.types.AnnotatedTypeFactory.fromExpression(AnnotatedTypeFactory.java:298)
	at checkers.types.AnnotatedTypeFactory.getAnnotatedType(AnnotatedTypeFactory.java:189)
	at checkers.types.AnnotatedTypeFactory.getAnnotatedType(AnnotatedTypeFactory.java:713)
	at checkers.flow.Flow.propagate(Flow.java:323)
	at checkers.flow.Flow.visitVariable(Flow.java:627)
	at checkers.flow.Flow.visitVariable(Flow.java:55)
	at com.sun.tools.javac.tree.JCTree$JCVariableDecl.accept(JCTree.java:727)
	at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:67)
	at checkers.flow.Flow.scan(Flow.java:204)
	at checkers.flow.Flow.scan(Flow.java:55)
	at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:80)
	at com.sun.source.util.TreeScanner.scan(TreeScanner.java:90)
	at com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:159)
	at checkers.flow.Flow.visitBlock(Flow.java:839)
	at checkers.flow.Flow.visitBlock(Flow.java:55)
	at com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:781)
	at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:67)
	at checkers.flow.Flow.scan(Flow.java:204)
	at checkers.flow.Flow.scan(Flow.java:55)
	at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:80)
	at com.sun.source.util.TreeScanner.visitMethod(TreeScanner.java:143)
	at checkers.flow.Flow.visitMethod(Flow.java:853)
	at checkers.flow.Flow.visitMethod(Flow.java:55)
	at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:681)
	at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:67)
	at checkers.flow.Flow.scan(Flow.java:204)
	at checkers.flow.Flow.visitClass(Flow.java:548)
	at checkers.flow.Flow.visitClass(Flow.java:55)
	at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:604)
	at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:67)
	at checkers.flow.Flow.scan(Flow.java:204)
	at checkers.flow.Flow.scan(Flow.java:55)
	at com.sun.source.util.TreeScanner.scan(TreeScanner.java:90)
	at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:98)
	at com.sun.source.util.TreeScanner.visitCompilationUnit(TreeScanner.java:119)
	at com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:488)
	at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:67)
	at checkers.flow.Flow.scan(Flow.java:204)
	at checkers.types.BasicAnnotatedTypeFactory.annotateImplicit(BasicAnnotatedTypeFactory.java:139)
	at checkers.types.AnnotatedTypeFactory.getAnnotatedType(AnnotatedTypeFactory.java:193)
	at checkers.types.AnnotatedTypeFactory.getAnnotatedType(AnnotatedTypeFactory.java:698)
	at checkers.basetype.BaseTypeVisitor.visitClass(BaseTypeVisitor.java:120)
	at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:604)
	at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:49)
	at checkers.source.SourceChecker.process(SourceChecker.java:198)
	at com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEnvironment.java:738)
	at com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:667)
	at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:812)
	at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1002)
	at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:748)
	at com.sun.tools.javac.main.Main.compile(Main.java:386)
	at com.sun.tools.javac.main.Main.compile(Main.java:312)
	at com.sun.tools.javac.main.Main.compile(Main.java:303)
	at com.sun.tools.javac.Main.compile(Main.java:82)
	at com.sun.tools.javac.Main.main(Main.java:67)




More information about the checkers mailing list