Index: /branches/ide-1.0/ccl/examples/objc-clos.lisp
===================================================================
--- /branches/ide-1.0/ccl/examples/objc-clos.lisp	(revision 6712)
+++ /branches/ide-1.0/ccl/examples/objc-clos.lisp	(revision 6713)
@@ -708,8 +708,11 @@
 (defun remove-slot-initargs (class initargs)
   (let* ((slot-initargs (class-slot-initargs class))) ; cache this, maybe
+    (collect ((new-initargs))
     (loop for l = initargs then (cddr l)
-	  when (null l) do (return-from remove-slot-initargs new-initargs)
+	  when (null l) do (return-from remove-slot-initargs (new-initargs))
 	  unless (member (first l)  slot-initargs :test #'eq)
-	    append (list (first l) (second l))  into new-initargs)))
+          do
+          (new-initargs (car l))
+          (new-initargs (cadr l))))))
 
 (defun create-foreign-instance-slot-vector (class)
