(I suggest a recompile after getting this, the ceval.c bugfix may be crucial!)

* Makefile: removed superfluous AR=ar, fixed misleading comment.
* ceval.c: fixed debugging code; save/restore errors in locals_2_fast.
* intrcheck.c: for SunOS etc., turn off syscall resumption.
* regexpr.h: bump number of registers to 100.
diff --git a/Parser/intrcheck.c b/Parser/intrcheck.c
index feab766..4636b3f 100644
--- a/Parser/intrcheck.c
+++ b/Parser/intrcheck.c
@@ -140,6 +140,15 @@
 {
 	if (signal(SIGINT, SIG_IGN) != SIG_IGN)
 		signal(SIGINT, intcatcher);
+#ifdef SV_INTERRUPT
+	/* This is for SunOS and other modern BSD derivatives.
+	   It means that system calls (like read()) are not restarted
+	   after an interrupt.  This is necessary so interrupting a
+	   read() or readline() call works as expected.
+	   XXX On old BSD (pure 4.2 or older) you may have to do this
+	   differently! */
+	siginterrupt(SIGINT, 1);
+#endif
 }
 
 int