Hi, I'm just starting out with Checker Framework, and it's crashing on my sources; Please see report below.
Crash Error Message:
[ERROR] error: StructuralEqualityComparer: unexpected combination: type1: [TYPEVAR class org.checkerframework.framework.type.AnnotatedTypeMirror$AnnotatedTypeVariable] T extends Object type2: [DECLARED class org.checkerframework.framework.type.AnnotatedTypeMirror$AnnotatedDeclaredType] Object
(see below for full output dump)
Sources:
I don't quite know how to generate a replica of the exact issue, but you can see the codebase:
https://github.com/TarqusMiltonium/jidbc/tree/milton_2505_add_checker_framework
^-- I realise that I've committed CF v3.49.2 as the version of CF in the pom.xml -- v3.49.3 doesn't work either, I was just trying another/previous version of CF to see if it was a recent regression, and obviously committed the older version instead of the most recent one. Crash is same either way.
You will also need to mvn install v3.1.2 of ji-utils dependency:
https://github.com/TarqusMiltonium/ji-utils/tree/v3.1.2
(Warning: unit tests are now broken on that repo, since that release was cut, due to 3rd-party change, so either disable that one test or build without).
Steps to reproduce:
Run mvn compile on that repo (& branch).
Versions affected
JDK 21, Maven 3.9.6, CF v3.49.3
Message Dump (from crash onwards):
[WARNING] Initialized @Nullable Object
visitHistory = org.checkerframework.framework.type.StructuralEqualityVisitHistory@5fe25122
; The Checker Framework crashed. Please report the crash. Version: Checker Framework 3.49.2.
Compilation unit: .\jidbc\src\main\java\com\jirvan\jidbc\JidbcConnection.java
Last visited tree at line 88 column 78:
UpdateHandler.update(jdbcConnection, row, Arrays.stream(columns).map(ColumnName:name).collect(Collectors.toSet()));
Exception: java.lang.Throwable; java.lang.Throwable
at org.checkerframework.javacutil.BugInCF.<init>(BugInCF.java:26)
at org.checkerframework.framework.type.visitor.AtmComboVisitor.defaultAction(AtmComboVisitor.java:66)
at org.checkerframework.framework.type.StructuralEqualityComparer.defaultAction(StructuralEqualityComparer.java:49)
at org.checkerframework.framework.type.StructuralEqualityComparer.defaultAction(StructuralEqualityComparer.java:30)
...
at jdk.compiler/com.sun.tools.javac.Main.main(Main.java:50)
...
[INFO] 99 warnings
[INFO] -------------------------------------------------------------
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] error: StructuralEqualityComparer: unexpected combination: type1: [TYPEVAR class org.checkerframework.framework.type.AnnotatedTypeMirror$AnnotatedTypeVariable] T extends Object type2: [DECLARED class org.checkerframework.framework.type.AnnotatedTypeMirror$AnnotatedDeclaredType] Object
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 12.445 s
[INFO] Finished at: 2025-05-20T13:38:25+09:30
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:compile (default-compile) on project jidbc: Compilation failure
[ERROR] error: StructuralEqualityComparer: unexpected combination: type1: [TYPEVAR class org.checkerframework.framework.type.AnnotatedTypeMirror$AnnotatedTypeVariable] T extends Object type2: [DECLARED class org.checkerframework.framework.type.AnnotatedTypeMirror$AnnotatedDeclaredType] Object
[ERROR]
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
Hi, I'm just starting out with Checker Framework, and it's crashing on my sources; Please see report below.
Crash Error Message:
(see below for full output dump)
Sources:
I don't quite know how to generate a replica of the exact issue, but you can see the codebase:
https://github.com/TarqusMiltonium/jidbc/tree/milton_2505_add_checker_framework
^-- I realise that I've committed CF
v3.49.2as the version of CF in the pom.xml -- v3.49.3 doesn't work either, I was just trying another/previous version of CF to see if it was a recent regression, and obviously committed the older version instead of the most recent one. Crash is same either way.You will also need to
mvn installv3.1.2 ofji-utilsdependency:https://github.com/TarqusMiltonium/ji-utils/tree/v3.1.2
(Warning: unit tests are now broken on that repo, since that release was cut, due to 3rd-party change, so either disable that one test or build without).
Steps to reproduce:
Run
mvn compileon that repo (& branch).Versions affected
JDK 21, Maven 3.9.6, CF v3.49.3
Message Dump (from crash onwards):