GNU bug report logs -
#21072
24.5; inconsistent behaviour of `C-M-h (mark-defun)' in Emacs Lisp
Previous Next
Reported by: Raffaele Ricciardi <rfflrccrd <at> gmail.com>
Date: Thu, 16 Jul 2015 06:13:01 UTC
Severity: minor
Found in version 24.5
Done: Marcin Borkowski <mbork <at> mbork.pl>
Bug is archived. No further changes may be made.
Full log
Message #257 received at 21072 <at> debbugs.gnu.org (full text, mbox):
On 2017-04-30, at 18:10, Stefan Monnier <monnier <at> iro.umontreal.ca> wrote:
>> 2. I still don't fully get the `eval-and-compile' stuff. What exactly
>> happens when the file is compiled?
>
> During compilation, (eval-and-compile E) will be treated (i.e. compiled)
> just like E, except that E is evaluated along the way (so the
> definitions present in E are available during compilation).
>
>> I understand that its forms are not evaluated.
>
> They are. It's for `eval-when-compile` that they aren't.
Thanks for your answer, but I'm still not sure. Are the tables below
right?
Running:
| form | evaled? | compiled? |
|---------------------------------+---------+-----------|
| (defun ...) | yes | no |
| (eval-when-compile (defun ...)) | no | no |
| (eval-and-compile (defun ...)) | yes | no |
| (defmacro ...) | yes | no |
Compilation:
| form | evaled? | compiled? |
|---------------------------------+---------+-----------|
| (defun ...) | no | yes |
| (eval-when-compile (defun ...)) | yes | yes |
| (eval-and-compile (defun ...)) | yes | yes |
| (defmacro ...) | yes | yes |
TIA,
--
Marcin Borkowski
This bug report was last modified 8 years and 64 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.