diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2014-07-04 01:50:06 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2014-07-04 01:50:06 +0000 |
commit | 604a31609737053378ee534fa32241da4a8500bf (patch) | |
tree | bb0d4899153946ca0e4cda89b64b10aa5122b23c /mdoc_validate.c | |
parent | d34c8b8f2efbf5e05c8603d4ea4f46f0b338661a (diff) | |
download | mandoc-604a31609737053378ee534fa32241da4a8500bf.tar.gz |
Clean up messages related to missing arguments.
* Do not warn about empty -column cells, they seem valid to me.
* Downgrade empty item and missing -std from ERROR to WARNING.
* Hierarchical naming.
* Descriptive, not imperative style.
* Mention macro names, argument names, and fallbacks.
* Garbage collect some unreachable code in post_it().
Diffstat (limited to 'mdoc_validate.c')
-rw-r--r-- | mdoc_validate.c | 28 |
1 files changed, 12 insertions, 16 deletions
diff --git a/mdoc_validate.c b/mdoc_validate.c index 71b87562..b4055aec 100644 --- a/mdoc_validate.c +++ b/mdoc_validate.c @@ -727,15 +727,16 @@ pre_bl(PRE_ARGS) if (n->norm->Bl.width || n->norm->Bl.offs || n->norm->Bl.comp) - mdoc_nmsg(mdoc, n, MANDOCERR_LISTFIRST); - + mandoc_msg(MANDOCERR_BL_LATETYPE, + mdoc->parse, n->line, n->pos, + mdoc_argnames[n->args->argv[0].arg]); continue; } /* Allow lists to default to LIST_item. */ if (LIST__NONE == n->norm->Bl.type) { - mdoc_nmsg(mdoc, n, MANDOCERR_LISTTYPE); + mdoc_nmsg(mdoc, n, MANDOCERR_BL_NOTYPE); n->norm->Bl.type = LIST_item; } @@ -749,7 +750,7 @@ pre_bl(PRE_ARGS) switch (n->norm->Bl.type) { case LIST_tag: if (NULL == n->norm->Bl.width) - mdoc_nmsg(mdoc, n, MANDOCERR_NOWIDTHARG); + mdoc_nmsg(mdoc, n, MANDOCERR_BL_WIDTH); break; case LIST_column: /* FALLTHROUGH */ @@ -869,7 +870,7 @@ pre_bd(PRE_ARGS) } if (DISP__NONE == n->norm->Bd.type) { - mdoc_nmsg(mdoc, n, MANDOCERR_DISPTYPE); + mdoc_nmsg(mdoc, n, MANDOCERR_BD_NOTYPE); n->norm->Bd.type = DISP_ragged; } @@ -934,7 +935,8 @@ pre_std(PRE_ARGS) if (MDOC_Std == n->args->argv[0].arg) return(1); - mdoc_nmsg(mdoc, n, MANDOCERR_NOARGV); + mandoc_msg(MANDOCERR_ARG_STD, mdoc->parse, + n->line, n->pos, mdoc_macronames[n->tok]); return(1); } @@ -1280,11 +1282,6 @@ post_it(POST_ARGS) nbl = nit->parent->parent; lt = nbl->norm->Bl.type; - if (LIST__NONE == lt) { - mdoc_nmsg(mdoc, nit, MANDOCERR_LISTTYPE); - return(1); - } - switch (lt) { case LIST_tag: /* FALLTHROUGH */ @@ -1308,7 +1305,9 @@ post_it(POST_ARGS) /* FALLTHROUGH */ case LIST_hyphen: if (NULL == nit->body->child) - mdoc_nmsg(mdoc, nit, MANDOCERR_NOBODY); + mandoc_msg(MANDOCERR_IT_NOBODY, + mdoc->parse, nit->line, nit->pos, + mdoc_argnames[nbl->args->argv[0].arg]); /* FALLTHROUGH */ case LIST_item: if (NULL != nit->head->child) @@ -1319,9 +1318,6 @@ post_it(POST_ARGS) assert(NULL == nit->head->child); - if (NULL == nit->body->child) - mdoc_nmsg(mdoc, nit, MANDOCERR_NOBODY); - for (i = 0, nch = nit->child; nch; nch = nch->next) if (MDOC_BODY == nch->type) i++; @@ -1337,7 +1333,7 @@ post_it(POST_ARGS) "columns == %d (have %d)", cols, i); return(MANDOCERR_ARGCOUNT == er); default: - break; + abort(); } return(1); |