X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fsset.lisp;h=2b1b2904682242f8accd12848f6541ccca518e16;hb=0dcc957ae6bf24809fda82fd59c134e70058c42a;hp=6beb85faebc4f9cabfc37cdf95113e9b5b54eb28;hpb=cea4896b2482b7b2b429c1631d774b4cfbc0efba;p=sbcl.git diff --git a/src/compiler/sset.lisp b/src/compiler/sset.lisp index 6beb85f..2b1b290 100644 --- a/src/compiler/sset.lisp +++ b/src/compiler/sset.lisp @@ -19,11 +19,11 @@ ;;; SSet-Element structure. We allow an initial value of NIL to mean ;;; that no ordering has been assigned yet (although an ordering must ;;; be assigned before doing set operations.) -(defstruct (sset-element (:constructor nil)) +(defstruct (sset-element (:constructor nil) + (:copier nil)) (number nil :type (or index null))) -(defstruct (sset (:constructor make-sset ()) - (:copier nil)) +(defstruct (sset (:constructor make-sset ())) (elements (list nil) :type list)) (defprinter (sset) (elements :prin1 (cdr elements))) @@ -81,8 +81,8 @@ (setf (sset-elements res) (copy-list (sset-elements set))) res)) -;;; Perform the appropriate set operation on Set1 and Set2 by destructively -;;; modifying Set1. We return true if Set1 was modified, false otherwise. +;;; Perform the appropriate set operation on SET1 and SET2 by destructively +;;; modifying SET1. We return true if SET1 was modified, false otherwise. (declaim (ftype (function (sset sset) boolean) sset-union sset-intersection sset-difference)) (defun sset-union (set1 set2)