version 1.95, 2017/05/04 17:48:24 |
version 1.96, 2017/05/05 02:06:17 |
|
|
static void post_AT(CHKARGS); |
static void post_AT(CHKARGS); |
static void post_IP(CHKARGS); |
static void post_IP(CHKARGS); |
static void post_vs(CHKARGS); |
static void post_vs(CHKARGS); |
static void post_ft(CHKARGS); |
|
static void post_OP(CHKARGS); |
static void post_OP(CHKARGS); |
static void post_TH(CHKARGS); |
static void post_TH(CHKARGS); |
static void post_UC(CHKARGS); |
static void post_UC(CHKARGS); |
|
|
NULL, /* PD */ |
NULL, /* PD */ |
post_AT, /* AT */ |
post_AT, /* AT */ |
NULL, /* in */ |
NULL, /* in */ |
post_ft, /* ft */ |
|
post_OP, /* OP */ |
post_OP, /* OP */ |
NULL, /* EX */ |
NULL, /* EX */ |
NULL, /* EE */ |
NULL, /* EE */ |
|
|
post_vs(man, n); |
post_vs(man, n); |
break; |
break; |
default: |
default: |
abort(); |
roff_validate(man); |
|
break; |
} |
} |
break; |
break; |
} |
} |
|
|
mandoc_vmsg(MANDOCERR_UR_NOHEAD, man->parse, |
mandoc_vmsg(MANDOCERR_UR_NOHEAD, man->parse, |
n->line, n->pos, "UR"); |
n->line, n->pos, "UR"); |
check_part(man, n); |
check_part(man, n); |
} |
|
|
|
static void |
|
post_ft(CHKARGS) |
|
{ |
|
char *cp; |
|
int ok; |
|
|
|
if (n->child == NULL) |
|
return; |
|
|
|
ok = 0; |
|
cp = n->child->string; |
|
switch (*cp) { |
|
case '1': |
|
case '2': |
|
case '3': |
|
case '4': |
|
case 'I': |
|
case 'P': |
|
case 'R': |
|
if ('\0' == cp[1]) |
|
ok = 1; |
|
break; |
|
case 'B': |
|
if ('\0' == cp[1] || ('I' == cp[1] && '\0' == cp[2])) |
|
ok = 1; |
|
break; |
|
case 'C': |
|
if ('W' == cp[1] && '\0' == cp[2]) |
|
ok = 1; |
|
break; |
|
default: |
|
break; |
|
} |
|
|
|
if (0 == ok) { |
|
mandoc_vmsg(MANDOCERR_FT_BAD, man->parse, |
|
n->line, n->pos, "ft %s", cp); |
|
*cp = '\0'; |
|
} |
|
} |
} |
|
|
static void |
static void |