The "no }" error with find | xargs sed is because toy_init() wasn't blanking the GLOBALS() block on a recursive call. (How that ever worked...)
diff --git a/main.c b/main.c
index a81cfb9..4644d19 100644
--- a/main.c
+++ b/main.c
@@ -116,6 +116,7 @@
 
   if (toys.optargs != toys.argv+1) free(toys.optargs);
   memset(&toys, 0, offsetof(struct toy_context, rebound));
+  if (toys.recursion > 1) memset(&this, 0, sizeof(this));
 
   // Subset of init needed by singlemain.
   toy_singleinit(which, argv);