Change FunctionTypeBuilder.hasMoreTagsToResolve to look at extended interfaces first
@@ -873,21 +873,20 @@ final class FunctionTypeBuilder {
*/
private static boolean hasMoreTagsToResolve(ObjectType objectType) {
checkArgument(objectType.isUnknownType());
- if (objectType.getImplicitPrototype() != null) {
- // constructor extends class
- return !objectType.getImplicitPrototype().isResolved();
- } else {
- // interface extends interfaces
FunctionType ctor = objectType.getConstructor();
if (ctor != null) {
+ // interface extends interfaces
for (ObjectType interfaceType : ctor.getExtendedInterfaces()) {
if (!interfaceType.isResolved()) {
return true;
}
}
}
- return false;
+ if (objectType.getImplicitPrototype() != null) {
+ // constructor extends class
+ return !objectType.getImplicitPrototype().isResolved();
}
+ return false;
}
/** Holds data dynamically inferred about functions. */
