made unification always perform occur check