4040#include " CLFunctions.hpp"
4141#include " FunctionPointerUtils.hpp"
4242
43+ #ifdef JNI_VERSION_1_8
44+ #define JNI_ENV_TYPE void **
45+ #else
46+ #define JNI_ENV_TYPE JNIEnv**
47+ #endif
48+
4349// Static method IDs for the "function pointer" interfaces
4450static jmethodID CreateContextFunction_function; // (Ljava/lang/String;Lorg/jocl/Pointer;JLjava/lang/Object;)V
4551static jmethodID BuildProgramFunction_function; // (Lorg/jocl/cl_program;Ljava/lang/Object;)V
@@ -64,7 +70,7 @@ void registerAllNatives(JNIEnv *env, jclass cls);
6470JNIEXPORT jint JNICALL JNI_OnLoad (JavaVM *jvm, void *reserved)
6571{
6672 JNIEnv *env = NULL ;
67- if (jvm->GetEnv (( void **) &env, JNI_VERSION_1_4))
73+ if (jvm->GetEnv (reinterpret_cast < void **>( &env) , JNI_VERSION_1_4))
6874 {
6975 return JNI_ERR;
7076 }
@@ -174,10 +180,10 @@ void CL_CALLBACK CreateContextFunction(const char *errinfo, const void *private_
174180 jobject user_data = callbackInfo->globalUser_data ;
175181
176182 JNIEnv *env = NULL ;
177- jint attached = globalJvm->GetEnv (( void **) &env, JNI_VERSION_1_4);
183+ jint attached = globalJvm->GetEnv (reinterpret_cast < void **>( &env) , JNI_VERSION_1_4);
178184 if (attached != JNI_OK)
179185 {
180- globalJvm->AttachCurrentThread ((void ** )&env, NULL );
186+ globalJvm->AttachCurrentThread ((JNI_ENV_TYPE )&env, NULL );
181187 }
182188
183189 jstring errinfoString = env->NewStringUTF (errinfo);
@@ -209,10 +215,10 @@ void CL_CALLBACK BuildProgramFunction(cl_program program, void *user_dataInfo)
209215 Logger::log (LOG_DEBUGTRACE, " Executing BuildProgramFunction\n " );
210216
211217 JNIEnv *env = NULL ;
212- jint attached = globalJvm->GetEnv (( void **) &env, JNI_VERSION_1_4);
218+ jint attached = globalJvm->GetEnv (reinterpret_cast < void **>( &env) , JNI_VERSION_1_4);
213219 if (attached != JNI_OK)
214220 {
215- globalJvm->AttachCurrentThread ((void ** )&env, NULL );
221+ globalJvm->AttachCurrentThread ((JNI_ENV_TYPE )&env, NULL );
216222 }
217223
218224 CallbackInfo *callbackInfo = (CallbackInfo*)user_dataInfo;
@@ -251,10 +257,10 @@ void CL_CALLBACK EnqueueNativeKernelFunction(void *argsInfo)
251257 Logger::log (LOG_DEBUGTRACE, " Executing EnqueueNativeKernelFunction\n " );
252258
253259 JNIEnv *env = NULL ;
254- jint attached = globalJvm->GetEnv (( void **) &env, JNI_VERSION_1_4);
260+ jint attached = globalJvm->GetEnv (reinterpret_cast < void **>( &env) , JNI_VERSION_1_4);
255261 if (attached != JNI_OK)
256262 {
257- globalJvm->AttachCurrentThread ((void ** )&env, NULL );
263+ globalJvm->AttachCurrentThread ((JNI_ENV_TYPE )&env, NULL );
258264 }
259265
260266 CallbackInfo *callbackInfo = (CallbackInfo*)argsInfo;
@@ -288,10 +294,10 @@ void CL_CALLBACK MemObjectDestructorCallback(cl_mem memobj, void *user_dataInfo)
288294 Logger::log (LOG_DEBUGTRACE, " Executing MemObjectDestructorCallback\n " );
289295
290296 JNIEnv *env = NULL ;
291- jint attached = globalJvm->GetEnv (( void **) &env, JNI_VERSION_1_4);
297+ jint attached = globalJvm->GetEnv (reinterpret_cast < void **>( &env) , JNI_VERSION_1_4);
292298 if (attached != JNI_OK)
293299 {
294- globalJvm->AttachCurrentThread ((void ** )&env, NULL );
300+ globalJvm->AttachCurrentThread ((JNI_ENV_TYPE )&env, NULL );
295301 }
296302
297303 CallbackInfo *callbackInfo = (CallbackInfo*)user_dataInfo;
@@ -331,10 +337,10 @@ void CL_CALLBACK EventCallback(cl_event event, cl_int command_exec_callback_type
331337 Logger::log (LOG_DEBUGTRACE, " Executing EventCallback\n " );
332338
333339 JNIEnv *env = NULL ;
334- jint attached = globalJvm->GetEnv (( void **) &env, JNI_VERSION_1_4);
340+ jint attached = globalJvm->GetEnv (reinterpret_cast < void **>( &env) , JNI_VERSION_1_4);
335341 if (attached != JNI_OK)
336342 {
337- globalJvm->AttachCurrentThread ((void ** )&env, NULL );
343+ globalJvm->AttachCurrentThread ((JNI_ENV_TYPE )&env, NULL );
338344 }
339345
340346 CallbackInfo *callbackInfo = (CallbackInfo*)user_dataInfo;
@@ -374,10 +380,10 @@ void CL_CALLBACK PrintfCallbackFunction(cl_context context, cl_uint printf_data_
374380 Logger::log (LOG_DEBUGTRACE, " Executing PrintfCallbackFunction\n " );
375381
376382 JNIEnv *env = NULL ;
377- jint attached = globalJvm->GetEnv (( void **) &env, JNI_VERSION_1_4);
383+ jint attached = globalJvm->GetEnv (reinterpret_cast < void **>( &env) , JNI_VERSION_1_4);
378384 if (attached != JNI_OK)
379385 {
380- globalJvm->AttachCurrentThread ((void ** )&env, NULL );
386+ globalJvm->AttachCurrentThread ((JNI_ENV_TYPE )&env, NULL );
381387 }
382388
383389 CallbackInfo *callbackInfo = (CallbackInfo*)user_dataInfo;
@@ -423,10 +429,10 @@ void CL_CALLBACK SVMFreeCallbackFunction(cl_command_queue queue, cl_uint num_svn
423429 Logger::log (LOG_DEBUGTRACE, " Executing SVMFreeCallbackFunction\n " );
424430
425431 JNIEnv *env = NULL ;
426- jint attached = globalJvm->GetEnv (( void **) &env, JNI_VERSION_1_4);
432+ jint attached = globalJvm->GetEnv (reinterpret_cast < void **>( &env) , JNI_VERSION_1_4);
427433 if (attached != JNI_OK)
428434 {
429- globalJvm->AttachCurrentThread ((void ** )&env, NULL );
435+ globalJvm->AttachCurrentThread ((JNI_ENV_TYPE )&env, NULL );
430436 }
431437
432438 CallbackInfo *callbackInfo = (CallbackInfo*)user_dataInfo;
0 commit comments