tests/cases/compiler/genericDerivedTypeWithSpecializedBase2.ts(11,1): error TS2322: Type 'B<number>' is not assignable to type 'A<{ length: number; foo: number; }>'.
  Types of property 'x' are incompatible.
    Type 'string' is not assignable to type '{ length: number; foo: number; }'.
      Property 'foo' is missing in type 'String'.


==== tests/cases/compiler/genericDerivedTypeWithSpecializedBase2.ts (1 errors) ====
    class A<T extends { length: number }> {
        x: T;
    }
    
    class B<U> extends A<string> {
        y: U;
    }
    
    var x: A<{ length: number; foo: number }>;
    var y: B<number>;
    x = y;  // error
    ~
!!! error TS2322: Type 'B<number>' is not assignable to type 'A<{ length: number; foo: number; }>'.
!!! error TS2322:   Types of property 'x' are incompatible.
!!! error TS2322:     Type 'string' is not assignable to type '{ length: number; foo: number; }'.
!!! error TS2322:       Property 'foo' is missing in type 'String'.
    