tests/cases/compiler/typeParametersShouldNotBeEqual2.ts(4,5): error TS2322: Type 'U' is not assignable to type 'T'.
  'U' is assignable to the constraint of type 'T', but 'T' could be instantiated with a different subtype of constraint 'Date'.
    Type 'Date' is not assignable to type 'T'.
      'Date' is assignable to the constraint of type 'T', but 'T' could be instantiated with a different subtype of constraint 'Date'.
tests/cases/compiler/typeParametersShouldNotBeEqual2.ts(5,5): error TS2322: Type 'V' is not assignable to type 'T'.
tests/cases/compiler/typeParametersShouldNotBeEqual2.ts(6,5): error TS2322: Type 'T' is not assignable to type 'V'.
  'T' is assignable to the constraint of type 'V', but 'V' could be instantiated with a different subtype of constraint '{}'.
    Type 'Date' is not assignable to type 'V'.
      'Date' is assignable to the constraint of type 'V', but 'V' could be instantiated with a different subtype of constraint '{}'.
tests/cases/compiler/typeParametersShouldNotBeEqual2.ts(7,5): error TS2322: Type 'V' is not assignable to type 'U'.
tests/cases/compiler/typeParametersShouldNotBeEqual2.ts(8,5): error TS2322: Type 'U' is not assignable to type 'V'.
  'U' is assignable to the constraint of type 'V', but 'V' could be instantiated with a different subtype of constraint '{}'.
    Type 'Date' is not assignable to type 'V'.
      'Date' is assignable to the constraint of type 'V', but 'V' could be instantiated with a different subtype of constraint '{}'.
tests/cases/compiler/typeParametersShouldNotBeEqual2.ts(9,5): error TS2322: Type 'Object' is not assignable to type 'T'.
  The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?


==== tests/cases/compiler/typeParametersShouldNotBeEqual2.ts (6 errors) ====
    function ff<T extends Date, U extends Date, V>(x: T, y: U, z: V) {
        var zz: Object;
        x = x;  // Ok
        x = y;  // Ok
        ~
!!! error TS2322: Type 'U' is not assignable to type 'T'.
!!! error TS2322:   'U' is assignable to the constraint of type 'T', but 'T' could be instantiated with a different subtype of constraint 'Date'.
!!! error TS2322:     Type 'Date' is not assignable to type 'T'.
!!! error TS2322:       'Date' is assignable to the constraint of type 'T', but 'T' could be instantiated with a different subtype of constraint 'Date'.
        x = z;  // Error
        ~
!!! error TS2322: Type 'V' is not assignable to type 'T'.
        z = x;  // Error
        ~
!!! error TS2322: Type 'T' is not assignable to type 'V'.
!!! error TS2322:   'T' is assignable to the constraint of type 'V', but 'V' could be instantiated with a different subtype of constraint '{}'.
!!! error TS2322:     Type 'Date' is not assignable to type 'V'.
!!! error TS2322:       'Date' is assignable to the constraint of type 'V', but 'V' could be instantiated with a different subtype of constraint '{}'.
        y = z;  // Error
        ~
!!! error TS2322: Type 'V' is not assignable to type 'U'.
        z = y;  // Error
        ~
!!! error TS2322: Type 'U' is not assignable to type 'V'.
!!! error TS2322:   'U' is assignable to the constraint of type 'V', but 'V' could be instantiated with a different subtype of constraint '{}'.
!!! error TS2322:     Type 'Date' is not assignable to type 'V'.
!!! error TS2322:       'Date' is assignable to the constraint of type 'V', but 'V' could be instantiated with a different subtype of constraint '{}'.
        x = zz;  // Error
        ~
!!! error TS2322: Type 'Object' is not assignable to type 'T'.
!!! error TS2322:   The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?
        zz = x;  // Ok
    }
    