Я получаю сообщение об ошибке при загрузке функции, содержащей атомарную операцию.В качестве простого примера, файл test.lisp содержит:
(defparameter *count* 0)
(defun test ()
(sb-ext:atomic-incf *count*))
, который генерирует следующую ошибку:
* (load "d:\\test.lisp")
; file: d:/test.lisp
; in: DEFUN TEST
; (ATOMIC-INCF *COUNT*)
;
; caught ERROR:
; during macroexpansion of (ATOMIC-INCF *COUNT*). Use *BREAK-ON-SIGNALS* to
; intercept.
;
; Invalid first argument to ATOMIC-INCF: *COUNT*
;
; compilation unit finished
; caught 1 ERROR condition
T
*
Почему *count*
неверен?