From: Michael Heerdegen <michael_heerdegen@web.de>
To: 11938@debbugs.gnu.org
Subject: bug#11938: 24.1.50; Some not so useful CL related byte compiler warnings
Date: Fri, 13 Jul 2012 20:00:23 +0200 [thread overview]
Message-ID: <86liinh77s.fsf@web.de> (raw)
Hi,
I create an example file with the following content:
(eval-when-compile
(require 'cl))
(defvar my-holiday-alist
'((2012 . ((( 1 1) . "New Year")))))
(defun* my-holidayp (&optional date no-warn-if-no-info)
(save-excursion
(progv '(a b year) date
(cdr (assoc (list a b)
(cdr (or (assoc year my-holiday-alist)
(prog1 nil ;always return nil
(push (cons year ()) my-holiday-alist) ;; --> Warn only one time
(unless no-warn-if-no-info
(ding)
(message "Note: No holiday info for %s in `my-holiday-alist'." year)
(sit-for 3))))))))))
(labels ((fac (x) (if (< x 2) 1 (* x (fac (1- x))))))
(defun test () (fac 5)))
If I byte compile it, I get the following warnings:
progv-bug.el:7:37:Warning: global/dynamic var `body' lacks a prefix
progv-bug.el:10:25:Warning: reference to free variable `a'
progv-bug.el:10:27:Warning: reference to free variable `b'
progv-bug.el:11:35:Warning: reference to free variable `year'
progv-bug.el:19:1:Warning: `labels' is an obsolete function (as of 24.2); use
`(quote cl-labels)' instead.
In detail:
progv-bug.el:7:37:Warning: global/dynamic var `body' lacks a prefix
Dunno what that means, the code doesn't include such a variable.
progv-bug.el:10:25:Warning: reference to free variable `a'
progv-bug.el:10:27:Warning: reference to free variable `b'
progv-bug.el:11:35:Warning: reference to free variable `year'
Not very useful, since the variables' values are never looked up
before they are bound, but ok, I can live with it.
progv-bug.el:19:1:Warning: `labels' is an obsolete function (as of 24.2); use
`(quote cl-labels)' instead.
What does `(quote cl-labels)' mean? I guess this should be just
`cl-labels'.
Thanks,
Michael.
In GNU Emacs 24.1.50.1 (i486-pc-linux-gnu, GTK+ Version 3.4.2)
of 2012-07-12 on keller, modified by Debian
(emacs-snapshot package, version 2:20120712-1)
Windowing system distributor `The X.Org Foundation', version 11.0.11201902
Configured using:
`configure '--build' 'i486-linux-gnu' '--host' 'i486-linux-gnu'
'--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib'
'--localstatedir=/var' '--infodir=/usr/share/info'
'--mandir=/usr/share/man' '--with-pop=yes'
'--enable-locallisppath=/etc/emacs-snapshot:/etc/emacs:/usr/local/share/emacs/24.1.50/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.1.50/site-lisp:/usr/share/emacs/site-lisp'
'--without-compress-info' '--with-crt-dir=/usr/lib/i386-linux-gnu/'
'--with-x=yes' '--with-x-toolkit=gtk3' '--with-imagemagick=yes'
'build_alias=i486-linux-gnu' 'host_alias=i486-linux-gnu'
'CFLAGS=-DDEBIAN -DSITELOAD_PURESIZE_EXTRA=5000 -g -O2' 'LDFLAGS=-g
-Wl,--as-needed -znocombreloc' 'CPPFLAGS=-D_FORTIFY_SOURCE=2''
next reply other threads:[~2012-07-13 18:00 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-13 18:00 Michael Heerdegen [this message]
2012-07-13 18:18 ` bug#11938: 24.1.50; Some not so useful CL related byte compiler warnings Andreas Schwab
2012-07-18 10:25 ` Stefan Monnier
2012-07-19 0:19 ` Juanma Barranquero
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=86liinh77s.fsf@web.de \
--to=michael_heerdegen@web.de \
--cc=11938@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).