T4006, environment001, T3307 all work on msys2
Use mkTcEqPred rather than mkEqPred in the type checker

Type.mkEqPred has an assertion warning for kind compatibility.  But
during type checking we may form equality predicates with incompatible
kinds; hence TcType.mkTcEqPred, which does not check.  We were calling
the former instead of the latter in a couple of places, leading to
spurious debug warnings.
No need to call defaultKind in mkTcEqPred