summaryrefslogtreecommitdiffstats
path: root/bin/sh/eval.c
diff options
context:
space:
mode:
authorjilles <jilles@FreeBSD.org>2013-07-25 15:08:41 +0000
committerjilles <jilles@FreeBSD.org>2013-07-25 15:08:41 +0000
commit0ad2a46f33944b5fedbda54167af5739c8c5ed84 (patch)
tree4cdf5ff0108f4909c6111d72ffe6f925dec35704 /bin/sh/eval.c
parent34bfb313cd341ffba7e1c34cdc5f2aabc7cd8ec5 (diff)
downloadFreeBSD-src-0ad2a46f33944b5fedbda54167af5739c8c5ed84.zip
FreeBSD-src-0ad2a46f33944b5fedbda54167af5739c8c5ed84.tar.gz
sh: Remove mkinit.
Replace the RESET blocks with regular functions and a reset() function that calls them all. This code generation tool is unusual and does not appear to provide much benefit. I do not think isolating the knowledge about which modules need to be reset is worth an almost 500-line build tool and wider scope for variables used by the reset functions. Also, relying on reset functions is often wrong: the cleanup should be done in exception handlers so that no stale state remains after 'command eval' and the like.
Diffstat (limited to 'bin/sh/eval.c')
-rw-r--r--bin/sh/eval.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/bin/sh/eval.c b/bin/sh/eval.c
index 1a6d5ed..4d0fed7 100644
--- a/bin/sh/eval.c
+++ b/bin/sh/eval.c
@@ -104,16 +104,13 @@ static void prehash(union node *);
* Called to reset things after an exception.
*/
-#ifdef mkinit
-INCLUDE "eval.h"
-
-RESET {
+void
+reseteval(void)
+{
evalskip = 0;
loopnest = 0;
funcnest = 0;
}
-#endif
-
/*
OpenPOWER on IntegriCloud