[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#27016: possible bug in `defsetf'
From: |
Michael Heerdegen |
Subject: |
bug#27016: possible bug in `defsetf' |
Date: |
Mon, 03 Jul 2017 13:25:57 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) |
npostavs@users.sourceforge.net writes:
> I hope someone will correct me if I've gotten mixed up again, but I
> believe the byte-compiled case already works fine:
>
> ~/src/emacs$ cat bug-27016-defsetf.el
> (require 'cl)
>
> (defvar pair nil)
> (setq pair (cons 3 4))
> (when nil
> (defalias 'foobar 'cons)
> (defsetf foobar setcar))
> ~/src/emacs$ emacs -Q -batch -f batch-byte-compile bug-27016-defsetf.el
>
> In toplevel form:
> bug-27016-defsetf.el:1:1:Warning: cl package required at runtime
> bug-27016-defsetf.el:3:1:Warning: global/dynamic var ‘pair’ lacks a prefix
> ~/src/emacs$ emacs -Q -batch -l bug-27016-defsetf.elc --eval '(setf
> (foobar pair) 0)'
> Symbol’s function definition is void: \(setf\ foobar\)
Yes - if you use two separate Emacs instances. The defsetf gets
evaluated in the Emacs that is used to compile the code
(unconditionally).
So what you state is not suspicious for a problem with a surprising side
effect when performing macroexpansion, right?
Michael.
- bug#27016: possible bug in `defsetf', npostavs, 2017/07/02
- bug#27016: possible bug in `defsetf',
Michael Heerdegen <=
- bug#27016: possible bug in `defsetf', npostavs, 2017/07/09
- bug#27016: possible bug in `defsetf', Stefan Monnier, 2017/07/11
- bug#27016: possible bug in `defsetf', npostavs, 2017/07/11
- bug#27016: possible bug in `defsetf', Stefan Monnier, 2017/07/11
- bug#27016: possible bug in `defsetf', npostavs, 2017/07/13
- bug#27016: possible bug in `defsetf', Stefan Monnier, 2017/07/13
- bug#27016: possible bug in `defsetf', npostavs, 2017/07/13
- bug#27016: possible bug in `defsetf', Stefan Monnier, 2017/07/13