8012961: Do not restrict static interface methods to be private

Lambda changes; spec 0.6.2 - remove the restriction that was added as part of recent changes made to support upcoming changes to compilation of lambda methods.

Reviewed-by: dholmes, acorn
This commit is contained in:
Bharadwaj Yadavalli 2013-04-23 08:12:14 -07:00
parent 2cb874268e
commit cadadd73c2

View File

@ -192,9 +192,8 @@ oop MethodHandles::init_method_MemberName(Handle mname, Method* m, bool do_dispa
flags |= IS_CONSTRUCTOR | (JVM_REF_invokeSpecial << REFERENCE_KIND_SHIFT);
} else if (mods.is_static()) {
flags |= IS_METHOD | (JVM_REF_invokeStatic << REFERENCE_KIND_SHIFT);
// Check if this method is a lambda method that is generated as
// private static method.
if (m->is_private() && m->method_holder()->is_interface()) {
// Get vindex from itable if method holder is an interface.
if (m->method_holder()->is_interface()) {
vmindex = klassItable::compute_itable_index(m);
}
} else if (receiver_limit != mklass &&