From: Jim Meyering <meyering@redhat.com>
Date: Fri, 20 Nov 2009 12:24:24 +0000 (+0100)
Subject: maint.mk: improve sc_prohibit_magic_number_exit
X-Git-Tag: v0.1~5162
X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=00b2f10b68593189be4eb1affd88de33a8e92fb3;p=gnulib.git

maint.mk: improve sc_prohibit_magic_number_exit

* top/maint.mk (sc_prohibit_magic_number_exit): Tighten regexp
so it does not match uses like System.exit(1).
Add comments showing how to correct all offenders.
---

diff --git a/ChangeLog b/ChangeLog
index eacd8e055b..51fe8ed2c0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2009-11-20  Jim Meyering  <meyering@redhat.com>
+
+	maint.mk: improve sc_prohibit_magic_number_exit
+	* top/maint.mk (sc_prohibit_magic_number_exit): Tighten regexp
+	so it does not match uses like System.exit(1).
+	Add comments showing how to correct all offenders.
+
 2009-11-19  Eric Blake  <ebb9@byu.net>
 
 	xalloc-die-tests: add missing library
diff --git a/top/maint.mk b/top/maint.mk
index 34d66e1d14..3452a1588c 100644
--- a/top/maint.mk
+++ b/top/maint.mk
@@ -157,8 +157,17 @@ sc_prohibit_strcmp:
 		1>&2; exit 1; } || :
 
 # Pass EXIT_*, not number, to usage, exit, and error (when exiting)
+# Convert all uses automatically, via these two commands:
+# git grep -l '\<exit *(1)' \
+#  | grep -vEf .x-sc_prohibit_magic_number_exit \
+#  | xargs --no-run-if-empty \
+#      perl -pi -e 's/(^|[^.])\b(exit ?)\(1\)/$1$2(EXIT_FAILURE)/'
+# git grep -l '\<exit *(0)' \
+#  | grep -vEf .x-sc_prohibit_magic_number_exit \
+#  | xargs --no-run-if-empty \
+#      perl -pi -e 's/(^|[^.])\b(exit ?)\(0\)/$1$2(EXIT_SUCCESS)/'
 sc_prohibit_magic_number_exit:
-	@re='\<(usage|exit) ?\([0-9]|\<error ?\([1-9][0-9]*,'		\
+	@re='(^|[^.])\<(usage|exit) ?\([0-9]|\<error ?\([1-9][0-9]*,'	\
 	msg='use EXIT_* values rather than magic number'		\
 	  $(_prohibit_regexp)