* bug#21724: 25.0.50; (void-function (setf epg-context-armor)) [not found] ` <b4mr3kzy583.fsf@jpl.org> @ 2015-10-21 9:03 ` Katsumi Yamaoka 2015-10-22 23:57 ` Katsumi Yamaoka 0 siblings, 1 reply; 5+ messages in thread From: Katsumi Yamaoka @ 2015-10-21 9:03 UTC (permalink / raw) To: 21724; +Cc: Nicolas Petton References: <http://thread.gmane.org/gmane.emacs.diffs/132036> On Tue, 13 Oct 2015 09:36:28 +0900, Katsumi Yamaoka wrote: > On Sun, 11 Oct 2015 21:03:07 +0000, Nicolas Petton wrote: >> * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token): Replace an >> usage of `epg-context-set-armor' with `setf'. > [...] >> - (epg-context-set-armor context t) >> + (setf (epg-context-armor context) t) > This doesn't seem to be expanded properly when building Emacs: > In end of data: > gnus/auth-source.el:2145:1:Warning: the function `(setf epg-context-armor)' is > not known to be defined. > How do we fix it? I got: Debugger entered--Lisp error: (void-function \(setf\ epg-context-armor\)) Recipe: $ emacs -Q load: lisp/gnus/auth-source.elc eval: (auth-source-epa-make-gpg-token "foo" "bar") To fix it, epg.el(c) is required when compiling auth-source.el, I think. Though once I merged the change to the Gnus git master, I reverted it thereafter, since old Emacsen that Gnus supports do not have the setf-method for epg-context-armor. Regards, ^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#21724: 25.0.50; (void-function (setf epg-context-armor)) 2015-10-21 9:03 ` bug#21724: 25.0.50; (void-function (setf epg-context-armor)) Katsumi Yamaoka @ 2015-10-22 23:57 ` Katsumi Yamaoka 2015-10-23 0:27 ` Glenn Morris 0 siblings, 1 reply; 5+ messages in thread From: Katsumi Yamaoka @ 2015-10-22 23:57 UTC (permalink / raw) To: 21724-done; +Cc: Nicolas Petton On Wed, 21 Oct 2015 18:03:38 +0900, Katsumi Yamaoka wrote: > References: <http://thread.gmane.org/gmane.emacs.diffs/132036> >>> - (epg-context-set-armor context t) >>> + (setf (epg-context-armor context) t) > Debugger entered--Lisp error: (void-function \(setf\ epg-context-armor\)) > To fix it, epg.el(c) is required when compiling auth-source.el, > I think. First I tried adding: (eval-when-compile (require 'epg)) It fixed the setf compilation problem. However, the byte compiler got to issue a new warning as follows: In end of data: auth-source.el:2145:1:Warning: the following functions might not be defined at runtime: epg-context-set-passphrase-callback, epg-decrypt-string, epg-encrypt-string So, I'm not quite sure why it helps, but I wrapped the existing autoload settings for those functions with `eval-and-compile': <http://article.gmane.org/gmane.emacs.diffs/132162> ^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#21724: 25.0.50; (void-function (setf epg-context-armor)) 2015-10-22 23:57 ` Katsumi Yamaoka @ 2015-10-23 0:27 ` Glenn Morris 2015-10-23 2:40 ` Katsumi Yamaoka 0 siblings, 1 reply; 5+ messages in thread From: Glenn Morris @ 2015-10-23 0:27 UTC (permalink / raw) To: 21724; +Cc: yamaoka Katsumi Yamaoka wrote: > So, I'm not quite sure why it helps, but I wrapped the existing > autoload settings for those functions with `eval-and-compile': IMO it is better to move the epg autoloads after the epg eval-when-compile. ^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#21724: 25.0.50; (void-function (setf epg-context-armor)) 2015-10-23 0:27 ` Glenn Morris @ 2015-10-23 2:40 ` Katsumi Yamaoka 2015-10-23 4:05 ` Glenn Morris 0 siblings, 1 reply; 5+ messages in thread From: Katsumi Yamaoka @ 2015-10-23 2:40 UTC (permalink / raw) To: Glenn Morris; +Cc: 21724 On Thu, 22 Oct 2015 20:27:16 -0400, Glenn Morris wrote: > Katsumi Yamaoka wrote: >> So, I'm not quite sure why it helps, but I wrapped the existing >> autoload settings for those functions with `eval-and-compile': > IMO it is better to move the epg autoloads after the epg eval-when-compile. Thanks. I see why adding (eval-when-compile (require 'epg)) caused a new warning. It marked all the epg functions including those autoloads maybe non-existent at the run-time, didn't it? Committed. ^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#21724: 25.0.50; (void-function (setf epg-context-armor)) 2015-10-23 2:40 ` Katsumi Yamaoka @ 2015-10-23 4:05 ` Glenn Morris 0 siblings, 0 replies; 5+ messages in thread From: Glenn Morris @ 2015-10-23 4:05 UTC (permalink / raw) To: Katsumi Yamaoka; +Cc: 21724 Katsumi Yamaoka wrote: > Thanks. I see why adding (eval-when-compile (require 'epg)) > caused a new warning. It marked all the epg functions including > those autoloads maybe non-existent at the run-time, didn't it? Yes. I didn't investigate, but it's probably a compiler bug. It doesn't properly track autoloaded-but-not-actually-defun'd definitions before eval-when-compile, so whatever statement comes last wins. ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-10-23 4:05 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <20151011210306.16935.15935@vcs.savannah.gnu.org> [not found] ` <E1ZlNlr-0004QG-3U@vcs.savannah.gnu.org> [not found] ` <b4mr3kzy583.fsf@jpl.org> 2015-10-21 9:03 ` bug#21724: 25.0.50; (void-function (setf epg-context-armor)) Katsumi Yamaoka 2015-10-22 23:57 ` Katsumi Yamaoka 2015-10-23 0:27 ` Glenn Morris 2015-10-23 2:40 ` Katsumi Yamaoka 2015-10-23 4:05 ` Glenn Morris
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).