From b1d03281bdfddeef24dab6a9e5d0c154b27d26a6 Mon Sep 17 00:00:00 2001
From: ram <ram>
Date: Sun, 21 Apr 1991 13:08:24 +0000
Subject: [PATCH] Changed to always compile external interfaces and external
 macros safe, but to compile guts weak-safe (or unsafe) depending on the SMALL
 feature.  Also, if SMALL, use debug-info 1 instead of 2.

---
 tools/clxcom.lisp | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/tools/clxcom.lisp b/tools/clxcom.lisp
index 6057e2796..51e7a4097 100644
--- a/tools/clxcom.lisp
+++ b/tools/clxcom.lisp
@@ -1,7 +1,5 @@
 (in-package "USER")
 
-(proclaim '(optimize (c::debug-info 2)))
-
 ;;; Hide CLOS from CLX, so objects stay implemented as structures.
 ;;;
 (when (find-package "CLOS")
@@ -16,7 +14,19 @@
   
   (make-package "XLIB" :use '("LISP")))
 
-(with-compiler-log-file ("clx:compile-clx.log")
+(with-compiler-log-file
+    ("clx:compile-clx.log"
+     :optimize
+     '(optimize (debug-info #-small 2 #+small 1) 
+		(speed 2) (inhibit-warnings 2)
+		(safety #-small 1 #+small 0))
+     :optimize-interface
+     '(optimize-interface (debug-info 1))
+     :context-declarations
+     '(((:and :external :global)
+	(declare (optimize-interface (safety 2))))
+       ((:and :external :macro)
+	(declare (optimize (safety 2))))))
   (let ((c::*suppress-values-declaration* t))
     (comf "clx:defsystem" :load t)
     (comf "clx:depdefs" :load t)
-- 
GitLab