Open tahiat opened 9 months ago
Hi, I could not reproduce the bug. Here is the exception message I got with the your command:
Exception in thread "main" com.github.javaparser.ParseProblemException: (line 3,col 1) Record Declarations are not supported.
at com.github.javaparser.StaticJavaParser.handleResult(StaticJavaParser.java:270)
at com.github.javaparser.StaticJavaParser.parse(StaticJavaParser.java:167)
at org.checkerframework.specimin.SpeciminRunner.parseJavaFile(SpeciminRunner.java:303)
at org.checkerframework.specimin.SpeciminRunner.performMinimization(SpeciminRunner.java:105)
at org.checkerframework.specimin.SpeciminRunner.main(SpeciminRunner.java:64)
Hi, I could not reproduce the bug. Here is the exception message I got with the your command:
Exception in thread "main" com.github.javaparser.ParseProblemException: (line 3,col 1) Record Declarations are not supported. at com.github.javaparser.StaticJavaParser.handleResult(StaticJavaParser.java:270) at com.github.javaparser.StaticJavaParser.parse(StaticJavaParser.java:167) at org.checkerframework.specimin.SpeciminRunner.parseJavaFile(SpeciminRunner.java:303) at org.checkerframework.specimin.SpeciminRunner.performMinimization(SpeciminRunner.java:105) at org.checkerframework.specimin.SpeciminRunner.main(SpeciminRunner.java:64)
Unrelated to this issue, I received the same exception earlier when running ASHE against itself.
Is this due to 1) Specimin depending on a version of Java Parser that does not support Records? 2) Java Parser in general doesn’t support Java Records? 3) Something else?
Please let me know if you find the answer. Thanks!
Hi,
I could not find any online information regarding this behavior of JavaParser. When I tried a newer version of JavaParser, Specimin could not be compiled.
Maybe @tahiat could help since he did not seem to experience this behavior of JavaParser.
Java Parser in general doesn’t support Java Records?
@jonathan-m-phillips is correct: JavaParser does not support records: https://github.com/javaparser/javaparser/issues/3556
I don't think there's much that we can do about this, unfortunately. If we can do so easily, it would be great to catch the exception and throw one of our own that tells the user:
Command:
./gradlew run --args='--outputDirectory "../ISSUES/jdk-8269121/output/" --root "../ISSUES/jdk-8269121/input/TypeInferenceBugOfMethodReferences/src/main/java/" --targetFile "net/mirwaldt/bug/Main.java" --targetFile "net/mirwaldt/bug/Interpreter.java" --targetFile "net/mirwaldt/bug/MyFact.java" --targetFile "net/mirwaldt/bug/DummyInterpreter.java" --targetMethod "net.mirwaldt.bug.Main#main(String[])"'
Exception:
Project
[drive link](https://drive.google.com/file/d/1YC8RofTmDXWGmWOB9Y1zKWtTH72GNck3/view?usp=sharing)
or[github](https://github.com/mmirwaldt/TypeInferenceBugOfMethodReferences/)