[PATCH] emacs: jump: fix compile warning on emacs 23
Mark Walters
markwalters1009 at gmail.com
Thu Sep 4 02:46:54 PDT 2014
notmuch-jump uses window-body-width which is not defined in emacs
23. To get around this it does
(unless (fboundp 'window-body-width)
;; Compatibility for Emacs pre-24
(defalias 'window-body-width 'window-width))
This makes sure window-body-width is defined and all should be
well. But it seems that the byte compiler does not realise that this
guarantees that window-body-width will be defined and so, when
compiling with emacs 23, it gives an error
In end of data:
notmuch-jump.el:172:1:Warning: the function `window-body-width' is not known to be defined.
Domo and I came to following on irc: wrap the (unless (fboundp ...))
inside eval-and-compile which ensures that both the test and the
defalias (if needed) happen at both compile and load time. This fixes
the warning.
---
I think Domo and I were both not completely sure whether the
eval-and-compile should be inside or outside the (unless fboundp ..)
or not (ie should it wrap the unless fboundp or just the defalias) nor
whether it should be eval-and-compile or eval-when-compile.
We think this is the right version but it would be good to have confirmation.
I tested notmuch jump inside emacs 23 and 24 with notmuch-emacs
compiled with emacs 23 or 24 (ie all four combinations) and it seemed to work.
Best wishes
Mark
emacs/notmuch-jump.el | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/emacs/notmuch-jump.el b/emacs/notmuch-jump.el
index 5eb0949..2706b6c 100644
--- a/emacs/notmuch-jump.el
+++ b/emacs/notmuch-jump.el
@@ -25,9 +25,10 @@
(require 'notmuch-lib)
(require 'notmuch-hello)
-(unless (fboundp 'window-body-width)
- ;; Compatibility for Emacs pre-24
- (defalias 'window-body-width 'window-width))
+(eval-and-compile
+ (unless (fboundp 'window-body-width)
+ ;; Compatibility for Emacs pre-24
+ (defalias 'window-body-width 'window-width)))
;;;###autoload
(defun notmuch-jump-search ()
--
1.7.10.4
More information about the notmuch
mailing list