src/codegen-proto.lisp (definst): Don't assume STREAMVAR is `stream'.
[sod] / src / codegen-proto.lisp
index 92569ae..65f4745 100644 (file)
           (with-slots ,(mapcar #'list public private) ,inst-var
             (if *print-escape*
                 (print-unreadable-object (,inst-var ,streamvar :type t)
-                  (format stream "~@<~@{~S ~@_~S~^ ~_~}~:>"
+                  (format ,streamvar "~@<~@{~S ~@_~S~^ ~_~}~:>"
                           ,@(mappend #'list keys public)))
                 (block ,code ,@body))))
         ,@(and export `((export '(,class-name ,constructor-name
 
 ;; Important instruction classes.
 
-;; HACK: Some of the slot names we'd like to use are external symbols in our
-;; package or the `common-lisp' package.  Use gensyms for these slot names to
-;; prevent them from leaking.
-
 (definst var (stream :export t) (name %type &optional init)
   (pprint-logical-block (stream nil)
     (pprint-c-type type stream name)