//// [typeParameterAssignmentCompat1.ts] interface Foo { frobble(value: T): T; } function f(): Foo { var x: Foo; var y: Foo; x = y; // should be an error return x; } class C { f(): Foo { var x: Foo; var y: Foo; x = y; // should be an error return x; } } //// [typeParameterAssignmentCompat1.js] function f() { var x; var y; x = y; return x; } var C = (function () { function C() { } C.prototype.f = function () { var x; var y; x = y; return x; }; return C; })();