checker-framework icon indicating copy to clipboard operation
checker-framework copied to clipboard

Checker framework crash running Signedness checker on jOOQ

Open markro49 opened this issue 1 year ago • 3 comments

jOOQ build must be run on java 17

git clone markro49/jOOQ cd jOOQ git checkout test cd jOOQ (wd is now jOOQ/jOOQ)

mvn -V -B -e clean compile -Dcheckerframework.checkers=org.checkerframework.checker.signedness.SignednessChecker -DskipTests=true -Dcheckerframework.suppress="type.anno.before" |& tee log

Unfortunately, this compiles about 1950 files and I was not able to reduce. Takes about 15 minutes on my machine.

Result is: ; The Checker Framework crashed. Please report the crash. Compilation unit: /home/markro/myjooq/jOOQ/src/main/java/org/jooq/Records.java Last visited tree at line 560 column 9: return Collectors.groupingBy( Exception: java.lang.Throwable; java.lang.Throwable at org.checkerframework.javacutil.BugInCF.(BugInCF.java:22) at org.checkerframework.framework.type.visitor.AbstractAtmComboVisitor.defaultAction(AbstractAtmComboVisitor.java:52) at org.checkerframework.framework.type.StructuralEqualityComparer.defaultAction(StructuralEqualityComparer.java:56) at org.checkerframework.framework.type.StructuralEqualityComparer.defaultAction(StructuralEqualityComparer.java:29) at org.checkerframework.framework.type.visitor.AbstractAtmComboVisitor.visitTypevar_Declared(AbstractAtmComboVisitor.java:542) at org.checkerframework.framework.util.AtmCombo.accept(AtmCombo.java:588) at org.checkerframework.framework.type.StructuralEqualityComparer.areEqual(StructuralEqualityComparer.java:93) at org.checkerframework.framework.type.StructuralEqualityComparer.visitTypevar_Typevar(StructuralEqualityComparer.java:294) at org.checkerframework.framework.type.StructuralEqualityComparer.visitTypevar_Typevar(StructuralEqualityComparer.java:29) at org.checkerframework.framework.util.AtmCombo.accept(AtmCombo.java:612) at org.checkerframework.framework.type.StructuralEqualityComparer.areEqual(StructuralEqualityComparer.java:93) at org.checkerframework.framework.type.StructuralEqualityComparer.checkOrAreEqual(StructuralEqualityComparer.java:166) at org.checkerframework.framework.type.StructuralEqualityComparer.areAllEqual(StructuralEqualityComparer.java:144) at org.checkerframework.framework.type.StructuralEqualityComparer.visitTypeArgs(StructuralEqualityComparer.java:235) at org.checkerframework.framework.type.StructuralEqualityComparer.visitDeclared_Declared(StructuralEqualityComparer.java:214) at org.checkerframework.framework.type.StructuralEqualityComparer.visitDeclared_Declared(StructuralEqualityComparer.java:29) at org.checkerframework.framework.util.AtmCombo.accept(AtmCombo.java:312) at org.checkerframework.framework.type.StructuralEqualityComparer.areEqual(StructuralEqualityComparer.java:93) at org.checkerframework.framework.type.StructuralEqualityComparer.areEqualInHierarchy(StructuralEqualityComparer.java:103) at org.checkerframework.framework.type.DefaultTypeHierarchy.areEqualInHierarchy(DefaultTypeHierarchy.java:235) at org.checkerframework.framework.type.DefaultTypeHierarchy.isContainedBy(DefaultTypeHierarchy.java:310) at org.checkerframework.framework.type.DefaultTypeHierarchy.isContainedMany(DefaultTypeHierarchy.java:544) at org.checkerframework.framework.type.DefaultTypeHierarchy.visitTypeArgs(DefaultTypeHierarchy.java:521) at org.checkerframework.framework.type.DefaultTypeHierarchy.visitDeclared_Declared(DefaultTypeHierarchy.java:447) at org.checkerframework.framework.type.DefaultTypeHierarchy.visitDeclared_Declared(DefaultTypeHierarchy.java:46) at org.checkerframework.framework.util.AtmCombo.accept(AtmCombo.java:312) at org.checkerframework.framework.type.DefaultTypeHierarchy.isSubtype(DefaultTypeHierarchy.java:156) at org.checkerframework.framework.type.DefaultTypeHierarchy.isSubtype(DefaultTypeHierarchy.java:134) at org.checkerframework.common.basetype.BaseTypeVisitor.commonAssignmentCheck(BaseTypeVisitor.java:2995) at org.checkerframework.common.value.ValueVisitor.commonAssignmentCheck(ValueVisitor.java:93) at org.checkerframework.common.basetype.BaseTypeVisitor.commonAssignmentCheck(BaseTypeVisitor.java:2970) at org.checkerframework.common.value.ValueVisitor.commonAssignmentCheck(ValueVisitor.java:74) at org.checkerframework.common.basetype.BaseTypeVisitor.visitReturn(BaseTypeVisitor.java:2171) at org.checkerframework.common.basetype.BaseTypeVisitor.visitReturn(BaseTypeVisitor.java:183) at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCReturn.accept(JCTree.java:1717) at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86) at org.checkerframework.framework.source.SourceVisitor.scan(SourceVisitor.java:92) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:396) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:183) at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111) at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86) at org.checkerframework.framework.source.SourceVisitor.scan(SourceVisitor.java:92) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:396) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:183) at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111) at jdk.compiler/com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:272) at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1103) at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86) at org.checkerframework.framework.source.SourceVisitor.scan(SourceVisitor.java:92) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:396) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:183) at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96) at jdk.compiler/com.sun.source.util.TreeScanner.visitMethod(TreeScanner.java:224) at org.checkerframework.framework.source.SourceVisitor.visitMethod(SourceVisitor.java:110) at org.checkerframework.common.basetype.BaseTypeVisitor.visitMethod(BaseTypeVisitor.java:1023) at org.checkerframework.common.value.ValueVisitor.visitMethod(ValueVisitor.java:476) at org.checkerframework.common.value.ValueVisitor.visitMethod(ValueVisitor.java:43) at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:953) at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86) at org.checkerframework.framework.source.SourceVisitor.scan(SourceVisitor.java:92) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:396) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:183) at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96) at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111) at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119) at jdk.compiler/com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:203) at org.checkerframework.framework.source.SourceVisitor.visitClass(SourceVisitor.java:98) at org.checkerframework.common.basetype.BaseTypeVisitor.processClassTree(BaseTypeVisitor.java:597) at org.checkerframework.common.basetype.BaseTypeVisitor.visitClass(BaseTypeVisitor.java:543) at org.checkerframework.common.basetype.BaseTypeVisitor.visitClass(BaseTypeVisitor.java:183) at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:860) at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:60) at org.checkerframework.framework.source.SourceVisitor.visit(SourceVisitor.java:86) at org.checkerframework.framework.source.SourceChecker.typeProcess(SourceChecker.java:1030) at org.checkerframework.common.basetype.BaseTypeChecker.typeProcess(BaseTypeChecker.java:560) at org.checkerframework.common.basetype.BaseTypeChecker.typeProcess(BaseTypeChecker.java:553) at org.checkerframework.javacutil.AbstractTypeProcessor$AttributionTaskListener.finished(AbstractTypeProcessor.java:188) at jdk.compiler/com.sun.tools.javac.api.ClientCodeWrapper$WrappedTaskListener.finished(ClientCodeWrapper.java:854) at jdk.compiler/com.sun.tools.javac.api.MultiTaskListener.finished(MultiTaskListener.java:132) at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1394) at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1351) at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:946) at jdk.compiler/com.sun.tools.javac.main.Main.compile(Main.java:317) at jdk.compiler/com.sun.tools.javac.main.Main.compile(Main.java:176) at jdk.compiler/com.sun.tools.javac.Main.compile(Main.java:64) at jdk.compiler/com.sun.tools.javac.Main.main(Main.java:50) error: AnnotatedTypeMirrors aren't structurally equal. type1 = AnnotatedTypeVariable( K extends @UnknownSignedness Object ) type2 = AnnotatedDeclaredType( @UnknownSignedness Object ) visitHistory = org.checkerframework.framework.type.StructuralEqualityVisitHistory@4530270 ; The Checker Framework crashed. Please report the crash. Compilation unit: /home/markro/myjooq/jOOQ/src/main/java/org/jooq/Records.java Last visited tree at line 560 column 9: return Collectors.groupingBy( Exception: java.lang.Throwable; java.lang.Throwable at org.checkerframework.javacutil.BugInCF.(BugInCF.java:22) at org.checkerframework.framework.type.visitor.AbstractAtmComboVisitor.defaultAction(AbstractAtmComboVisitor.java:52) at org.checkerframework.framework.type.StructuralEqualityComparer.defaultAction(StructuralEqualityComparer.java:56) at org.checkerframework.framework.type.StructuralEqualityComparer.defaultAction(StructuralEqualityComparer.java:29) at org.checkerframework.framework.type.visitor.AbstractAtmComboVisitor.visitTypevar_Declared(AbstractAtmComboVisitor.java:542) at org.checkerframework.framework.util.AtmCombo.accept(AtmCombo.java:588) at org.checkerframework.framework.type.StructuralEqualityComparer.areEqual(StructuralEqualityComparer.java:93) at org.checkerframework.framework.type.StructuralEqualityComparer.visitTypevar_Typevar(StructuralEqualityComparer.java:294) at org.checkerframework.framework.type.StructuralEqualityComparer.visitTypevar_Typevar(StructuralEqualityComparer.java:29) at org.checkerframework.framework.util.AtmCombo.accept(AtmCombo.java:612) at org.checkerframework.framework.type.StructuralEqualityComparer.areEqual(StructuralEqualityComparer.java:93) at org.checkerframework.framework.type.StructuralEqualityComparer.areEqual(StructuralEqualityComparer.java:93) at org.checkerframework.framework.type.StructuralEqualityComparer.checkOrAreEqual(StructuralEqualityComparer.java:166) at org.checkerframework.framework.type.StructuralEqualityComparer.areAllEqual(StructuralEqualityComparer.java:144) at org.checkerframework.framework.type.StructuralEqualityComparer.visitTypeArgs(StructuralEqualityComparer.java:235) at org.checkerframework.framework.type.StructuralEqualityComparer.visitDeclared_Declared(StructuralEqualityComparer.java:214) at org.checkerframework.framework.type.StructuralEqualityComparer.visitDeclared_Declared(StructuralEqualityComparer.java:29) at org.checkerframework.framework.util.AtmCombo.accept(AtmCombo.java:312) at org.checkerframework.framework.type.StructuralEqualityComparer.areEqual(StructuralEqualityComparer.java:93) at org.checkerframework.framework.type.StructuralEqualityComparer.areEqualInHierarchy(StructuralEqualityComparer.java:103) at org.checkerframework.framework.type.DefaultTypeHierarchy.areEqualInHierarchy(DefaultTypeHierarchy.java:235) at org.checkerframework.framework.type.DefaultTypeHierarchy.isContainedBy(DefaultTypeHierarchy.java:310) at org.checkerframework.framework.type.DefaultTypeHierarchy.isContainedMany(DefaultTypeHierarchy.java:544) at org.checkerframework.framework.type.DefaultTypeHierarchy.visitTypeArgs(DefaultTypeHierarchy.java:521) at org.checkerframework.framework.type.DefaultTypeHierarchy.visitDeclared_Declared(DefaultTypeHierarchy.java:447) at org.checkerframework.framework.type.DefaultTypeHierarchy.visitDeclared_Declared(DefaultTypeHierarchy.java:46) at org.checkerframework.framework.util.AtmCombo.accept(AtmCombo.java:312) at org.checkerframework.framework.type.DefaultTypeHierarchy.isSubtype(DefaultTypeHierarchy.java:156) at org.checkerframework.framework.type.DefaultTypeHierarchy.isSubtype(DefaultTypeHierarchy.java:134) at org.checkerframework.common.basetype.BaseTypeVisitor.commonAssignmentCheck(BaseTypeVisitor.java:2995) at org.checkerframework.common.basetype.BaseTypeVisitor.commonAssignmentCheck(BaseTypeVisitor.java:2970) at org.checkerframework.common.basetype.BaseTypeVisitor.visitReturn(BaseTypeVisitor.java:2171) at org.checkerframework.common.basetype.BaseTypeVisitor.visitReturn(BaseTypeVisitor.java:183) at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCReturn.accept(JCTree.java:1717) at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86) at org.checkerframework.framework.source.SourceVisitor.scan(SourceVisitor.java:92) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:396) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:183) at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111) at jdk.compiler/com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:272) at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1103) at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86) at org.checkerframework.framework.source.SourceVisitor.scan(SourceVisitor.java:92) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:396) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:183) at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96) at jdk.compiler/com.sun.source.util.TreeScanner.visitMethod(TreeScanner.java:224) at org.checkerframework.framework.source.SourceVisitor.visitMethod(SourceVisitor.java:110) at org.checkerframework.common.basetype.BaseTypeVisitor.visitMethod(BaseTypeVisitor.java:1023) at org.checkerframework.checker.signedness.SignednessVisitor.visitMethod(SignednessVisitor.java:180) at org.checkerframework.checker.signedness.SignednessVisitor.visitMethod(SignednessVisitor.java:33) at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:953) at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86) at org.checkerframework.framework.source.SourceVisitor.scan(SourceVisitor.java:92) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:396) at org.checkerframework.common.basetype.BaseTypeVisitor.scan(BaseTypeVisitor.java:183) at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96) at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111) at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119) at jdk.compiler/com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:203) at org.checkerframework.framework.source.SourceVisitor.visitClass(SourceVisitor.java:98) at org.checkerframework.common.basetype.BaseTypeVisitor.processClassTree(BaseTypeVisitor.java:597) at org.checkerframework.common.basetype.BaseTypeVisitor.visitClass(BaseTypeVisitor.java:543) at org.checkerframework.common.basetype.BaseTypeVisitor.visitClass(BaseTypeVisitor.java:183) at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:860) at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:60) at org.checkerframework.framework.source.SourceVisitor.visit(SourceVisitor.java:86) at org.checkerframework.framework.source.SourceChecker.typeProcess(SourceChecker.java:1030) at org.checkerframework.common.basetype.BaseTypeChecker.typeProcess(BaseTypeChecker.java:560) at org.checkerframework.javacutil.AbstractTypeProcessor$AttributionTaskListener.finished(AbstractTypeProcessor.java:188) at jdk.compiler/com.sun.tools.javac.api.ClientCodeWrapper$WrappedTaskListener.finished(ClientCodeWrapper.java:854) at jdk.compiler/com.sun.tools.javac.api.MultiTaskListener.finished(MultiTaskListener.java:132) at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1394) at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1351) at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:946) at jdk.compiler/com.sun.tools.javac.main.Main.compile(Main.java:317) at jdk.compiler/com.sun.tools.javac.main.Main.compile(Main.java:176) at jdk.compiler/com.sun.tools.javac.Main.compile(Main.java:64) at jdk.compiler/com.sun.tools.javac.Main.main(Main.java:50)

markro49 avatar Jun 19 '23 20:06 markro49