Remove void * cast which was suppressing gcc's strict aliasing warning display. Note g++ 4.0 still does not display the warning even though with -O2 the resulting code fails due to aliasing optimisations.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@8948 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2006-03-03 22:44:34 +00:00
commit a969ab73dd
3 changed files with 26 additions and 26 deletions

View file

@ -1675,7 +1675,7 @@ class JAVA : public Language {
" jlong baseptr = 0;\n"
" (void)jenv;\n"
" (void)jcls;\n"
" *($cbaseclass **)(void *)&baseptr = *($cclass **)(void *)&jarg1;\n"
" *($cbaseclass **)&baseptr = *($cclass **)&jarg1;\n"
" return baseptr;\n"
"}\n",
"\n",
@ -1779,7 +1779,7 @@ class JAVA : public Language {
jnipackage, jni_imclass_name, jni_class_name);
Printf(dcast_wrap->code, " Swig::Director *director = (Swig::Director *) 0;\n");
Printf(dcast_wrap->code, " jobject jresult = (jobject) 0;\n");
Printf(dcast_wrap->code, " %s *obj = *((%s **)(void *)&jCPtrBase);\n", norm_name, norm_name);
Printf(dcast_wrap->code, " %s *obj = *((%s **)&jCPtrBase);\n", norm_name, norm_name);
Printf(dcast_wrap->code, " if (obj) director = dynamic_cast<Swig::Director *>(obj);\n");
Printf(dcast_wrap->code, " if (director) jresult = director->swig_get_self(jenv);\n");
Printf(dcast_wrap->code, " return jresult;\n");
@ -2818,7 +2818,7 @@ class JAVA : public Language {
"JNIEXPORT void JNICALL Java_%s%s_%s(JNIEnv *jenv, jclass jcls, jobject jself, jlong objarg, jboolean jswig_mem_own, "
"jboolean jweak_global) {\n",
jnipackage, jni_imclass_name, swig_director_connect_jni);
Printf(code_wrap->code, " %s *obj = *((%s **)(void *)&objarg);\n", norm_name, norm_name);
Printf(code_wrap->code, " %s *obj = *((%s **)&objarg);\n", norm_name, norm_name);
Printf(code_wrap->code, " (void)jcls;\n");
Printf(code_wrap->code, " SwigDirector_%s *director = dynamic_cast<SwigDirector_%s *>(obj);\n",
sym_name, sym_name);
@ -2845,7 +2845,7 @@ class JAVA : public Language {
Printf(code_wrap->def,
"JNIEXPORT void JNICALL Java_%s%s_%s(JNIEnv *jenv, jclass jcls, jobject jself, jlong objarg, jboolean jtake_or_release) {\n",
jnipackage, jni_imclass_name, changeown_jnimethod_name);
Printf(code_wrap->code, " %s *obj = *((%s **)(void *)&objarg);\n", norm_name, norm_name);
Printf(code_wrap->code, " %s *obj = *((%s **)&objarg);\n", norm_name, norm_name);
Printf(code_wrap->code, " SwigDirector_%s *director = dynamic_cast<SwigDirector_%s *>(obj);\n",
sym_name, sym_name);
Printf(code_wrap->code, " (void)jcls;\n");