=== tests/cases/compiler/genericParameterAssignability1.ts === function f(x: T): T { return null; } >f : (x: T) => T, Symbol(f, Decl(genericParameterAssignability1.ts, 0, 0)) >T : T, Symbol(T, Decl(genericParameterAssignability1.ts, 0, 11)) >x : T, Symbol(x, Decl(genericParameterAssignability1.ts, 0, 14)) >T : T, Symbol(T, Decl(genericParameterAssignability1.ts, 0, 11)) >T : T, Symbol(T, Decl(genericParameterAssignability1.ts, 0, 11)) >null : null var r = (x: T) => x; >r : (x: T) => T, Symbol(r, Decl(genericParameterAssignability1.ts, 1, 3)) >(x: T) => x : (x: T) => T >T : T, Symbol(T, Decl(genericParameterAssignability1.ts, 1, 9)) >x : T, Symbol(x, Decl(genericParameterAssignability1.ts, 1, 12)) >T : T, Symbol(T, Decl(genericParameterAssignability1.ts, 1, 9)) >x : T, Symbol(x, Decl(genericParameterAssignability1.ts, 1, 12)) r = f; // should be allowed >r = f : (x: T) => T >r : (x: T) => T, Symbol(r, Decl(genericParameterAssignability1.ts, 1, 3)) >f : (x: T) => T, Symbol(f, Decl(genericParameterAssignability1.ts, 0, 0))