Wie vermeide ich Byte-Compiler-Warnungen Unused lexical variable
in Funktionen, die mithilfe von Makros definiert wurden, die auf erweitert werden defun
?
Beispielsweise
verwendet das Makro defun-rcirc-command
in
rcirc.el
die target
Variable, die nicht von mehreren Aufrufen verwendet wird.
In Common Lisp kann ich die
ignorable
Deklaration verwenden : (declare (ignorable target))
.
Schlechte Lösungen:
Fügen Sie
(setq target target)
allen Benutzern,defun-rcirc-command
die sie nicht verwendentarget
, etwas Ähnliches hinzu: Dazu müssen viele Makroaufrufe geändert werden.Das Präfixieren der ignorierbaren Variablen mit einem Unterstrich -
_target
- hilft nicht, weil es_
bedeutetignore
, nichtignorable
, dh wenn es verwendet wird, bekomme ichvariable '_target' not left unused
.
(ignore VAR)
für jedes defun-Argument ein vor die Erweiterung @ body setzen, wodurch die Fehler wahrscheinlich zum Schweigen gebracht werden.