You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
crucible-jvm can't verify the following main method that simply calls System.out.println. This may be the intended behavior. Regardless, this error message is sub-optimal - it doesn't make it clear what's gone wrong, how to fix it, or if this is a user error or a problem with crucible-jvm.
javac -g Main.java && cabal run exe:crucible-jvm -- Main.class
resolveField: Field FieldId {fieldIdClass = ClassName "java/lang/Object", fieldIdName = "value", fieldIdType = char[]} not found
CallStack (from HasCallStack):
error, called at src/Lang/Crucible/JVM/Translation/Monad.hs:61:15 in crucible-jvm-0.2-inplace:Lang.Crucible.JVM.Translation.Monad
jvmFail, called at src/Lang/Crucible/JVM/Translation/Class.hs:843:23 in crucible-jvm-0.2-inplace:Lang.Crucible.JVM.Translation.Class
Update:
javac --version
javac 17.0.3
The text was updated successfully, but these errors were encountered:
That would explain it, then. Really, this is an issue with crucible-jvm's special treatment of the String class, which is tracked in #641. This special treatment makes a lot of assumptions about the class fields of String that work for JDK 8 and earlier, but not later versions of the JDK. To make this work for later versions of the JDK, we'd need to revisit how String is defined and change the special-casing in crucible-jvm accordingly.
crucible-jvm
can't verify the followingmain
method that simply callsSystem.out.println
. This may be the intended behavior. Regardless, this error message is sub-optimal - it doesn't make it clear what's gone wrong, how to fix it, or if this is a user error or a problem withcrucible-jvm
.Update:
The text was updated successfully, but these errors were encountered: