aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/mandoc.h
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2010-08-20 01:02:07 +0000
committerIngo Schwarze <schwarze@openbsd.org>2010-08-20 01:02:07 +0000
commita1567e8417f169edf6c71532dc11bfa763ac444b (patch)
tree9acbfb9862a556c0d41f4af58c78fafc856128c1 /mandoc.h
parent6f04dff21d0fded19bbcaefed07c6e35138b590f (diff)
downloadmandoc-a1567e8417f169edf6c71532dc11bfa763ac444b.tar.gz
mandoc-a1567e8417f169edf6c71532dc11bfa763ac444b.tar.zst
mandoc-a1567e8417f169edf6c71532dc11bfa763ac444b.zip
Implement a simple, consistent user interface for error handling.
We now have sufficient practical experience to know what we want, so this is intended to be final: - provide -Wlevel (warning, error or fatal) to select what you care about - provide -Wstop to stop after parsing a file with warnings you care about - provide consistent exit status codes for those warnings you care about - fully document what warnings, errors and fatal errors mean - remove all other cruft from the user interface, less is more: - remove all -f knobs along with the whole -f option - remove the old -Werror because calling warnings "fatal" is silly - always finish parsing each file, unless fatal errors prevent that This commit also includes a couple of related simplifications behind the scenes regarding error handling. Feedback and OK kristaps@; Joerg Sonnenberger (NetBSD) and Sascha Wildner (DragonFly BSD) agree with the general direction.
Diffstat (limited to 'mandoc.h')
-rw-r--r--mandoc.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/mandoc.h b/mandoc.h
index 2fbc0d5b..b314d886 100644
--- a/mandoc.h
+++ b/mandoc.h
@@ -1,4 +1,4 @@
-/* $Id: mandoc.h,v 1.17 2010/07/20 14:56:42 kristaps Exp $ */
+/* $Id: mandoc.h,v 1.18 2010/08/20 01:02:07 schwarze Exp $ */
/*
* Copyright (c) 2010 Kristaps Dzonsons <kristaps@bsd.lv>
*
@@ -26,6 +26,17 @@
__BEGIN_DECLS
+enum mandoclevel {
+ MANDOCLEVEL_OK = 0,
+ MANDOCLEVEL_RESERVED,
+ MANDOCLEVEL_WARNING,
+ MANDOCLEVEL_ERROR,
+ MANDOCLEVEL_FATAL,
+ MANDOCLEVEL_BADARG,
+ MANDOCLEVEL_SYSERR,
+ MANDOCLEVEL_MAX
+};
+
enum mandocerr {
MANDOCERR_OK,
@@ -105,7 +116,7 @@ enum mandocerr {
MANDOCERR_NODOCBODY, /* no document body */
MANDOCERR_NODOCPROLOG, /* no document prologue */
MANDOCERR_UTSNAME, /* utsname system call failed */
- MANDOCERR_MEM, /* memory exhausted */
+ MANDOCERR_MEM, /* static buffer exhausted */
MANDOCERR_MAX
};