anchor.diff:                                                              p
                                                               (null-pointer)
                                                               errcode-ret)))
  -                (is +cl-success+ (mem-aref errcode-ret 'cl-int) "create program")
  +                (is-success (mem-aref errcode-ret 'cl-int) "create program")
                   (ok program "create program")
  -                (is +cl-success+ (cl-build-program program
  -                                                   1
  -                                                   devices
  -                                                   (null-pointer)
  -                                                   (null-pointer)
  -                                                   (null-pointer)) "build program")
  +                (is-success (cl-build-program program
  +                                              1
  +                                              devices
  +                                              (null-pointer)
  +                                              (null-pointer)
  +                                              (null-pointer)) "build program")
                   (with-foreign-string (name "alfa")
                     (let ((kernel (cl-create-kernel program name errcode-ret)))
  -                    (is +cl-success+ (mem-aref errcode-ret 'cl-int) "create kernel")
  +                    (is-success (mem-aref errcode-ret 'cl-int) "create kernel")
                       (ok kernel "create kernel")
                       (with-foreign-object (p :pointer)
                         (setf (mem-ref p :pointer) buffer)
  -                      (is +cl-success+ (cl-set-kernel-arg kernel 0 8 p) "set kernel arg")
  +                      (is-success (cl-set-kernel-arg kernel 0 8 p) "set kernel arg")
                         (let ((command-queue (cl-create-command-queue context
                                                                       device
                                                                       0
                                                                       errcode-ret)))
  -                        (is +cl-success+ (mem-aref errcode-ret 'cl-int) "create command queue")
  +                        (is-success (mem-aref errcode-ret 'cl-int) "create command queue")
                           (ok command-queue "create command queue")
                           (with-foreign-objects ((global-work-size 'size-t 3)
                                                  (local-work-size 'size-t 3))
  
positive.code:                           (setf (mem-ref local-work-size 'size-t 0) 1
                                  (mem-ref local-work-size 'size-t 1) 0
                                  (mem-ref local-work-size 'size-t 2) 0)
                            (is +cl-success+ (cl-enqueue-ndrange-kernel command-queue
                                                                        kernel
                                                                        1
                                                                        (null-pointer)
                                                                        global-work-size
                                                                        local-work-size
                                                                        0
                                                                        (null-pointer)
                                                                        (null-pointer)) "enqueue kernel"))
                          (is +cl-success+ (cl-finish command-queue) "finish")
                          (with-foreign-object (value 'cl-char)
                            (setf (mem-ref value 'cl-char) 0)
                            (is +cl-success+ (cl-enqueue-read-buffer command-queue
                                                                     buffer
                                                                     0
                                                                     0
                                                                     1
                                                                     value
                                                                     0
                                                                     (null-pointer)
                                                                     (null-pointer)) "enqueue read buffer")
  
                            (is +cl-success+ (cl-finish command-queue) "finish")
                            (is 1 (mem-aref value 'cl-char) "result"))
                          (is +cl-success+ (cl-release-command-queue command-queue) "release command queueu")))
                      (is +cl-success+ (cl-release-kernel kernel))))
                  (is +cl-success+ (cl-release-program program)))))
            (is +cl-success+ (cl-release-mem-object buffer)))
          (is +cl-success+ (cl-release-context context) "release context")
          (is +cl-success+ (cl-release-device device) "release device")))))
  
  (finalize)
  
negative.code:                 (setf (mem-ref src-offset 'size-t) 0
                        (mem-ref dst-offset 'size-t) 0
                        (mem-ref size 'size-t) 1)
                  (is-success (cl-enqueue-copy-buffer command-queue
                                                      in
                                                      out
                                                      (mem-ref src-offset 'size-t)
                                                      (mem-ref dst-offset 'size-t)
                                                      (mem-ref size 'size-t)
                                                      0
                                                      (null-pointer)
                                                      (null-pointer)) "enqueue copy buffer"))
                (is-success (cl-finish command-queue) "finish"))
              (is-success (cl-release-mem-object out) "release mem object"))
            (is-success (cl-release-mem-object in) "release mem object"))
          (is-success (cl-release-context context) "release context")
          (is-success (cl-release-device device) "release device")))))
  
  (subtest "Copy kernel"
    (with-foreign-objects ((platforms 'cl-platform-id)
  