diff options
author | Tom Tromey <tromey@cygnus.com> | 2000-01-06 00:56:21 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2000-01-06 00:56:21 +0000 |
commit | 41ecf9300ee81314e123465f55879b1f08d45a42 (patch) | |
tree | 1965e52244bebcbaf8849bb44cebccffca987422 /libjava/java/lang/natClass.cc | |
parent | fe5a58103115ff22b1707fb1f561eabe8dcc3f39 (diff) | |
download | gcc-41ecf9300ee81314e123465f55879b1f08d45a42.zip gcc-41ecf9300ee81314e123465f55879b1f08d45a42.tar.gz gcc-41ecf9300ee81314e123465f55879b1f08d45a42.tar.bz2 |
natClass.cc (getMethod): Compute offset relative to `klass's methods table, not `this's table.
* java/lang/natClass.cc (getMethod): Compute offset relative to
`klass's methods table, not `this's table.
* java/lang/reflect/natMethod.cc (_Jv_CallNonvirtualMethodA):
In unwrapping/widening case, check whether `k' is null, not
whether it is primitive. Initialize `num' from `argelts', not
`paramelts'. Correct create and pass arguments to ffi_call.
Don't let presence of `this' argument affect index used to look in
argument arrays.
(COPY): Set appropriate element in `values' vector.
From-SVN: r31253
Diffstat (limited to 'libjava/java/lang/natClass.cc')
-rw-r--r-- | libjava/java/lang/natClass.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc index 68905f5..533f7ab 100644 --- a/libjava/java/lang/natClass.cc +++ b/libjava/java/lang/natClass.cc @@ -477,7 +477,8 @@ java::lang::Class::getMethod (jstring name, JArray<jclass> *param_types) break; Method *rmethod = new Method (); - rmethod->offset = (char*) (&klass->methods[i]) - (char*) methods; + rmethod->offset = ((char *) (&klass->methods[i]) + - (char *) klass->methods); rmethod->declaringClass = klass; return rmethod; } |