tests/cases/compiler/genericObjectLitReturnType.ts(8,10): error TS2684: The 'this' context of type 'X<number>' is not assignable to method's 'this' of type 'X<T>'.
  Type 'number' is not assignable to type 'T'.
    'T' could be instantiated with an arbitrary type which could be unrelated to 'number'.


==== tests/cases/compiler/genericObjectLitReturnType.ts (1 errors) ====
    class X<T>
    {
        f(t: T) { return { a: t }; }
    }
    
     
    var x: X<number>;
    var t1 = x.f(5);
             ~
!!! error TS2684: The 'this' context of type 'X<number>' is not assignable to method's 'this' of type 'X<T>'.
!!! error TS2684:   Type 'number' is not assignable to type 'T'.
!!! error TS2684:     'T' could be instantiated with an arbitrary type which could be unrelated to 'number'.
    t1.a = 5; // Should not error: t1 should have type {a: number}, instead has type {a: T}
     
    