Come evitare gli avvisi del compilatore di byte Unused lexical variablenelle funzioni definite utilizzando le macro che si espandono in defun?
Ad esempio, macro defun-rcirc-commandin
rcirc.el
utilizza la targetvariabile che non viene utilizzata da più invocazioni.
In Common Lisp posso usare il
ignorable
dichiarazione: (declare (ignorable target)).
Soluzioni sbagliate:
Aggiungi qualcosa di simile
(setq target target)a tutti gli utentidefun-rcirc-commandche non usanotarget: ciò richiede la modifica di molte invocazioni di macro.Il prefisso della variabile ignorabile con un trattino basso -
_target- non aiuta perché_significaignore, nonignorable, cioè, quando viene usato, ottengovariable '_target' not left unused.
(ignore VAR)per ogni argomento defun prima dell'espansione, @ body che probabilmente silenzierà gli errori.