aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/mandoc.c
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.c
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.c')
-rw-r--r--mandoc.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/mandoc.c b/mandoc.c
index 7bba8cbb..53e7c7b6 100644
--- a/mandoc.c
+++ b/mandoc.c
@@ -1,4 +1,4 @@
-/* $Id: mandoc.c,v 1.28 2010/08/16 09:37:58 kristaps Exp $ */
+/* $Id: mandoc.c,v 1.29 2010/08/20 01:02:07 schwarze Exp $ */
/*
* Copyright (c) 2008, 2009, 2010 Kristaps Dzonsons <kristaps@bsd.lv>
*
@@ -199,7 +199,7 @@ mandoc_calloc(size_t num, size_t size)
ptr = calloc(num, size);
if (NULL == ptr) {
perror(NULL);
- exit(EXIT_FAILURE);
+ exit(MANDOCLEVEL_SYSERR);
}
return(ptr);
@@ -214,7 +214,7 @@ mandoc_malloc(size_t size)
ptr = malloc(size);
if (NULL == ptr) {
perror(NULL);
- exit(EXIT_FAILURE);
+ exit(MANDOCLEVEL_SYSERR);
}
return(ptr);
@@ -228,7 +228,7 @@ mandoc_realloc(void *ptr, size_t size)
ptr = realloc(ptr, size);
if (NULL == ptr) {
perror(NULL);
- exit(EXIT_FAILURE);
+ exit(MANDOCLEVEL_SYSERR);
}
return(ptr);
@@ -243,7 +243,7 @@ mandoc_strdup(const char *ptr)
p = strdup(ptr);
if (NULL == p) {
perror(NULL);
- exit(EXIT_FAILURE);
+ exit(MANDOCLEVEL_SYSERR);
}
return(p);