vl-catch-all-apply
(vl-catch-all-apply function list)
Like apply, but an error neither stops the routine nor calls *error*: it returns an error object, which is checked with vl-catch-all-error-p.
(setq r (vl-catch-all-apply '/ '(1 0))) (if (vl-catch-all-error-p r) (princ (vl-catch-all-error-message r)))