patch 9.0.1334: using tt_member for the class leads to mistakes
Problem: Using tt_member for the class leads to mistakes.
Solution: Add a separate tt_class field.
diff --git a/src/vim9class.c b/src/vim9class.c
index e11324d..4431640 100644
--- a/src/vim9class.c
+++ b/src/vim9class.c
@@ -990,7 +990,7 @@
if (nf->uf_ret_type != NULL)
{
nf->uf_ret_type->tt_type = VAR_OBJECT;
- nf->uf_ret_type->tt_member = (type_T *)cl;
+ nf->uf_ret_type->tt_class = cl;
nf->uf_ret_type->tt_argcount = 0;
nf->uf_ret_type->tt_args = NULL;
}
@@ -1083,9 +1083,9 @@
}
cl->class_type.tt_type = VAR_CLASS;
- cl->class_type.tt_member = (type_T *)cl;
+ cl->class_type.tt_class = cl;
cl->class_object_type.tt_type = VAR_OBJECT;
- cl->class_object_type.tt_member = (type_T *)cl;
+ cl->class_object_type.tt_class = cl;
cl->class_type_list = type_list;
// TODO: