(declaim (optimize (speed 3) (safety 0) (compilation-speed 0) (space 0) (debug 0)))
(declaim (ftype (function (fixnum ) fixnum) FOO ))
(defun FOO  (X  )
 (declare (type FIXNUM  X ))
  (+ X 1)
  )
(declaim (ftype (function (NUMBER ) NUMBER) BAR ))
(defun BAR (X)
  (declare (type NUMBER X))
  (FOO X)
  )
Этот код компилируется без предупреждений. Если заменить number на string, то будет warning. Чтение мануала не помогло. Другие значения safety (до 3) не помогли.

