version 1.58, 2009/02/24 16:16:45 |
version 1.60, 2009/02/25 12:32:50 |
Line 55 static int check_text(struct mdoc *, |
|
Line 55 static int check_text(struct mdoc *, |
|
size_t, size_t, const char *); |
size_t, size_t, const char *); |
|
|
static int err_child_lt(struct mdoc *, const char *, int); |
static int err_child_lt(struct mdoc *, const char *, int); |
|
static int warn_child_lt(struct mdoc *, const char *, int); |
static int err_child_gt(struct mdoc *, const char *, int); |
static int err_child_gt(struct mdoc *, const char *, int); |
static int warn_child_gt(struct mdoc *, const char *, int); |
static int warn_child_gt(struct mdoc *, const char *, int); |
static int err_child_eq(struct mdoc *, const char *, int); |
static int err_child_eq(struct mdoc *, const char *, int); |
Line 89 static int pre_prologue(PRE_ARGS); |
|
Line 90 static int pre_prologue(PRE_ARGS); |
|
/* Specific post-child-parse routines. */ |
/* Specific post-child-parse routines. */ |
|
|
static int herr_ge1(POST_ARGS); |
static int herr_ge1(POST_ARGS); |
static int herr_le1(POST_ARGS); |
static int hwarn_le1(POST_ARGS); |
static int herr_eq0(POST_ARGS); |
static int herr_eq0(POST_ARGS); |
static int eerr_eq0(POST_ARGS); |
static int eerr_eq0(POST_ARGS); |
static int eerr_le1(POST_ARGS); |
static int eerr_le1(POST_ARGS); |
Line 153 static v_post posts_an[] = { post_an, NULL }; |
|
Line 154 static v_post posts_an[] = { post_an, NULL }; |
|
static v_post posts_at[] = { post_at, NULL }; |
static v_post posts_at[] = { post_at, NULL }; |
static v_post posts_xr[] = { eerr_ge1, eerr_le2, post_xr, NULL }; |
static v_post posts_xr[] = { eerr_ge1, eerr_le2, post_xr, NULL }; |
static v_post posts_nm[] = { post_nm, NULL }; |
static v_post posts_nm[] = { post_nm, NULL }; |
static v_post posts_bf[] = { herr_le1, post_bf, NULL }; |
static v_post posts_bf[] = { hwarn_le1, post_bf, NULL }; |
static v_post posts_rs[] = { herr_eq0, bwarn_ge1, NULL }; |
static v_post posts_rs[] = { herr_eq0, bwarn_ge1, NULL }; |
static v_post posts_fo[] = { hwarn_eq1, bwarn_ge1, NULL }; |
static v_post posts_fo[] = { hwarn_eq1, bwarn_ge1, NULL }; |
static v_post posts_bk[] = { herr_eq0, bwarn_ge1, NULL }; |
static v_post posts_bk[] = { herr_eq0, bwarn_ge1, NULL }; |
Line 432 CHECK_CHILD_DEFN(err, gt, >) /* err_child_gt() */ |
|
Line 433 CHECK_CHILD_DEFN(err, gt, >) /* err_child_gt() */ |
|
CHECK_CHILD_DEFN(warn, eq, ==) /* warn_child_eq() */ |
CHECK_CHILD_DEFN(warn, eq, ==) /* warn_child_eq() */ |
CHECK_CHILD_DEFN(err, eq, ==) /* err_child_eq() */ |
CHECK_CHILD_DEFN(err, eq, ==) /* err_child_eq() */ |
CHECK_CHILD_DEFN(err, lt, <) /* err_child_lt() */ |
CHECK_CHILD_DEFN(err, lt, <) /* err_child_lt() */ |
|
CHECK_CHILD_DEFN(warn, lt, <) /* warn_child_lt() */ |
CHECK_BODY_DEFN(ge1, warn, warn_child_gt, 0) /* bwarn_ge1() */ |
CHECK_BODY_DEFN(ge1, warn, warn_child_gt, 0) /* bwarn_ge1() */ |
CHECK_ELEM_DEFN(eq1, warn, warn_child_eq, 1) /* ewarn_eq1() */ |
CHECK_ELEM_DEFN(eq1, warn, warn_child_eq, 1) /* ewarn_eq1() */ |
CHECK_ELEM_DEFN(eq0, warn, warn_child_eq, 0) /* ewarn_eq0() */ |
CHECK_ELEM_DEFN(eq0, warn, warn_child_eq, 0) /* ewarn_eq0() */ |
Line 442 CHECK_ELEM_DEFN(le1, err, err_child_lt, 2) /* eerr_le1 |
|
Line 444 CHECK_ELEM_DEFN(le1, err, err_child_lt, 2) /* eerr_le1 |
|
CHECK_ELEM_DEFN(eq0, err, err_child_eq, 0) /* eerr_eq0() */ |
CHECK_ELEM_DEFN(eq0, err, err_child_eq, 0) /* eerr_eq0() */ |
CHECK_ELEM_DEFN(ge1, err, err_child_gt, 0) /* eerr_ge1() */ |
CHECK_ELEM_DEFN(ge1, err, err_child_gt, 0) /* eerr_ge1() */ |
CHECK_HEAD_DEFN(eq0, err, err_child_eq, 0) /* herr_eq0() */ |
CHECK_HEAD_DEFN(eq0, err, err_child_eq, 0) /* herr_eq0() */ |
CHECK_HEAD_DEFN(le1, err, err_child_lt, 2) /* herr_le1() */ |
CHECK_HEAD_DEFN(le1, warn, warn_child_lt, 2) /* hwarn_le1() */ |
CHECK_HEAD_DEFN(ge1, err, err_child_gt, 0) /* herr_ge1() */ |
CHECK_HEAD_DEFN(ge1, err, err_child_gt, 0) /* herr_ge1() */ |
CHECK_HEAD_DEFN(eq1, warn, warn_child_eq, 1) /* hwarn_eq1() */ |
CHECK_HEAD_DEFN(eq1, warn, warn_child_eq, 1) /* hwarn_eq1() */ |
|
|
Line 479 check_text(struct mdoc *mdoc, size_t line, size_t pos, |
|
Line 481 check_text(struct mdoc *mdoc, size_t line, size_t pos, |
|
size_t c; |
size_t c; |
|
|
for ( ; *p; p++) { |
for ( ; *p; p++) { |
if ( ! isprint(*p) && '\t' != *p) |
if ( ! isprint((int)*p) && '\t' != *p) |
return(mdoc_perr(mdoc, line, pos, |
return(mdoc_perr(mdoc, line, pos, |
"invalid characters")); |
"invalid characters")); |
if ('\\' != *p) |
if ('\\' != *p) |
Line 538 pre_display(PRE_ARGS) |
|
Line 540 pre_display(PRE_ARGS) |
|
static int |
static int |
pre_bl(PRE_ARGS) |
pre_bl(PRE_ARGS) |
{ |
{ |
int type, err, i; |
int type, i; |
struct mdoc_arg *argv; |
struct mdoc_arg *argv; |
size_t argc; |
size_t argc; |
|
|
Line 550 pre_bl(PRE_ARGS) |
|
Line 552 pre_bl(PRE_ARGS) |
|
/* Make sure that only one type of list is specified. */ |
/* Make sure that only one type of list is specified. */ |
|
|
/* LINTED */ |
/* LINTED */ |
for (i = 0, type = err = 0; i < (int)argc; i++) { |
for (i = 0, type = 0; i < (int)argc; i++) { |
argv = &n->data.block.argv[i]; |
argv = &n->data.block.argv[i]; |
|
|
switch (argv->arg) { |
switch (argv->arg) { |