[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: bogus change(s) in cl-macs.el
- From: Stefan Monnier <monnier@xxxxxxxxxxxxxxxx>
- Date: Fri, 19 Nov 2004 00:40:27 -0500
- X-ml-name: emacs-w3m
- X-mail-count: 07184
- References: <b9y4qjmwn9g.fsf@jpl.org>
> First of all, I protest strongly that such a big change has not
> been recorded on the ChangeLog file.
The ChangeLog is somewhere, but as usual I forgot to commit it at the time
and now I'm working on another computer. But trust me, it's not lost.
> *** cl-macs.el~ Tue Nov 16 21:54:14 2004
> --- cl-macs.el Fri Nov 19 01:30:39 2004
> ***************
> *** 1314,1320 ****
> \(fn ((FUNC ARGLIST BODY...) ...) FORM...)"
> (let ((vars nil) (sets nil) (cl-macro-environment cl-macro-environment))
> (while bindings
> ! (let ((var (make-symbol "--cl-var--")))
> (push var vars)
> (push (list 'function* (cons 'lambda (cdar bindings))) sets)
> (push var sets)
> --- 1314,1320 ----
> \(fn ((FUNC ARGLIST BODY...) ...) FORM...)"
> (let ((vars nil) (sets nil) (cl-macro-environment cl-macro-environment))
> (while bindings
> ! (let ((var (gensym)))
> (push var vars)
> (push (list 'function* (cons 'lambda (cdar bindings))) sets)
> (push var sets)
It's odd that such a change would fix/break some code.
After all `gensym' is more or less doing (make-symbol (concat "G"
(random))), so other than the symbol's name, nothing is changed.
And since the symbol is uninterned, its name is mostly irrelevant, unless
some code later on uses `symbol-name' or does a print+read without using
print-gensym.
Maybe we'll indeed have to revert to gensym here, but I'd like to first
better understand the problem.
Could you give us a recipe to reproduce the problem, and a backtrace
if applicable. Of course, ideally the recipe should not use emacs-w3m,
but as a first step it would still help to see a recipe and a description of
the resulting problem.
Stefan