natClass.cc (finit_name): Initialized with `finit$'.

2000-08-15  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * java/lang/natClass.cc (finit_name): Initialized with `finit$'.
        (finit_leg_name): New global.
        (java::lang::Class::getDeclaredMethods): Test for `finit$' or
        `$finit$'. This is a backward compatibility hack.
        (java::lang::Class::_getMethods): Likewise.

(http://sources.redhat.com/ml/java-discuss/2000-08/msg00031.html
 See also the matching compiler patch:
 http://gcc.gnu.org/ml/gcc-patches/2000-08/msg00664.html)

From-SVN: r35769
This commit is contained in:
Alexandre Petit-Bianco 2000-08-17 21:56:29 +00:00 committed by Alexandre Petit-Bianco
parent 25bdcbc524
commit 0fcbfa82cf
2 changed files with 21 additions and 4 deletions

View File

@ -143,6 +143,14 @@
* Makefile.am: Added new files.
* Makefile.in: Rebuilt.
2000-08-15 Alexandre Petit-Bianco <apbianco@cygnus.com>
* java/lang/natClass.cc (finit_name): Initialized with `finit$'.
(finit_leg_name): New global.
(java::lang::Class::getDeclaredMethods): Test for `finit$' or
`$finit$'. This is a backward compatibility hack.
(java::lang::Class::_getMethods): Likewise.
2000-08-15 Andrew Haley <aph@cygnus.com>
* include/jvm.h (_Jv_HashCode): New hash code.

View File

@ -70,7 +70,10 @@ extern java::lang::Class ConstructorClass;
static _Jv_Utf8Const *void_signature = _Jv_makeUtf8Const ("()V", 3);
static _Jv_Utf8Const *clinit_name = _Jv_makeUtf8Const ("<clinit>", 8);
static _Jv_Utf8Const *init_name = _Jv_makeUtf8Const ("<init>", 6);
static _Jv_Utf8Const *finit_name = _Jv_makeUtf8Const ("$finit$", 7);
static _Jv_Utf8Const *finit_name = _Jv_makeUtf8Const ("finit$", 6);
// The legacy `$finit$' method name, which still needs to be
// recognized as equivalent to the now prefered `finit$' name.
static _Jv_Utf8Const *finit_leg_name = _Jv_makeUtf8Const ("$finit$", 7);
@ -331,7 +334,9 @@ java::lang::Class::getDeclaredMethods (void)
if (method->name == NULL
|| _Jv_equalUtf8Consts (method->name, clinit_name)
|| _Jv_equalUtf8Consts (method->name, init_name)
|| _Jv_equalUtf8Consts (method->name, finit_name))
|| _Jv_equalUtf8Consts (method->name, finit_name)
// Backward compatibility hack: match the legacy `$finit$' name
|| _Jv_equalUtf8Consts (method->name, finit_leg_name))
continue;
numMethods++;
}
@ -345,7 +350,9 @@ java::lang::Class::getDeclaredMethods (void)
if (method->name == NULL
|| _Jv_equalUtf8Consts (method->name, clinit_name)
|| _Jv_equalUtf8Consts (method->name, init_name)
|| _Jv_equalUtf8Consts (method->name, finit_name))
|| _Jv_equalUtf8Consts (method->name, finit_name)
// Backward compatibility hack: match the legacy `$finit$' name
|| _Jv_equalUtf8Consts (method->name, finit_leg_name))
continue;
java::lang::reflect::Method* rmethod
= new java::lang::reflect::Method ();
@ -508,7 +515,9 @@ java::lang::Class::_getMethods (JArray<java::lang::reflect::Method *> *result,
if (method->name == NULL
|| _Jv_equalUtf8Consts (method->name, clinit_name)
|| _Jv_equalUtf8Consts (method->name, init_name)
|| _Jv_equalUtf8Consts (method->name, finit_name))
|| _Jv_equalUtf8Consts (method->name, finit_name)
// Backward compatibility hack: match the legacy `$finit$' name
|| _Jv_equalUtf8Consts (method->name, finit_leg_name))
continue;
// Only want public methods.
if (! java::lang::reflect::Modifier::isPublic (method->accflags))