diff src/share/vm/oops/arrayKlass.cpp @ 17889:386dd1c71858

8033150: invokestatic: IncompatibleClassChangeError trying to invoke static method from a parent in presence of conflicting defaults. Summary: A static method should be preferred during method resolution over an overpass, search the current class as well as its superclasses. Reviewed-by: acorn, coleenp, kamg
author lfoltan
date Mon, 14 Apr 2014 14:27:45 -0400
parents 85318d1fe8fe
children 52b4284cb496 54bc75c144b0 6e0cb14ce59b
line wrap: on
line diff
--- a/src/share/vm/oops/arrayKlass.cpp	Tue Apr 15 14:34:48 2014 -0700
+++ b/src/share/vm/oops/arrayKlass.cpp	Mon Apr 14 14:27:45 2014 -0400
@@ -64,10 +64,10 @@
   return NULL;
 }
 
-Method* ArrayKlass::uncached_lookup_method(Symbol* name, Symbol* signature) const {
+Method* ArrayKlass::uncached_lookup_method(Symbol* name, Symbol* signature, MethodLookupMode mode) const {
   // There are no methods in an array klass but the super class (Object) has some
   assert(super(), "super klass must be present");
-  return super()->uncached_lookup_method(name, signature);
+  return super()->uncached_lookup_method(name, signature, mode);
 }
 
 ArrayKlass::ArrayKlass(Symbol* name) {