version 1.310, 2016/12/28 17:34:18 |
version 1.311, 2017/01/08 00:11:24 |
|
|
/* $Id$ */ |
/* $Id$ */ |
/* |
/* |
* Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2010-2016 Ingo Schwarze <schwarze@openbsd.org> |
* Copyright (c) 2010-2017 Ingo Schwarze <schwarze@openbsd.org> |
* Copyright (c) 2010 Joerg Sonnenberger <joerg@netbsd.org> |
* Copyright (c) 2010 Joerg Sonnenberger <joerg@netbsd.org> |
* |
* |
* Permission to use, copy, modify, and distribute this software for any |
* Permission to use, copy, modify, and distribute this software for any |
Line 851 post_nm(POST_ARGS) |
|
Line 851 post_nm(POST_ARGS) |
|
n->last->tok == MDOC_Lp)) |
n->last->tok == MDOC_Lp)) |
mdoc_node_relink(mdoc, n->last); |
mdoc_node_relink(mdoc, n->last); |
|
|
if (mdoc->meta.name != NULL) |
|
return; |
|
|
|
deroff(&mdoc->meta.name, n); |
|
|
|
if (mdoc->meta.name == NULL) |
if (mdoc->meta.name == NULL) |
|
deroff(&mdoc->meta.name, n); |
|
|
|
if (mdoc->meta.name == NULL || |
|
(mdoc->lastsec == SEC_NAME && n->child == NULL)) |
mandoc_msg(MANDOCERR_NM_NONAME, mdoc->parse, |
mandoc_msg(MANDOCERR_NM_NONAME, mdoc->parse, |
n->line, n->pos, "Nm"); |
n->line, n->pos, "Nm"); |
} |
} |
Line 1598 post_sh_name(POST_ARGS) |
|
Line 1597 post_sh_name(POST_ARGS) |
|
for (n = mdoc->last->child; n != NULL; n = n->next) { |
for (n = mdoc->last->child; n != NULL; n = n->next) { |
switch (n->tok) { |
switch (n->tok) { |
case MDOC_Nm: |
case MDOC_Nm: |
|
if (hasnm && n->child != NULL) |
|
mandoc_vmsg(MANDOCERR_NAMESEC_PUNCT, |
|
mdoc->parse, n->line, n->pos, |
|
"Nm %s", n->child->string); |
hasnm = 1; |
hasnm = 1; |
break; |
continue; |
case MDOC_Nd: |
case MDOC_Nd: |
hasnd = 1; |
hasnd = 1; |
if (n->next != NULL) |
if (n->next != NULL) |
Line 1607 post_sh_name(POST_ARGS) |
|
Line 1610 post_sh_name(POST_ARGS) |
|
mdoc->parse, n->line, n->pos, NULL); |
mdoc->parse, n->line, n->pos, NULL); |
break; |
break; |
case TOKEN_NONE: |
case TOKEN_NONE: |
if (hasnm) |
if (n->type == ROFFT_TEXT && |
break; |
n->string[0] == ',' && n->string[1] == '\0' && |
|
n->next != NULL && n->next->tok == MDOC_Nm) { |
|
n = n->next; |
|
continue; |
|
} |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
default: |
default: |
mandoc_msg(MANDOCERR_NAMESEC_BAD, mdoc->parse, |
mandoc_msg(MANDOCERR_NAMESEC_BAD, mdoc->parse, |
n->line, n->pos, mdoc_macronames[n->tok]); |
n->line, n->pos, mdoc_macronames[n->tok]); |
break; |
continue; |
} |
} |
|
break; |
} |
} |
|
|
if ( ! hasnm) |
if ( ! hasnm) |