diff options
author | Kristaps Dzonsons <kristaps@bsd.lv> | 2010-11-29 13:51:03 +0000 |
---|---|---|
committer | Kristaps Dzonsons <kristaps@bsd.lv> | 2010-11-29 13:51:03 +0000 |
commit | 13d6d1a03535bf46442e276fc77a2f4ed9e14fc9 (patch) | |
tree | 62a1b3d2a6c1a2ee598eba2e9960f2aef96ab624 /mdoc_action.c | |
parent | 8e392c10f46295efafb9684415556e05d79d3873 (diff) | |
download | mandoc-13d6d1a03535bf46442e276fc77a2f4ed9e14fc9.tar.gz |
Move `Sh' validation from mdoc_action.c. into mdoc_validate.c.
Surprisingly, both functions were doing pretty much the same thing.
Make sure that the changes incorporate the union of both.
Diffstat (limited to 'mdoc_action.c')
-rw-r--r-- | mdoc_action.c | 60 |
1 files changed, 1 insertions, 59 deletions
diff --git a/mdoc_action.c b/mdoc_action.c index d7e68b6d..53333171 100644 --- a/mdoc_action.c +++ b/mdoc_action.c @@ -64,7 +64,6 @@ static int post_nm(POST_ARGS); static int post_os(POST_ARGS); static int post_pa(POST_ARGS); static int post_prol(POST_ARGS); -static int post_sh(POST_ARGS); static int post_st(POST_ARGS); static int post_std(POST_ARGS); @@ -76,7 +75,7 @@ static const struct actions mdoc_actions[MDOC_MAX] = { { NULL, post_dd }, /* Dd */ { NULL, post_dt }, /* Dt */ { NULL, post_os }, /* Os */ - { NULL, post_sh }, /* Sh */ + { NULL, NULL }, /* Sh */ { NULL, NULL }, /* Ss */ { NULL, NULL }, /* Pp */ { NULL, NULL }, /* D1 */ @@ -429,63 +428,6 @@ post_at(POST_ARGS) /* - * Mark the current section. The ``named'' section (lastnamed) is set - * whenever the current section isn't a custom section--we use this to - * keep track of section ordering. Also check that the section is - * allowed within the document's manual section. - */ -static int -post_sh(POST_ARGS) -{ - enum mdoc_sec sec; - char buf[BUFSIZ]; - - if (MDOC_HEAD != n->type) - return(1); - - if ( ! concat(m, buf, n->child, BUFSIZ)) - return(0); - sec = mdoc_str2sec(buf); - /* - * The first section should always make us move into a non-new - * state. - */ - if (SEC_NONE == m->lastnamed || SEC_CUSTOM != sec) - m->lastnamed = sec; - - /* - * Switch the parser's SYNOPSIS mode, to be copied - * into individual nodes when creating them. - * Note that this mode can also be set and unset - * using the roff nS register. - */ - if (SEC_SYNOPSIS == sec) - m->flags |= MDOC_SYNOPSIS; - else - m->flags &= ~MDOC_SYNOPSIS; - - /* Some sections only live in certain manual sections. */ - - switch ((m->lastsec = sec)) { - case (SEC_RETURN_VALUES): - /* FALLTHROUGH */ - case (SEC_ERRORS): - assert(m->meta.msec); - if (*m->meta.msec == '2') - break; - if (*m->meta.msec == '3') - break; - if (*m->meta.msec == '9') - break; - return(mdoc_nmsg(m, n, MANDOCERR_SECMSEC)); - default: - break; - } - return(1); -} - - -/* * Parse out the contents of `Dt'. See in-line documentation for how we * handle the various fields of this macro. */ |