-
-(defun purecopy-menubar (x)
- ;; this calls purecopy on the strings, and the contents of the vectors,
- ;; but not on the vectors themselves, or the conses - those must be
- ;; writable.
- (cond ((vectorp x)
- (let ((i (length x)))
- (while (> i 0)
- (aset x (1- i) (purecopy (aref x (1- i))))
- (setq i (1- i))))
- x)
- ((consp x)
- (let ((rest x))
- (while rest
- (setcar rest (purecopy-menubar (car rest)))
- (setq rest (cdr rest))))
- x)
- (t
- (purecopy x))))
+;; purespace is no more, so this function is unnecessary
+;(defun purecopy-menubar (x)
+; ;; this calls purecopy on the strings, and the contents of the vectors,
+; ;; but not on the vectors themselves, or the conses - those must be
+; ;; writable.
+; (cond ((vectorp x)
+; (let ((i (length x)))
+; (while (> i 0)
+; (aset x (1- i) (purecopy (aref x (1- i))))
+; (setq i (1- i))))
+; x)
+; ((consp x)
+; (let ((rest x))
+; (while rest
+; (setcar rest (purecopy-menubar (car rest)))
+; (setq rest (cdr rest))))
+; x)
+; (t
+; (purecopy x))))