8010017: lambda: reflection get(Declared)Methods support for default methods
Don't expose vm generated overpass (bridges to default methods). Reviewed-by: dholmes, fparain
This commit is contained in:
parent
3277de9dad
commit
cfb7431cca
@ -1722,7 +1722,7 @@ JVM_ENTRY(jobjectArray, JVM_GetClassDeclaredMethods(JNIEnv *env, jclass ofClass,
|
|||||||
int i;
|
int i;
|
||||||
for (i = 0; i < methods_length; i++) {
|
for (i = 0; i < methods_length; i++) {
|
||||||
methodHandle method(THREAD, methods->at(i));
|
methodHandle method(THREAD, methods->at(i));
|
||||||
if (!method->is_initializer()) {
|
if (!method->is_initializer() && !method->is_overpass()) {
|
||||||
if (!publicOnly || method->is_public()) {
|
if (!publicOnly || method->is_public()) {
|
||||||
++num_methods;
|
++num_methods;
|
||||||
}
|
}
|
||||||
@ -1736,7 +1736,7 @@ JVM_ENTRY(jobjectArray, JVM_GetClassDeclaredMethods(JNIEnv *env, jclass ofClass,
|
|||||||
int out_idx = 0;
|
int out_idx = 0;
|
||||||
for (i = 0; i < methods_length; i++) {
|
for (i = 0; i < methods_length; i++) {
|
||||||
methodHandle method(THREAD, methods->at(i));
|
methodHandle method(THREAD, methods->at(i));
|
||||||
if (!method->is_initializer()) {
|
if (!method->is_initializer() && !method->is_overpass()) {
|
||||||
if (!publicOnly || method->is_public()) {
|
if (!publicOnly || method->is_public()) {
|
||||||
oop m = Reflection::new_method(method, UseNewReflection, false, CHECK_NULL);
|
oop m = Reflection::new_method(method, UseNewReflection, false, CHECK_NULL);
|
||||||
result->obj_at_put(out_idx, m);
|
result->obj_at_put(out_idx, m);
|
||||||
|
Loading…
Reference in New Issue
Block a user