GNU bug report logs - #6750
Byte compiler: spurious message "cl used at runtime"

Previous Next

Package: emacs;

Reported by: Alan Mackenzie <acm <at> muc.de>

Date: Wed, 28 Jul 2010 18:05:02 UTC

Severity: minor

Tags: notabug

Done: Lars Magne Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Alan Mackenzie <acm <at> muc.de>
To: bug-gnu-emacs <at> gnu.org
Subject: Byte compiler: spurious message "cl used at runtime"
Date: Wed, 28 Jul 2010 18:15:53 +0000
Hi, Emacs,

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.

-- 
Alan Mackenzie (Nuremberg, Germany).




This bug report was last modified 13 years and 316 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.