¿Cómo evito las advertencias del compilador de bytes Unused lexical variableen las funciones definidas mediante macros expandibles defun?
Por ejemplo, macro defun-rcirc-commandin
rcirc.el
usa la targetvariable que no es utilizada por varias invocaciones.
En Common Lisp puedo usar el
ignorable
declaración: (declare (ignorable target)).
Malas soluciones:
Agregue algo similar
(setq target target)a todos los usuariosdefun-rcirc-commandque no utilizantarget: eso requiere modificar muchas invocaciones de macro.Prefijar la variable ignorable con un guión bajo -
_target- no ayuda porque_significaignore, noignorable, es decir, cuando se usa, obtengovariable '_target' not left unused.
(ignore VAR)argumento para cada argumento defun antes de la expansión, @ body que probablemente silenciará los errores.