@@ -6964,8 +6964,8 @@ namespace ts {
6964
6964
const sourceParams = source.parameters;
6965
6965
const targetParams = target.parameters;
6966
6966
for (let i = 0; i < checkCount; i++) {
6967
- const s = i < sourceMax ? getTypeOfParameter (sourceParams[i]) : getRestTypeOfSignature(source);
6968
- const t = i < targetMax ? getTypeOfParameter (targetParams[i]) : getRestTypeOfSignature(target);
6967
+ const s = i < sourceMax ? getTypeOfSymbol (sourceParams[i]) : getRestTypeOfSignature(source);
6968
+ const t = i < targetMax ? getTypeOfSymbol (targetParams[i]) : getRestTypeOfSignature(target);
6969
6969
const related = compareTypes(s, t, /*reportErrors*/ false) || compareTypes(t, s, reportErrors);
6970
6970
if (!related) {
6971
6971
if (reportErrors) {
@@ -8163,8 +8163,8 @@ namespace ts {
8163
8163
8164
8164
const targetLen = target.parameters.length;
8165
8165
for (let i = 0; i < targetLen; i++) {
8166
- const s = isRestParameterIndex(source, i) ? getRestTypeOfSignature(source) : getTypeOfParameter (source.parameters[i]);
8167
- const t = isRestParameterIndex(target, i) ? getRestTypeOfSignature(target) : getTypeOfParameter (target.parameters[i]);
8166
+ const s = isRestParameterIndex(source, i) ? getRestTypeOfSignature(source) : getTypeOfSymbol (source.parameters[i]);
8167
+ const t = isRestParameterIndex(target, i) ? getRestTypeOfSignature(target) : getTypeOfSymbol (target.parameters[i]);
8168
8168
const related = compareTypes(s, t);
8169
8169
if (!related) {
8170
8170
return Ternary.False;
@@ -13863,21 +13863,10 @@ namespace ts {
13863
13863
return getNonNullableType(checkExpression(node.expression));
13864
13864
}
13865
13865
13866
- function getTypeOfParameter(symbol: Symbol) {
13867
- const type = getTypeOfSymbol(symbol);
13868
- if (strictNullChecks) {
13869
- const declaration = symbol.valueDeclaration;
13870
- if (declaration && (<VariableLikeDeclaration>declaration).initializer) {
13871
- return includeFalsyTypes(type, TypeFlags.Undefined);
13872
- }
13873
- }
13874
- return type;
13875
- }
13876
-
13877
13866
function getTypeAtPosition(signature: Signature, pos: number): Type {
13878
13867
return signature.hasRestParameter ?
13879
- pos < signature.parameters.length - 1 ? getTypeOfParameter (signature.parameters[pos]) : getRestTypeOfSignature(signature) :
13880
- pos < signature.parameters.length ? getTypeOfParameter (signature.parameters[pos]) : anyType;
13868
+ pos < signature.parameters.length - 1 ? getTypeOfSymbol (signature.parameters[pos]) : getRestTypeOfSignature(signature) :
13869
+ pos < signature.parameters.length ? getTypeOfSymbol (signature.parameters[pos]) : anyType;
13881
13870
}
13882
13871
13883
13872
function assignContextualParameterTypes(signature: Signature, context: Signature, mapper: TypeMapper) {
0 commit comments