version 1.49, 2009/01/22 14:56:21 |
version 1.50, 2009/02/22 19:23:48 |
Line 1086 macro_constant_scoped(MACRO_PROT_ARGS) |
|
Line 1086 macro_constant_scoped(MACRO_PROT_ARGS) |
|
int |
int |
macro_constant_delimited(MACRO_PROT_ARGS) |
macro_constant_delimited(MACRO_PROT_ARGS) |
{ |
{ |
int lastarg, flushed, j, c, maxargs, argc; |
int lastarg, flushed, j, c, maxargs, argc, |
|
igndelim; |
struct mdoc_arg argv[MDOC_LINEARG_MAX]; |
struct mdoc_arg argv[MDOC_LINEARG_MAX]; |
char *p; |
char *p; |
|
|
Line 1098 macro_constant_delimited(MACRO_PROT_ARGS) |
|
Line 1099 macro_constant_delimited(MACRO_PROT_ARGS) |
|
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case (MDOC_Ns): |
case (MDOC_Ns): |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case (MDOC_Pf): |
|
/* FALLTHROUGH */ |
|
case (MDOC_Ux): |
case (MDOC_Ux): |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case (MDOC_St): |
case (MDOC_St): |
Line 1110 macro_constant_delimited(MACRO_PROT_ARGS) |
|
Line 1109 macro_constant_delimited(MACRO_PROT_ARGS) |
|
break; |
break; |
} |
} |
|
|
|
switch (tok) { |
|
case (MDOC_Pf): |
|
igndelim = 1; |
|
break; |
|
default: |
|
igndelim = 0; |
|
break; |
|
} |
|
|
for (argc = 0; argc < MDOC_LINEARG_MAX; argc++) { |
for (argc = 0; argc < MDOC_LINEARG_MAX; argc++) { |
lastarg = *pos; |
lastarg = *pos; |
c = mdoc_argv(mdoc, line, tok, &argv[argc], pos, buf); |
c = mdoc_argv(mdoc, line, tok, &argv[argc], pos, buf); |
Line 1167 macro_constant_delimited(MACRO_PROT_ARGS) |
|
Line 1175 macro_constant_delimited(MACRO_PROT_ARGS) |
|
break; |
break; |
} |
} |
|
|
if ( ! flushed && mdoc_isdelim(p)) { |
if ( ! flushed && mdoc_isdelim(p) && ! igndelim) { |
if ( ! rewind_elem(mdoc, tok)) |
if ( ! rewind_elem(mdoc, tok)) |
return(0); |
return(0); |
flushed = 1; |
flushed = 1; |