@@ -4821,7 +4821,7 @@ namespace ts {
4821
4821
4822
4822
function getInstantiatedConstructorsForTypeArguments(type: Type, typeArgumentNodes: TypeNode[], location: Node): Signature[] {
4823
4823
let signatures = getConstructorsForTypeArguments(type, typeArgumentNodes, location);
4824
- if (typeArgumentNodes) {
4824
+ if (some( typeArgumentNodes) ) {
4825
4825
const typeArguments = map(typeArgumentNodes, getTypeFromTypeNode);
4826
4826
signatures = map(signatures, sig => getSignatureInstantiation(sig, typeArguments));
4827
4827
}
@@ -20921,7 +20921,7 @@ namespace ts {
20921
20921
const staticBaseType = getApparentType(baseConstructorType);
20922
20922
checkBaseTypeAccessibility(staticBaseType, baseTypeNode);
20923
20923
checkSourceElement(baseTypeNode.expression);
20924
- if (baseTypeNode.typeArguments) {
20924
+ if (some( baseTypeNode.typeArguments) ) {
20925
20925
forEach(baseTypeNode.typeArguments, checkSourceElement);
20926
20926
for (const constructor of getConstructorsForTypeArguments(staticBaseType, baseTypeNode.typeArguments, baseTypeNode)) {
20927
20927
if (!checkTypeArgumentConstraints(constructor.typeParameters, baseTypeNode.typeArguments)) {
@@ -23896,6 +23896,11 @@ namespace ts {
23896
23896
const sourceFile = getSourceFileOfNode(node);
23897
23897
return grammarErrorAtPos(sourceFile, types.pos, 0, Diagnostics._0_list_cannot_be_empty, listType);
23898
23898
}
23899
+ return forEach(types, checkGrammarExpressionWithTypeArguments);
23900
+ }
23901
+
23902
+ function checkGrammarExpressionWithTypeArguments(node: ExpressionWithTypeArguments) {
23903
+ return checkGrammarTypeArguments(node, node.typeArguments);
23899
23904
}
23900
23905
23901
23906
function checkGrammarClassDeclarationHeritageClauses(node: ClassLikeDeclaration) {
0 commit comments