error: parse error before '.' & number of arguments doesn't match

Compiling my simple source code reports errorerror: parse error before '.'. But in fact there is not any "." token on this line.

At my guess it has something to do with JNI C macros but I really have no idea how to find that bug

// ##net_java_dev_jssm_MulticastSSM.h: line 55

JNIEXPORTvoid JNICALL Java_net_java_dev_jssm_MulticastSSM_join2

(JNIEnv *, jobject, jstring, jstring);

// ##net_java_dev_jssm_MulticastSSM.c: line 306

JNIEXPORTvoid JNICALL Java_net_java_dev_jssm_MulticastSSM_join2

(JNIEnv *env, jobject obj, jstring s_addr, jstring g_addr){

// no code yet

}

mingw32-gcc.exe -DWIN32 -Wall -c -IC:\java\JNI_headerFiles\jdk1.6.0/include -IC:\java\JNI_headerFiles\jdk1.6.0/include/win32 -shared src_c/net_java_dev_jssm_MulticastSSM.c -DNODEBUG

src_c/net_java_dev_jssm_MulticastSSM.c:307: error: parse error before '.' token

src_c/net_java_dev_jssm_MulticastSSM.c: In function `Java_net_java_dev_jssm_MulticastSSM_join2':

src_c/net_java_dev_jssm_MulticastSSM.c:307: error: number of arguments doesn't match prototype

src_c/net_java_dev_jssm_MulticastSSM.h:56: error: prototype declaration

make: *** [all] Error 1

C compiler: mingw32-gcc.exe

JNI: jdk1.6.0

Any help would be really appreciated.

[1559 byte] By [radonea] at [2007-11-26 17:06:05]
# 1

dont know why byt mingw-gcc does not like '_' in param names.

JNIEXPORT void JNICALL Java_net_java_dev_jssm_MulticastSSM_join2

(JNIEnv *env, jobject obj, jstring saddr, jstring gaddr){

// ...

}

Works perfectly

radonea at 2007-7-8 23:33:52 > top of Java-index,Java HotSpot Virtual Machine,Specifications...
# 2
Hi radone,I just read your posting and suddently got an idea why your compiler was complaining about the period. In most C environment, there is a definition#define s_addr S_un.S_addrin some socket-related header file! Now you know where the dot is coming from.
martin@worka at 2007-7-8 23:33:52 > top of Java-index,Java HotSpot Virtual Machine,Specifications...