Old-style backquotes -- not?
Posted: Fri Oct 17, 2008 2:56 am
I've written a generator for a suite of conditional-compilation macros for platform-specific elisp, like:
and so on.
The emacs 22.2 byte-compiler warns that this generator code (below) contains old-style backquotes. But AFAICT, the code does not contain old-style backquotes etc. at all.
Emacs 22.1 makes no complaint.
The code compiles and runs OK in both emacs versions, but the warning message is annoying.
Can anyone see any old-style backquote stuff here? Is the problem that there is a nested backquote?
As a follow-up, I always want to avoid calling 'eval' if I can. Can anyone see a way to do so here?
Cheers all.
Code: Select all
(compile-on-gnu/linux (&rest forms))
(compile-on-darwin (&rest forms))
The emacs 22.2 byte-compiler warns that this generator code (below) contains old-style backquotes. But AFAICT, the code does not contain old-style backquotes etc. at all.
Emacs 22.1 makes no complaint.
The code compiles and runs OK in both emacs versions, but the warning message is annoying.
Can anyone see any old-style backquote stuff here? Is the problem that there is a nested backquote?
Code: Select all
(dolist (os '(darwin gnu/linux cygwin))
(let ((os-name (symbol-name os)))
(eval
`(defmacro ,(intern (concat "compile-on-" os-name)) (&rest forms)
,(concat "Conditionally compiles FORMS only on " os-name ".")
(when ,(eq system-type os) `(progn ,@forms))))))
Cheers all.