=== tests/cases/compiler/undefinedInferentialTyping.ts === function f(arr: T[], elemnt: T): T { >f : (arr: T[], elemnt: T) => T >T : T >arr : T[] >T : T >elemnt : T >T : T >T : T return null; } var a = f([], 3); // should be number >a : number >f([], 3) : number >f : (arr: T[], elemnt: T) => T >[] : undefined[]