=== tests/cases/compiler/genericFunctions0.ts === function foo (x: T) { return x; } >foo : (x: T) => T, Symbol(foo, Decl(genericFunctions0.ts, 0, 0)) >T : T, Symbol(T, Decl(genericFunctions0.ts, 0, 13)) >x : T, Symbol(x, Decl(genericFunctions0.ts, 0, 18)) >T : T, Symbol(T, Decl(genericFunctions0.ts, 0, 13)) >x : T, Symbol(x, Decl(genericFunctions0.ts, 0, 18)) var x = foo(5); // 'x' should be number >x : number, Symbol(x, Decl(genericFunctions0.ts, 2, 3)) >foo(5) : number >foo : (x: T) => T, Symbol(foo, Decl(genericFunctions0.ts, 0, 0)) >5 : number