summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKristaps Dzonsons <kristaps@bsd.lv>2011-04-13 09:57:08 +0000
committerKristaps Dzonsons <kristaps@bsd.lv>2011-04-13 09:57:08 +0000
commit21987bf9ae5077818d53867b4ccd8380a6d9c3da (patch)
tree04e285d753bf650183b8bc397a29ca7b3c43aa1a
parentd549a3e085f3da5351670c0be0397467fa1394e7 (diff)
downloadmandoc-21987bf9ae5077818d53867b4ccd8380a6d9c3da.tar.gz
Remove the warning for empty bodies of `Sh', `Ss', `SH', and `SS'. This
prompted by a TODO by schwarze@, originally from Gleydson Soares, that an empty `SS' was raising an error (it hasn't for some time). It makes sense these shouldn't warn, as omitting their contents doesn't change anything in the structure of the document (groff and mandoc specifically account for the whitespace between empty sections). This doesn't change any manuals, which only refer to the line arguments (or possibly next-line, in the case of man(7) syntax).
-rw-r--r--man_validate.c11
-rw-r--r--mdoc_validate.c4
2 files changed, 6 insertions, 9 deletions
diff --git a/man_validate.c b/man_validate.c
index c1968989..6a72c0bd 100644
--- a/man_validate.c
+++ b/man_validate.c
@@ -325,14 +325,11 @@ static int
check_sec(CHKARGS)
{
- if (MAN_HEAD == n->type && 0 == n->nchild) {
- man_nmsg(m, n, MANDOCERR_SYNTARGCOUNT);
- return(0);
- } else if (MAN_BODY == n->type && 0 == n->nchild)
- mandoc_msg(MANDOCERR_ARGCWARN, m->parse, n->line,
- n->pos, "want children (have none)");
+ if ( ! (MAN_HEAD == n->type && 0 == n->nchild))
+ return(1);
- return(1);
+ man_nmsg(m, n, MANDOCERR_SYNTARGCOUNT);
+ return(0);
}
diff --git a/mdoc_validate.c b/mdoc_validate.c
index acd855eb..d3b19a7b 100644
--- a/mdoc_validate.c
+++ b/mdoc_validate.c
@@ -155,9 +155,9 @@ static v_post posts_notext[] = { ewarn_eq0, NULL };
static v_post posts_ns[] = { post_ns, NULL };
static v_post posts_os[] = { post_os, post_prol, NULL };
static v_post posts_rs[] = { post_rs, NULL };
-static v_post posts_sh[] = { post_ignpar, hwarn_ge1, bwarn_ge1, post_sh, NULL };
+static v_post posts_sh[] = { post_ignpar, hwarn_ge1, post_sh, NULL };
static v_post posts_sp[] = { ewarn_le1, NULL };
-static v_post posts_ss[] = { post_ignpar, hwarn_ge1, bwarn_ge1, NULL };
+static v_post posts_ss[] = { post_ignpar, hwarn_ge1, NULL };
static v_post posts_st[] = { post_st, NULL };
static v_post posts_std[] = { post_std, NULL };
static v_post posts_text[] = { ewarn_ge1, NULL };