Comment puis-je éviter les avertissements du compilateur d'octets Unused lexical variabledans les fonctions définies à l'aide de macros développées en defun?
Par exemple, macro defun-rcirc-commandin
rcirc.el
utilise la targetvariable qui n'est pas utilisée par plusieurs appels.
En Common Lisp je peux utiliser la
ignorable
déclaration: (declare (ignorable target)).
Mauvaises solutions:
Ajoutez quelque chose comme
(setq target target)à tous les utilisateursdefun-rcirc-commandqui n'utilisent pastarget: cela nécessite de modifier de nombreuses invocations de macro.Préfixer la variable ignorable avec un trait de soulignement -
_target- n'aide pas parce que cela_signifieignore, nonignorable, c'est-à-dire, quand elle est utilisée, je reçoisvariable '_target' not left unused.
(ignore VAR)argument pour chaque defun avant l'extension, @ body, ce qui réduira probablement au silence les erreurs.