On 9/16/05, David Kastrup <[EMAIL PROTECTED]> wrote: > Actually, I get "might be undefined at run time" in some similar > eval-when-compile wrapped situations.
Maybe with some unusual combination of circumstances. > And having different semantics > during compilation and execution also is not a good idea. There's almost zero semantics in `(eval-when-compile (defvar xxx))'. It doesn't generate code, or assign any value, or affect dynamic bindings (on normal situations, which we're discussing now). It's only a trick to say "shhh" to the byte-compiler. `defvar' is special cased for this. It has no relation with other uses of `eval-when-compile' and friends, which do indeed change the semantics. Whether these cases are a good idea or not, IMO depends on each particular case. `eval-when-compile' exists for a reason. But anyway, I'm not advocating wrapping the defvars in e-w-c; I was just pointing out to Carsten why I didn't wrap them in the first place, and why I found surprising that he did. -- /L/e/k/t/u _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel