version 1.93, 2014/07/04 16:11:41 |
version 1.94, 2014/07/07 21:35:42 |
|
|
for ( ; n; n = n->parent) |
for ( ; n; n = n->parent) |
if (MDOC_BLOCK == n->type && |
if (MDOC_BLOCK == n->type && |
MDOC_EXPLICIT & mdoc_macros[n->tok].flags) |
MDOC_EXPLICIT & mdoc_macros[n->tok].flags) |
mdoc_nmsg(mdoc, n, MANDOCERR_SCOPEEXIT); |
mandoc_msg(MANDOCERR_BLK_NOEND, mdoc->parse, |
|
n->line, n->pos, mdoc_macronames[n->tok]); |
|
|
/* Rewind to the first. */ |
/* Rewind to the first. */ |
|
|
|
|
taker->pending = broken->pending; |
taker->pending = broken->pending; |
} |
} |
broken->pending = breaker; |
broken->pending = breaker; |
mandoc_vmsg(MANDOCERR_BLOCK_NEST, mdoc->parse, line, ppos, |
mandoc_vmsg(MANDOCERR_BLK_NEST, mdoc->parse, line, ppos, |
"%s breaks %s", mdoc_macronames[tok], |
"%s breaks %s", mdoc_macronames[tok], |
mdoc_macronames[broken->tok]); |
mdoc_macronames[broken->tok]); |
return(1); |
return(1); |
|
|
! (MDOC_EXPLICIT & mdoc_macros[tok].flags)); |
! (MDOC_EXPLICIT & mdoc_macros[tok].flags)); |
break; |
break; |
case REWIND_FORCE: |
case REWIND_FORCE: |
mandoc_vmsg(MANDOCERR_SCOPEBROKEN, mdoc->parse, |
mandoc_vmsg(MANDOCERR_BLK_BROKEN, mdoc->parse, |
line, ppos, "%s breaks %s", |
line, ppos, "%s breaks %s", |
mdoc_macronames[tok], |
mdoc_macronames[tok], |
mdoc_macronames[n->tok]); |
mdoc_macronames[n->tok]); |
|
|
return(1); |
return(1); |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case REWIND_ERROR: |
case REWIND_ERROR: |
mdoc_pmsg(mdoc, line, ppos, MANDOCERR_NOSCOPE); |
mandoc_msg(MANDOCERR_BLK_NOTOPEN, |
|
mdoc->parse, line, ppos, |
|
mdoc_macronames[tok]); |
return(1); |
return(1); |
} |
} |
break; |
break; |
|
|
while (NULL != n && MDOC_Bl != n->tok) |
while (NULL != n && MDOC_Bl != n->tok) |
n = n->parent; |
n = n->parent; |
if (NULL == n || LIST_column != n->norm->Bl.type) { |
if (NULL == n || LIST_column != n->norm->Bl.type) { |
mdoc_pmsg(mdoc, line, ppos, MANDOCERR_STRAYTA); |
mandoc_msg(MANDOCERR_TA_STRAY, mdoc->parse, |
|
line, ppos, NULL); |
return(1); |
return(1); |
} |
} |
|
|