-
Notifications
You must be signed in to change notification settings - Fork 102
Description
This issue is about changes introduced in the gradle-build-java-11 branch
Do we know why files were removed?
- jpf-symbc/src/classes/java/awt/image/BufferedImage.java
- jpf-symbc/src/classes/java/awt/image/Kernel.java
- jpf-symbc/src/classes/java/lang/Math.java
- jpf-symbc/src/classes/java/util/Scanner.java
I am not sure whether porting to java11 is a good reason to delete them.
Originally posted by @yannicnoller in #112 (comment)
it looks like java 11 has a different structure, and restriction that prevents us from replacing for example Math.java with our own version, at least in the same way we used to do it. In java 11, Math.java is in java.base, with more restrictions on overriding its behavior. Right now, the above classes are removed from the Java 11 branch, but we need to investegate the impact of that. It might mean that we will need to override its behavior and resort to using a flage like --patch-module option. Another possibility is to just maintain native peer classes, and intercept bytecodes that we want to symbolically execute, but are not native. This applies to other classes you've mentioned here. More investigations are needed here.