Como evitar avisos de compilador de bytes Unused lexical variableem funções definidas usando macros expandidas para defun?
Por exemplo, macro defun-rcirc-commandin
rcirc.el
usa a targetvariável que não é usada por várias invocações.
Em Common Lisp eu posso usar a
ignorable
declaração: (declare (ignorable target)).
Soluções ruins:
Adicione algo como
(setq target target)a todos os usuáriosdefun-rcirc-commandque não usamtarget: isso requer a modificação de muitas invocações de macro.Prefixar a variável ignorável com um sublinhado -
_target- não ajuda porque_significaignore, nãoignorable, ou seja, quando é usado, eu entendovariable '_target' not left unused.
(ignore VAR)argumento para todos os argumentos antes da expansão @ body, que provavelmente silenciará os erros.