anchor.diff:  
   (define-test test/intersection (operator test-class)
     (flet ((test-set (&rest elements)
  -           (copy test-class elements)))
  +           (make-set test-class elements)))
       (check set-equal (funcall operator
                                (test-set 1 2 3 7 8 10 11 12)
                                (test-set 1 2 3 7 8 10 11 12))
  
positive.code: ;;; TESTS
  ;;;-----------------------------------------------------------------------
  
  (defun test-sets (test-class)
    (list '() '(1) '(1 2 3)
          '#() '#(1) '#(1 2 3)
          (copy test-class '()) (copy test-class '(1)) (copy test-class '(1 2 3))))
  
  (define-test test/all/nil ()
    (loop
  
negative.code:               (list '(1 2 3 4) 'vector    '(1 2 3 4))
                (list '(1 2 3 4) test-class '(1 2 3 4)))
      :do
      (check set-equal               (make-set type original)  expected (type original))
      (check set-equal (make-set 'list   (make-set type original)) expected (type original))
      (check set-equal (make-set 'vector (make-set type original)) expected (type original))))
  
  
  (define-test test/is-subseq (test-class1 test-class2)
    (flet ((test-set1 (&rest elements)
             (make-set test-class1 elements))
           (test-set2 (&rest elements)
             (make-set test-class2 elements)))
      (assert-true (is-subset (test-set1)
                              (test-set2)))
      (assert-true (is-subset (test-set1 1)
  