diff options
author | 2010-05-13 20:34:29 +0000 | |
---|---|---|
committer | 2010-05-13 20:34:29 +0000 | |
commit | 76e1f6750b14c432f7a1ddea7ef59980ea7155e7 (patch) | |
tree | 612c6b74c5d122b8ef556eaff8e137daacc739c0 | |
parent | Synchronise amd64 more with other PMAP_DIRECT architectures. (step 1, (diff) | |
download | wireguard-openbsd-76e1f6750b14c432f7a1ddea7ef59980ea7155e7.tar.xz wireguard-openbsd-76e1f6750b14c432f7a1ddea7ef59980ea7155e7.zip |
Remove the command line option -fno-ign-chars.
This option was not useful, you never want mandoc to die
just because there is an invalid character in the input file,
neither in production nor when linting: a warning is sufficient.
This was particularly annoying because it was part of -fstrict
and could not be switched off.
"less is more" kristaps@
-rw-r--r-- | usr.bin/mandoc/main.c | 30 | ||||
-rw-r--r-- | usr.bin/mandoc/man.h | 3 | ||||
-rw-r--r-- | usr.bin/mandoc/man_validate.c | 6 | ||||
-rw-r--r-- | usr.bin/mandoc/mandoc.1 | 11 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc.h | 3 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc_validate.c | 17 |
6 files changed, 21 insertions, 49 deletions
diff --git a/usr.bin/mandoc/main.c b/usr.bin/mandoc/main.c index 8b86fb5bbd9..069c9436ad4 100644 --- a/usr.bin/mandoc/main.c +++ b/usr.bin/mandoc/main.c @@ -1,4 +1,4 @@ -/* $Id: main.c,v 1.23 2010/04/13 06:52:12 jmc Exp $ */ +/* $Id: main.c,v 1.24 2010/05/13 20:34:29 schwarze Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se> * @@ -63,7 +63,6 @@ struct curparse { #define FL_IGN_SCOPE (1 << 0) /* Ignore scope errors. */ #define FL_NIGN_ESCAPE (1 << 1) /* Don't ignore bad escapes. */ #define FL_NIGN_MACRO (1 << 2) /* Don't ignore bad macros. */ -#define FL_NIGN_CHARS (1 << 3) /* Don't ignore bad chars. */ #define FL_IGN_ERRORS (1 << 4) /* Ignore failed parse. */ enum intt inttype; /* Input parsers... */ struct man *man; @@ -79,8 +78,7 @@ struct curparse { }; #define FL_STRICT FL_NIGN_ESCAPE | \ - FL_NIGN_MACRO | \ - FL_NIGN_CHARS + FL_NIGN_MACRO static int foptions(int *, char *); static int toptions(struct curparse *, char *); @@ -234,12 +232,10 @@ man_init(struct curparse *curp) /* Defaults from mandoc.1. */ - pflags = MAN_IGN_MACRO | MAN_IGN_ESCAPE | MAN_IGN_CHARS; + pflags = MAN_IGN_MACRO | MAN_IGN_ESCAPE; if (curp->fflags & FL_NIGN_MACRO) pflags &= ~MAN_IGN_MACRO; - if (curp->fflags & FL_NIGN_CHARS) - pflags &= ~MAN_IGN_CHARS; if (curp->fflags & FL_NIGN_ESCAPE) pflags &= ~MAN_IGN_ESCAPE; @@ -258,7 +254,7 @@ mdoc_init(struct curparse *curp) /* Defaults from mandoc.1. */ - pflags = MDOC_IGN_MACRO | MDOC_IGN_ESCAPE | MDOC_IGN_CHARS; + pflags = MDOC_IGN_MACRO | MDOC_IGN_ESCAPE; if (curp->fflags & FL_IGN_SCOPE) pflags |= MDOC_IGN_SCOPE; @@ -266,8 +262,6 @@ mdoc_init(struct curparse *curp) pflags &= ~MDOC_IGN_ESCAPE; if (curp->fflags & FL_NIGN_MACRO) pflags &= ~MDOC_IGN_MACRO; - if (curp->fflags & FL_NIGN_CHARS) - pflags &= ~MDOC_IGN_CHARS; return(mdoc_alloc(curp, pflags, &mdoccb)); } @@ -572,11 +566,10 @@ foptions(int *fflags, char *arg) toks[0] = "ign-scope"; toks[1] = "no-ign-escape"; toks[2] = "no-ign-macro"; - toks[3] = "no-ign-chars"; - toks[4] = "ign-errors"; - toks[5] = "strict"; - toks[6] = "ign-escape"; - toks[7] = NULL; + toks[3] = "ign-errors"; + toks[4] = "strict"; + toks[5] = "ign-escape"; + toks[6] = NULL; while (*arg) { o = arg; @@ -591,15 +584,12 @@ foptions(int *fflags, char *arg) *fflags |= FL_NIGN_MACRO; break; case (3): - *fflags |= FL_NIGN_CHARS; - break; - case (4): *fflags |= FL_IGN_ERRORS; break; - case (5): + case (4): *fflags |= FL_STRICT; break; - case (6): + case (5): *fflags &= ~FL_NIGN_ESCAPE; break; default: diff --git a/usr.bin/mandoc/man.h b/usr.bin/mandoc/man.h index 5c4372e03e5..ecf250e1dd4 100644 --- a/usr.bin/mandoc/man.h +++ b/usr.bin/mandoc/man.h @@ -1,4 +1,4 @@ -/* $Id: man.h,v 1.15 2010/04/25 16:32:19 schwarze Exp $ */ +/* $Id: man.h,v 1.16 2010/05/13 20:34:29 schwarze Exp $ */ /* * Copyright (c) 2009 Kristaps Dzonsons <kristaps@kth.se> * @@ -104,7 +104,6 @@ struct man_node { }; #define MAN_IGN_MACRO (1 << 0) -#define MAN_IGN_CHARS (1 << 1) #define MAN_IGN_ESCAPE (1 << 2) extern const char *const *man_macronames; diff --git a/usr.bin/mandoc/man_validate.c b/usr.bin/mandoc/man_validate.c index 66b5fc5248f..df27998d5a0 100644 --- a/usr.bin/mandoc/man_validate.c +++ b/usr.bin/mandoc/man_validate.c @@ -1,4 +1,4 @@ -/* $Id: man_validate.c,v 1.19 2010/04/25 16:32:19 schwarze Exp $ */ +/* $Id: man_validate.c,v 1.20 2010/05/13 20:34:29 schwarze Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se> * @@ -228,9 +228,7 @@ check_text(CHKARGS) if ('\t' == *p || isprint((u_char)*p)) continue; - if (MAN_IGN_CHARS & m->pflags) - return(man_pwarn(m, n->line, pos, WNPRINT)); - return(man_perr(m, n->line, pos, WNPRINT)); + return(man_pwarn(m, n->line, pos, WNPRINT)); } return(1); diff --git a/usr.bin/mandoc/mandoc.1 b/usr.bin/mandoc/mandoc.1 index 9eca8bd85d4..9fecf524639 100644 --- a/usr.bin/mandoc/mandoc.1 +++ b/usr.bin/mandoc/mandoc.1 @@ -1,4 +1,4 @@ -.\" $OpenBSD: mandoc.1,v 1.27 2010/04/13 08:52:23 jmc Exp $ +.\" $OpenBSD: mandoc.1,v 1.28 2010/05/13 20:34:29 schwarze Exp $ .\" .\" Copyright (c) 2009 Kristaps Dzonsons <kristaps@kth.se> .\" @@ -14,7 +14,7 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: April 13 2010 $ +.Dd $Mdocdate: May 13 2010 $ .Dt MANDOC 1 .Os .Sh NAME @@ -192,18 +192,15 @@ When rewinding the scope of a block macro, forces the compiler to ignore scope violations. This can seriously mangle the resulting tree. .Pq mdoc only -.It Fl f Ns Cm no-ign-chars -Do not ignore disallowed characters. .It Fl f Ns Cm no-ign-escape Do not ignore invalid escape sequences. .It Fl f Ns Cm no-ign-macro Do not ignore unknown macros at the start of input lines. .It Fl f Ns Cm strict Implies -.Fl f Ns Cm no-ign-escape , -.Fl f Ns Cm no-ign-macro , +.Fl f Ns Cm no-ign-escape and -.Fl f Ns Cm no-ign-chars . +.Fl f Ns Cm no-ign-macro . .El .Ss Output Options For the time being, only diff --git a/usr.bin/mandoc/mdoc.h b/usr.bin/mandoc/mdoc.h index 465b8e7ed34..a9c003b661e 100644 --- a/usr.bin/mandoc/mdoc.h +++ b/usr.bin/mandoc/mdoc.h @@ -1,4 +1,4 @@ -/* $Id: mdoc.h,v 1.19 2010/04/02 12:39:47 schwarze Exp $ */ +/* $Id: mdoc.h,v 1.20 2010/05/13 20:34:29 schwarze Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se> * @@ -274,7 +274,6 @@ struct mdoc_node { #define MDOC_IGN_SCOPE (1 << 0) /* Ignore scope violations. */ #define MDOC_IGN_ESCAPE (1 << 1) /* Ignore bad escape sequences. */ #define MDOC_IGN_MACRO (1 << 2) /* Ignore unknown macros. */ -#define MDOC_IGN_CHARS (1 << 3) /* Ignore disallowed chars. */ /* Call-backs for parse messages. */ diff --git a/usr.bin/mandoc/mdoc_validate.c b/usr.bin/mandoc/mdoc_validate.c index 1d6a9934a04..308a52b2adb 100644 --- a/usr.bin/mandoc/mdoc_validate.c +++ b/usr.bin/mandoc/mdoc_validate.c @@ -1,4 +1,4 @@ -/* $Id: mdoc_validate.c,v 1.48 2010/04/07 23:15:05 schwarze Exp $ */ +/* $Id: mdoc_validate.c,v 1.49 2010/05/13 20:34:29 schwarze Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se> * @@ -56,7 +56,6 @@ static int err_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 warn_child_eq(struct mdoc *, const char *, int); -static int warn_print(struct mdoc *, int, int); static int warn_count(struct mdoc *, const char *, int, const char *, int); static int err_count(struct mdoc *, const char *, @@ -322,16 +321,6 @@ mdoc_valid_post(struct mdoc *mdoc) } -static int -warn_print(struct mdoc *m, int ln, int pos) -{ - - if (MDOC_IGN_CHARS & m->pflags) - return(mdoc_pwarn(m, ln, pos, EPRINT)); - return(mdoc_perr(m, ln, pos, EPRINT)); -} - - static inline int warn_count(struct mdoc *m, const char *k, int want, const char *v, int has) @@ -517,10 +506,10 @@ check_text(struct mdoc *mdoc, int line, int pos, const char *p) for ( ; *p; p++, pos++) { if ('\t' == *p) { if ( ! (MDOC_LITERAL & mdoc->flags)) - if ( ! warn_print(mdoc, line, pos)) + if ( ! mdoc_pwarn(mdoc, line, pos, EPRINT)) return(0); } else if ( ! isprint((u_char)*p)) - if ( ! warn_print(mdoc, line, pos)) + if ( ! mdoc_pwarn(mdoc, line, pos, EPRINT)) return(0); if ('\\' != *p) |