+ "inappropriate document section for macro"));
+}
+
+
+static int
+check_msec(PRE_ARGS, ...)
+{
+ va_list ap;
+ int msec;
+
+ va_start(ap, n);
+ for (;;) {
+ if (0 == (msec = va_arg(ap, int)))
+ break;
+ if (msec != mdoc->meta.msec)
+ continue;
+ va_end(ap);
+ return(1);
+ }
+
+ va_end(ap);
+ return(mdoc_nwarn(mdoc, n, WARN_COMPAT,
+ "inappropriate manual section for macro"));
+}
+
+
+/*
+ * Check over an argument. When this has more stuff in it, make this
+ * into a table-driven function; until then, a switch is fine.
+ */
+static int
+check_argv(struct mdoc *mdoc,
+ const struct mdoc_node *node,
+ const struct mdoc_arg *argv)
+{
+
+
+ switch (argv->arg) {
+ case (MDOC_Std):
+ switch (node->tok) {
+ case (MDOC_Ex):
+ /*
+ * If the -std does not have an argument, then
+ * set it with the default name (if set). This
+ * only happens with MDOC_Ex.
+ */
+ if (1 == argv->sz)
+ return(1);
+ assert(0 == argv->sz);
+ if (mdoc->meta.name)
+ return(1);
+ return(mdoc_nerr(mdoc, node,
+ "default name not yet set"));
+ default:
+ break;
+ }
+ break;
+ default:
+ break;
+ }
+
+ return(1);