Resolve generic bounds of all classes prior to supertypes

This commit is contained in:
Alexander Udalov
2013-12-03 21:17:43 +04:00
parent 028274b934
commit 7af72b98fe
3 changed files with 17 additions and 2 deletions
@@ -209,13 +209,16 @@ public class TypeHierarchyResolver {
private void resolveTypesInClassHeaders() {
for (Map.Entry<JetClassOrObject, MutableClassDescriptor> entry : context.getClasses().entrySet()) {
JetClassOrObject classOrObject = entry.getKey();
MutableClassDescriptor descriptor = entry.getValue();
if (classOrObject instanceof JetClass) {
MutableClassDescriptor descriptor = entry.getValue();
//noinspection unchecked
descriptorResolver.resolveGenericBounds((JetClass) classOrObject, descriptor.getScopeForSupertypeResolution(),
(List) descriptor.getTypeConstructor().getParameters(), trace);
}
descriptorResolver.resolveSupertypesForMutableClassDescriptor(classOrObject, descriptor, trace);
}
for (Map.Entry<JetClassOrObject, MutableClassDescriptor> entry : context.getClasses().entrySet()) {
descriptorResolver.resolveSupertypesForMutableClassDescriptor(entry.getKey(), entry.getValue(), trace);
}
}