Necesito llamar a una función y realizar una limpieza solo si la función falla, y luego reiniciar el error. Aquí está el pseudocódigo:
(condition-case err
(call-function)
(error
(cleanup)
;; how do I raise `err`?
))
error-handling
Elena
fuente
fuente

condition-caseatraparkeyboard-quit?quitno tieneerrorentre sus padres). IOW con el que también puedes atraparlo,condition-casepero para eso debes llevarloquitbienerror. Por supuesto, eso todavía no manejará el caso de "lanzamiento".Estas buscando
signal:fuente
signal, pero su prototipo(signal ERROR-SYMBOL DATA)no lo es(signal ERROR).carycdr. Respuesta actualizada