defects4j icon indicating copy to clipboard operation
defects4j copied to clipboard

Closure test suite uses java 7

Open markro49 opened this issue 3 years ago • 2 comments

I thought all the scripts/tools were upgraded to use Java 8, however it looks like the ant files for Closure (almost?) all contain -Dbuild.compiler=javac1.7 so we get tons of warnings about the java runtime classes being newer than the compiler. Don’t know if this actually causes any problems or not but useful info may be getting lost in forest of warnings.

markro49 avatar Oct 14 '20 18:10 markro49

Hi @markro49,

Can you provide a bit more context? Are you referring to compiling the developer-written tests that come with the Closure subjects, or are you referring to automatically generated tests for those subjects?

Generally, all scripts and tools are upgraded and tested to work in a Java-8 runtime environment. However, since Java 8 is not fully backward compatible, the source code, including the developer-written tests, is compiled with the required target level if necessary. (It makes sense to suppress related warnings.)

Thanks, René

rjust avatar Oct 14 '20 18:10 rjust

Here is the log file from running "./randoop_coverage.sh Closure 7 debug 2>&1 | tee test.log": test.log Note that I'm using my fork of defects4j (https://github.com/markro49/defects4j) where I have added support for the debug flag and made several other improvements and fixes to randoop_coverage. You can see that the log file is overloaded with 740 warnings of the form:

[javac] warning: /scratch/markro/jdk1.8.0_261/lib/ct.sym(META-INF/sym/rt.jar/java/lang/management/GarbageCollectorMXBean.class): major version 52 is newer than 51, the highest major version supported by this compiler.

markro49 avatar Oct 14 '20 19:10 markro49