tests/cases/conformance/types/thisType/thisTypeErrors2.ts(2,20): error TS2526: A 'this' type is available only in a non-static member of a class or interface.
tests/cases/conformance/types/thisType/thisTypeErrors2.ts(9,38): error TS2526: A 'this' type is available only in a non-static member of a class or interface.
tests/cases/conformance/types/thisType/thisTypeErrors2.ts(10,13): error TS2322: Type 'Derived' is not assignable to type 'this'.
  'Derived' is assignable to the constraint of type 'this', but 'this' could be instantiated with a different subtype of constraint 'Derived'.


==== tests/cases/conformance/types/thisType/thisTypeErrors2.ts (3 errors) ====
    class Base {
        constructor(a: this) {
                       ~~~~
!!! error TS2526: A 'this' type is available only in a non-static member of a class or interface.
        }
    }
    class Generic<T> {
    }
    class Derived {
        n: number;
        constructor(public host: Generic<this>) {
                                         ~~~~
!!! error TS2526: A 'this' type is available only in a non-static member of a class or interface.
            let self: this = this;
                ~~~~
!!! error TS2322: Type 'Derived' is not assignable to type 'this'.
!!! error TS2322:   'Derived' is assignable to the constraint of type 'this', but 'this' could be instantiated with a different subtype of constraint 'Derived'.
            this.n = 12;
        }
    }
    