Hi, On Fri, 2006-08-04 at 10:57 +0200, Volker Reichelt wrote: > your patch http://gcc.gnu.org/ml/java-patches/2006-q3/msg00264.html > broke bootstrap (at least on x86_64-unknown-linux-gnu): > > ranlib .libs/libgij.a > creating libgij.la > ./.libs/libgcj.so: undefined reference to `JvNumMethods(java::lang::Class*)' > ./.libs/libgcj.so: undefined reference to > `JvGetFirstMethod(java::lang::Class*)' > collect2: ld returned 1 exit status > make[5]: *** [jv-convert] Error 1
No idea if it is correct, but I am using the attached to get things to compile again. Cheers, Mark
Index: jvmti.cc =================================================================== --- jvmti.cc (revision 115934) +++ jvmti.cc (working copy) @@ -29,6 +29,8 @@ #include <java/util/HashMap.h> #include <java/net/URL.h> +#include <gcj/method.h> + extern struct JNINativeInterface _Jv_JNIFunctions; struct _Jv_rawMonitorID @@ -553,13 +555,10 @@ if (klass->isArray()) { jclass comp = klass->getComponentType(); - jint base - = (jint) _Jv_GetArrayElementFromElementType(NULL, - klass->getComponentType()); // FIXME: correct for primitive types? jint compSize = comp->size(); __JArray *array = (__JArray *) object; - *result = base + array->length * compSize; + *result = klass->size() + array->length * compSize; } else {