This sounds really weird. Are you providing the full (setq) form to those
macros, or the var and value separately? The fact that '(0 0) does not work
but (list 0 0) does smells like there's some compiler macro triggering on
(constantp value).


On Thu, Oct 3, 2013 at 8:48 AM, Didier Verna <[email protected]> wrote:

>
>   Hello,
>
> yesterday, I fell on something extremely weird, or at least, which I
> currently fail to understand. Basically, after a (defvar *var*), there
> are times when (setq *var* '(0 0)) doesn't work (the previous value of
> *var* remains in effect).
>
> I cannot currently provide a minimal example because the situation
> involves several levels of nested macro / function calls in code I
> didn't write (*var* is solely mine though).
>
> At first, I thought I had fallen on a compiler bug, but I get the same
> behavior with at least 3 lisp implementations.
>
> I ultimately found a workaround, consisting in using (list 0 0) instead
> of '(0 0) in the assignment. I'm hoping this would be a clue to someone
> here to get at least a direction for investigating...
>
> Thanks.
>
> --
> Resistance is futile. You will be jazzimilated.
>
> Lisp, Jazz, Aïkido: http://www.didierverna.info
>
>


-- 
Some gratuitous spam:

http://ripple.com <http://ripple-project.org> Ripple, social credit system
http://common-lisp.net/project/armedbear ABCL, Common Lisp on the JVM
http://code.google.com/p/tapulli my Lisp open source projects
http://www.manydesigns.com/ ManyDesigns Portofino, open source model-driven
Java web application framework

Reply via email to