Handle the scenario when heritage clause of interface is not entity name expression

Fixes #12291
This commit is contained in:
Sheetal Nandi
2016-11-18 11:01:28 -08:00
parent 9fec77551c
commit cbde25f229
4 changed files with 35 additions and 1 deletions

View File

@@ -1143,7 +1143,10 @@ namespace ts {
const prevEnclosingDeclaration = enclosingDeclaration;
enclosingDeclaration = node;
emitTypeParameters(node.typeParameters);
emitHeritageClause(getInterfaceBaseTypeNodes(node), /*isImplementsList*/ false);
const interfaceExtendsTypes = filter(getInterfaceBaseTypeNodes(node), base => isEntityNameExpression(base.expression));
if (interfaceExtendsTypes && interfaceExtendsTypes.length) {
emitHeritageClause(interfaceExtendsTypes, /*isImplementsList*/ false);
}
write(" {");
writeLine();
increaseIndent();