From 5afb5bfcd0d68cbfdc9a07d65c424fc208ff316d Mon Sep 17 00:00:00 2001 From: bryce Date: Wed, 14 Apr 2004 17:45:20 +0000 Subject: 2004-04-14 Andrew Haley Bryce McKinlay * java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Use _Jv_LookupInterfaceMethodIdx for calls to interfaces. * include/jvm.h (_Jv_CallAnyMethodA): Add new face' arg. * testsuite/libjava.lang/InvokeInterface.java: New file. * testsuite/libjava.lang/InvokeInterface.out: New file. 2004-04-14 Bryce McKinlay * class.c (get_interface_method_index): New function. Return dispatch index for interface method. (make_method_value): For interface methods, set index field to iface dispatch index, not DECL_VINDEX. * expr.c (build_invokeinterface): Use get_interface_method_index. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80684 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/include/jvm.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'libjava/include') diff --git a/libjava/include/jvm.h b/libjava/include/jvm.h index ee7792b0788..398f854e783 100644 --- a/libjava/include/jvm.h +++ b/libjava/include/jvm.h @@ -422,7 +422,8 @@ extern jboolean _Jv_CheckAccess (jclass self_klass, jclass other_klass, extern jobject _Jv_CallAnyMethodA (jobject obj, jclass return_type, jmethodID meth, jboolean is_constructor, JArray *parameter_types, - jobjectArray args); + jobjectArray args, + jclass iface = NULL); union jvalue; extern void _Jv_CallAnyMethodA (jobject obj, @@ -433,7 +434,8 @@ extern void _Jv_CallAnyMethodA (jobject obj, JArray *parameter_types, jvalue *args, jvalue *result, - jboolean is_jni_call = true); + jboolean is_jni_call = true, + jclass iface = NULL); extern jobject _Jv_NewMultiArray (jclass, jint ndims, jint* dims) __attribute__((__malloc__)); -- cgit v1.2.3