Q: How to fix
elmo-unintern to use 2 arguments instead of 1, or silence the byte-compiler on this issue.
Here is the macro definition:
(defmacro elmo-unintern (string) "Delete the symbol named NAME, if any, from OBARRAY. The value is t if a symbol was found and deleted, nil otherwise. NAME may be a string or a symbol. If it is a symbol, that symbol is deleted, if it belongs to OBARRAY--no other symbol is deleted. OBARRAY, if nil, defaults to the value of the variable `obarray'." (static-if (fboundp 'unintern) (list 'unintern string)))
Here is the bye-compile message:
In elmo-imap4-parse-response: filename.el:92495:45:Warning: unintern called with 1 argument, but requires 2 filename.el:92513:46:Warning: unintern called with 1 argument, but requires 2 filename.el:92516:38:Warning: unintern called with 1 argument, but requires 2
Here is the comment by @Stefan from a previous bug report: https://lists.gnu.org/archive/html/bug-gnu-emacs/2015-04/msg00560.html
> Loading this file works as expected, but compiling it generates the > warning > unintern called with 1 argument, but requires 2 > But `unintern' doesn't require 2 arguments. That's the `advertized-calling-convention' at work here. IOW calling the function with only one argument still works but is deprecated. Stefan