-int
-mdoc_zargs(struct mdoc *m, int line, int *pos, char *buf, char **v)
+void
+mdoc_argn_free(struct mdoc_arg *p, int iarg)
+{
+ struct mdoc_argv *arg = &p->argv[iarg];
+ int j;
+
+ if (arg->sz && arg->value) {
+ for (j = (int)arg->sz - 1; j >= 0; j--)
+ free(arg->value[j]);
+ free(arg->value);
+ }
+
+ for (--p->argc; iarg < (int)p->argc; iarg++)
+ p->argv[iarg] = p->argv[iarg+1];
+}
+
+
+enum margserr
+mdoc_zargs(struct mdoc *m, int line, int *pos,
+ char *buf, int flags, char **v)