bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#6750: Byte compiler: spurious message "cl used at runtime"


From: Stefan Monnier
Subject: bug#6750: Byte compiler: spurious message "cl used at runtime"
Date: Thu, 29 Jul 2010 01:01:46 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

> In this macro declaration:

>     (defmacro c-declare-lang-variables ()
>       `(progn
>          ,@(mapcan (lambda (init)
>                      `(,(if (elt init 2)
>                             `(defvar ,(car init) nil ,(elt init 2))
>                           `(defvar ,(car init) nil))
>                        (make-variable-buffer-local ',(car init))))
>                    (cdr c-lang-variable-inits))))

> , (from cc-engine.el), the byte-compiler gives this warning:

>     "Function `mapcan' from cl package called at runtime".

> It is clear that the mapcan, being within a ,@ construct, does its work
> at macro-expansion time, i.e. compile time.

> Thus the warning message is wrong.  This is a bug.

This macro will be in the .elc.  This means it can be called "at run
time" (e.g. if you do M-: (c-declare-lang-variables ...) RET).


        Stefan







reply via email to

[Prev in Thread] Current Thread [Next in Thread]