[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [emacs-wiki-discuss] Re: planner.el with-planner and cl
From: |
Mark Triggs |
Subject: |
Re: [emacs-wiki-discuss] Re: planner.el with-planner and cl |
Date: |
Thu, 24 Mar 2005 21:05:49 +1100 |
User-agent: |
No Gnus v0.3 |
Jim Ottaway <address@hidden> writes:
>>>>>> Mark Triggs <address@hidden> writes:
>
>> Hm... it's also defined in subr.el by the looks of it:
>
>> (defmacro declare (&rest specs)
>> "Do not evaluate any arguments and return nil.
>> Treated as a declaration when used at the right place in a
>> `defmacro' form. \(See Info anchor `(elisp)Definition of declare'.)"
>> nil)
>
>> It seems that the actual declare form shouldn't ever get evaluated
>> because defmacro plucks it out when it encounters it. Something strange
>> happening here, perhaps?
>
> In pre-CVS emacs, such as the 21.2.1 I have here, declare is only
> defined in cl-macs.el; in CVS it is defined [differently of course] in
> both subr.el and cl-macs.el.
Ah yep, so I see. Now I'm just confused :o) It seems that in CVS, the
defmacro code in eval.c should remove the (declare ...) form well before
it has the chance to appear in any macro expansions, and in pre-CVS, the
`with-current-buffer' macro doesn't include a (declare ...) form at all.
Either way, I'm not sure how it could be causing problems.
The version of planner I have doesn't seem to use (declare ...) in any
of its own macros. Is `with-current-buffer' definitely the place it's
turning up?
Cheers,
Mark
--
Mark Triggs
<address@hidden>