Fix a bug in kernel class hierarchy.

Abstract members would sometimes be seen at possible dispatch targets.

BUG=
R=kmillikin@google.com

Review URL: https://codereview.chromium.org/2542143003 .
This commit is contained in:
Asger Feldthaus 2016-12-02 13:32:45 +01:00
parent 191184ba3d
commit 47bfb02f36

View file

@ -415,10 +415,14 @@ class ClassHierarchy {
}
// One of the two lists is now exhausted, copy over the remains.
while (i < declared.length) {
result[storeIndex++] = declared[i++];
Member declaredMember = declared[i++];
if (skipAbstractMembers && declaredMember.isAbstract) continue;
result[storeIndex++] = declaredMember;
}
while (j < inherited.length) {
result[storeIndex++] = inherited[j++];
Member inheritedMember = inherited[j++];
if (skipAbstractMembers && inheritedMember.isAbstract) continue;
result[storeIndex++] = inheritedMember;
}
result.length = storeIndex;
return result;