src/share/vm/code/dependencies.cpp

changeset 7690
dc2f15e0caee
parent 7502
c4f1e23c4139
child 7761
d8f133adf05d
     1.1 --- a/src/share/vm/code/dependencies.cpp	Thu Apr 09 02:41:45 2015 +0000
     1.2 +++ b/src/share/vm/code/dependencies.cpp	Thu Mar 12 14:15:09 2015 +0100
     1.3 @@ -811,7 +811,13 @@
     1.4      assert((uint)n <= (uint)_num_participants, "oob");
     1.5      Method* fm = _found_methods[n];
     1.6      assert(n == _num_participants || fm != NULL, "proper usage");
     1.7 -    assert(fm == NULL || fm->method_holder() == _participants[n], "sanity");
     1.8 +    if (fm != NULL && fm->method_holder() != _participants[n]) {
     1.9 +      // Default methods from interfaces can be added to classes. In
    1.10 +      // that case the holder of the method is not the class but the
    1.11 +      // interface where it's defined.
    1.12 +      assert(fm->is_default_method(), "sanity");
    1.13 +      return NULL;
    1.14 +    }
    1.15      return fm;
    1.16    }
    1.17  

mercurial