patch 9.1.0524: the recursive parameter in the *_equal functions can be removed

Problem:  the recursive parameter in the *_equal functions can be removed
Solution: Remove the recursive parameter in dict_equal(), list_equal()
          object_equal and tv_equal(). Use a comparison of the static
          var recursive_cnt == 0 to determine whether or not tv_equal()
          has been called recursively (Yinzuo Jiang).

closes: #15070

Signed-off-by: Yinzuo Jiang <jiangyinzuo@foxmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/vim9class.c b/src/vim9class.c
index 78f5ab8..9337082 100644
--- a/src/vim9class.c
+++ b/src/vim9class.c
@@ -3849,8 +3849,7 @@
 object_equal(
 	object_T *o1,
 	object_T *o2,
-	int		ic,	// ignore case for strings
-	int		recursive)  // TRUE when used recursively
+	int	ic)	// ignore case for strings
 {
     class_T *cl1, *cl2;
 
@@ -3866,7 +3865,7 @@
 	return FALSE;
 
     for (int i = 0; i < cl1->class_obj_member_count; ++i)
-	if (!tv_equal((typval_T *)(o1 + 1) + i, (typval_T *)(o2 + 1) + i, ic, recursive))
+	if (!tv_equal((typval_T *)(o1 + 1) + i, (typval_T *)(o2 + 1) + i, ic))
 	    return FALSE;
 
     return TRUE;