mkKindVar :: Name -> SuperKind -> KindVar
-- mkKindVar take a SuperKind as argument because we don't have access
-- to superKind here.
mkKindVar name kind = TyVar
  { varName    = name
  , realUnique = getKey (nameUnique name)
  , varType    = kind }
mkKindVar :: Name -> SuperKind -> KindVar
mkKindVar name kind = TyVar
  { varName    = name
  , realUnique = getKey (nameUnique name)
  , varType    = kind }
mkKindVar name kind = TyVar
  { varName    = name
  , realUnique = getKey (nameUnique name)
  , varType    = kind }