From: Arnaud Giersch Date: Tue, 12 Feb 2013 20:53:53 +0000 (+0100) Subject: Fix build warnings on 32bits archs. X-Git-Tag: v3_9_90~494^2~8 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/01896eb20275e43d44368ae74747d778712dc3b5 Fix build warnings on 32bits archs. Use intermediate type intptr_t for conversions between pointer types and jlong. --- diff --git a/src/bindings/java/jmsg_file.c b/src/bindings/java/jmsg_file.c index 1d45583d73..9266483085 100644 --- a/src/bindings/java/jmsg_file.c +++ b/src/bindings/java/jmsg_file.c @@ -6,12 +6,14 @@ * under the terms of the license (GNU LGPL) which comes with this package. */ #include "jmsg_file.h" #include "jxbt_utilities.h" + void jfile_bind(JNIEnv *env, jobject jfile, msg_file_t stream) { - (*env)->SetLongField(env, jfile, jfile_field_bind, (jlong) (long) (stream)); + (*env)->SetLongField(env, jfile, jfile_field_bind, (intptr_t)stream); } msg_file_t jfile_get_native(JNIEnv *env, jobject jfile) { - msg_file_t file = (msg_file_t)(*env)->GetLongField(env, jfile, jfile_field_bind); + msg_file_t file = + (msg_file_t)(intptr_t)(*env)->GetLongField(env, jfile, jfile_field_bind); return file; } diff --git a/src/bindings/java/jmsg_process.c b/src/bindings/java/jmsg_process.c index 233a614977..b78ba98d48 100644 --- a/src/bindings/java/jmsg_process.c +++ b/src/bindings/java/jmsg_process.c @@ -56,17 +56,21 @@ void jprocess_join(jobject jprocess, JNIEnv * env) msg_process_t jprocess_to_native_process(jobject jprocess, JNIEnv * env) { - return (msg_process_t) (long) (*env)->GetLongField(env, jprocess, jprocess_field_Process_bind); + return + (msg_process_t)(intptr_t)(*env)->GetLongField(env, jprocess, + jprocess_field_Process_bind); } void jprocess_bind(jobject jprocess, msg_process_t process, JNIEnv * env) { - (*env)->SetLongField(env, jprocess, jprocess_field_Process_bind, (jlong)(process)); + (*env)->SetLongField(env, jprocess, jprocess_field_Process_bind, + (intptr_t)process); } jlong jprocess_get_id(jobject jprocess, JNIEnv * env) { - return (*env)->GetLongField(env, jprocess, jprocess_field_Process_id); + return + (intptr_t)(*env)->GetLongField(env, jprocess, jprocess_field_Process_id); } jstring jprocess_get_name(jobject jprocess, JNIEnv * env) diff --git a/src/bindings/java/jmsg_rngstream.c b/src/bindings/java/jmsg_rngstream.c index a51c4cc112..6610b84811 100644 --- a/src/bindings/java/jmsg_rngstream.c +++ b/src/bindings/java/jmsg_rngstream.c @@ -13,7 +13,8 @@ jfieldID jrngstream_bind; RngStream jrngstream_to_native(JNIEnv *env, jobject jrngstream) { - RngStream rngstream = (RngStream) (*env)->GetLongField(env, jrngstream, jrngstream_bind); + RngStream rngstream = + (RngStream)(intptr_t)(*env)->GetLongField(env, jrngstream, jrngstream_bind); if (!rngstream) { jxbt_throw_notbound(env, "rngstream", jrngstream); return NULL; @@ -33,7 +34,7 @@ Java_org_simgrid_msg_RngStream_create(JNIEnv *env, jobject jrngstream, jstring j const char *name = (*env)->GetStringUTFChars(env, jname, 0); RngStream rngstream = RngStream_CreateStream(name); //Bind the RngStream object - (*env)->SetLongField(env, jrngstream, jrngstream_bind, (jlong)rngstream); + (*env)->SetLongField(env, jrngstream, jrngstream_bind, (intptr_t)rngstream); (*env)->ReleaseStringUTFChars(env, jname, name); } @@ -41,7 +42,7 @@ JNIEXPORT void JNICALL Java_org_simgrid_msg_RngStream_destroy(JNIEnv *env, jobject jrngstream) { RngStream rngstream = jrngstream_to_native(env, jrngstream); RngStream_DeleteStream(&rngstream); - (*env)->SetLongField(env, jrngstream, jrngstream_bind, (jlong)NULL); + (*env)->SetLongField(env, jrngstream, jrngstream_bind, (intptr_t)NULL); } JNIEXPORT jboolean JNICALL Java_org_simgrid_msg_RngStream_setPackageSeed(JNIEnv *env, jobject jrngstream, jintArray jseed) { diff --git a/src/bindings/java/jmsg_vm.c b/src/bindings/java/jmsg_vm.c index 7e98a81d1e..bce95443d2 100644 --- a/src/bindings/java/jmsg_vm.c +++ b/src/bindings/java/jmsg_vm.c @@ -12,11 +12,10 @@ XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(jmsg); void jvm_bind(JNIEnv *env, jobject jvm, msg_vm_t vm) { - (*env)->SetLongField(env, jvm, jvm_field_bind, (jlong) (long) (vm)); + (*env)->SetLongField(env, jvm, jvm_field_bind, (intptr_t)vm); } msg_vm_t jvm_get_native(JNIEnv *env, jobject jvm) { - msg_vm_t vm = (msg_vm_t)(*env)->GetLongField(env, jvm, jvm_field_bind); - return vm; + return (msg_vm_t)(intptr_t)(*env)->GetLongField(env, jvm, jvm_field_bind); } JNIEXPORT void JNICALL diff --git a/src/bindings/java/jxbt_utilities.h b/src/bindings/java/jxbt_utilities.h index 4752c7cb61..8d5084c191 100644 --- a/src/bindings/java/jxbt_utilities.h +++ b/src/bindings/java/jxbt_utilities.h @@ -10,6 +10,7 @@ #define JXBT_UTILITY_H #include +#include /* *********** */ /* JNI GETTERS */ diff --git a/src/bindings/java/smx_context_cojava.c b/src/bindings/java/smx_context_cojava.c index 00fe9b5db4..4983f73a7a 100644 --- a/src/bindings/java/smx_context_cojava.c +++ b/src/bindings/java/smx_context_cojava.c @@ -210,7 +210,9 @@ static void smx_ctx_cojava_suspend(smx_context_t context) else if (!java_context->bound) { java_context->bound = 1; smx_process_t process = SIMIX_process_self(); - (*global_env)->SetLongField(global_env, java_context->jprocess, jprocess_field_Process_bind, (jlong)process); + (*global_env)->SetLongField(global_env, java_context->jprocess, + jprocess_field_Process_bind, + (intptr_t)process); } next_coroutine = java_context->jcoroutine; @@ -236,7 +238,8 @@ static void smx_ctx_cojava_resume(smx_context_t new_context) { else if (!java_context->bound) { java_context->bound = 1; smx_process_t process = SIMIX_process_self(); - (*global_env)->SetLongField(global_env, java_context->jprocess, jprocess_field_Process_bind, (jlong)process); + (*global_env)->SetLongField(global_env, java_context->jprocess, + jprocess_field_Process_bind, (intptr_t)process); } (*global_env)->CallStaticVoidMethod(global_env, coclass, coroutine_yieldTo, java_context->jcoroutine); } diff --git a/src/bindings/java/smx_context_java.c b/src/bindings/java/smx_context_java.c index 02f6f7b187..02406f2473 100644 --- a/src/bindings/java/smx_context_java.c +++ b/src/bindings/java/smx_context_java.c @@ -110,7 +110,8 @@ static void* smx_ctx_java_thread_run(void *data) { } else { smx_process_t process = SIMIX_process_self(); - (*env)->SetLongField(env, context->jprocess, jprocess_field_Process_bind, (jlong)process); + (*env)->SetLongField(env, context->jprocess, jprocess_field_Process_bind, + (intptr_t)process); } xbt_assert((context->jprocess != NULL), "Process not created..."); //wait for the process to be able to begin