mirror of
https://github.com/Z3Prover/z3
synced 2026-03-04 04:30:23 +00:00
Fix NoSuchFieldError in JNI for BoolPtr: use Z field descriptor and SetBooleanField
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
This commit is contained in:
parent
027b46b2ed
commit
c384710b08
1 changed files with 7 additions and 1 deletions
|
|
@ -852,12 +852,18 @@ def mk_java(java_src, java_dir, package_name):
|
|||
java_wrapper.write(' RELEASELONGAELEMS(a%s, _a%s);\n' % (i, i))
|
||||
|
||||
elif k == OUT or k == INOUT:
|
||||
if param_type(param) == INT or param_type(param) == UINT or param_type(param) == BOOL:
|
||||
if param_type(param) == INT or param_type(param) == UINT:
|
||||
java_wrapper.write(' {\n')
|
||||
java_wrapper.write(' jclass mc = jenv->GetObjectClass(a%s);\n' % i)
|
||||
java_wrapper.write(' jfieldID fid = jenv->GetFieldID(mc, "value", "I");\n')
|
||||
java_wrapper.write(' jenv->SetIntField(a%s, fid, (jint) _a%s);\n' % (i, i))
|
||||
java_wrapper.write(' }\n')
|
||||
elif param_type(param) == BOOL:
|
||||
java_wrapper.write(' {\n')
|
||||
java_wrapper.write(' jclass mc = jenv->GetObjectClass(a%s);\n' % i)
|
||||
java_wrapper.write(' jfieldID fid = jenv->GetFieldID(mc, "value", "Z");\n')
|
||||
java_wrapper.write(' jenv->SetBooleanField(a%s, fid, (jboolean) _a%s);\n' % (i, i))
|
||||
java_wrapper.write(' }\n')
|
||||
elif param_type(param) == STRING:
|
||||
java_wrapper.write(' {\n')
|
||||
java_wrapper.write(' jclass mc = jenv->GetObjectClass(a%s);\n' % i)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue