patch 9.0.1060: private and public object members are not implemented yet
problem: Private and public object members are not implemented yet.
Solution: Implement private and public object members.
diff --git a/src/vim9expr.c b/src/vim9expr.c
index c8054e5..6c9385c 100644
--- a/src/vim9expr.c
+++ b/src/vim9expr.c
@@ -281,6 +281,13 @@
objmember_T *m = &cl->class_obj_members[i];
if (STRNCMP(name, m->om_name, len) == 0 && m->om_name[len] == NUL)
{
+ if (*name == '_' && cctx->ctx_ufunc->uf_class != cl)
+ {
+ semsg(_(e_cannot_access_private_object_member_str),
+ m->om_name);
+ return FAIL;
+ }
+
generate_GET_OBJ_MEMBER(cctx, i, m->om_type);
*arg = name_end;