From c3c35ad40cf3e3c59f40e3bbbefbefd764118bd0 Mon Sep 17 00:00:00 2001
From: wlott <wlott>
Date: Thu, 26 Mar 1992 03:15:22 +0000
Subject: [PATCH] Moved export for WITHOUT-{GCING,HEMLOCK} from lispinit to
 here. Moved WITH-ENABLED-INTERRUPTS into signal.lisp

---
 code/sysmacs.lisp | 39 +++++++--------------------------------
 1 file changed, 7 insertions(+), 32 deletions(-)

diff --git a/code/sysmacs.lisp b/code/sysmacs.lisp
index 2c57d2120..2ad0c4958 100644
--- a/code/sysmacs.lisp
+++ b/code/sysmacs.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/sysmacs.lisp,v 1.10 1991/07/25 22:24:43 wlott Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/sysmacs.lisp,v 1.11 1992/03/26 03:15:22 wlott Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -15,6 +15,12 @@
 ;;;
 (in-package "LISP" :use '("SYSTEM" "DEBUG"))
 
+(in-package "SYSTEM")
+(export '(without-gcing without-hemlock))
+
+(in-package "LISP")
+
+
 ;;; WITH-ARRAY-DATA  --  Interface
 ;;;
 ;;;    Checks to see if the array is simple and the start and end are in
@@ -56,37 +62,6 @@
      (when (and *need-to-collect-garbage* (not *gc-inhibit*))
        (maybe-gc nil))))
 
-
-(defmacro with-enabled-interrupts (interrupt-list &body body)
-  "With-enabled-interrupts ({(interrupt function [character])}*) {form}*
-  Establish function as a handler for the Unix signal interrupt which
-  should be a number between 1 and 31 inclusive.  For the signals that
-  can be generated from the keyboard, the optional character specifies
-  the character to use to generate the signal."
-  (let ((il (gensym))
-	(fn (gensym))
-	(ch (gensym))
-	(it (gensym)))
-    `(let ((,il NIL))
-       (unwind-protect
-	   (progn
-	     ,@(do* ((item interrupt-list (cdr item))
-		     (intr (caar item) (caar item))
-		     (ifcn (cadar item) (cadar item))
-		     (ichr (caddar item) (caddar item))
-		     (forms NIL))
-		    ((null item) (nreverse forms))
-		 (if (symbolp intr)
-		     (setq intr (symbol-value intr)))
-		 (push `(multiple-value-bind (,fn ,ch)
-					     (enable-interrupt ,intr ,ifcn
-							       ,ichr)
-			  (push `(,,intr ,,fn ,,ch) ,il)) forms))
-	     ,@body)
-	 (dolist (,it (nreverse ,il))
-	   (funcall #'enable-interrupt (car ,it) (cadr ,it) (caddr ,it)))))))
-
-
 (defvar hi::*in-the-editor* nil)
 
 (defmacro without-hemlock (&body body)
-- 
GitLab