catching errors



Does this function look OK?  The special declaration always makes me
a bit uncomfortable.

;; Apply the Maxima function f to x. If an error is signaled, return nil; 
otherwise
;; return (list (mfuncall f x)).

(defun ignore-errors-mfuncall (f x)
  (let ((errcatch t))
    (declare (special errcatch))
    (errset (mfuncall f x) lisperrprint)))

Barton