diff options
| author | Stefan Monnier <monnier@iro.umontreal.ca> | 2010-12-12 23:04:15 -0500 |
|---|---|---|
| committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2010-12-12 23:04:15 -0500 |
| commit | f07a954eeb0930029104402e706165bf89853576 (patch) | |
| tree | 143d5c5a95904a0559d555ae6fe97eaed7839211 /lisp/subr.el | |
| parent | 2c302df3a13236bfbf8ea1b771d13618fcda8d71 (diff) | |
| download | emacs-f07a954eeb0930029104402e706165bf89853576.tar.gz | |
Make the effect of (defvar foo) local.
* src/eval.c (apply_lambda): Make static. Remove eval_flag arg.
(Fsetq): Don't check declared_special.
(Fdefun, Fdefmacro): Use Ffunction.
(Fdefvar): Don't set declared_special for (defvar foo).
(FletX): Check locally-special vars. Only do specbind once.
(Flet): Check locally-special vars.
(Feval): Don't check declared_special.
(funcall_lambda): Check locally-special vars.
* src/lisp.h (apply_lambda): Remove extern declaration.
* src/lread.c (readevalloop): CSE.
* lisp/subr.el (with-lexical-binding): Remove.
Diffstat (limited to 'lisp/subr.el')
| -rw-r--r-- | lisp/subr.el | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/lisp/subr.el b/lisp/subr.el index c79a69b221e..99f632fb586 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -427,11 +427,11 @@ Non-strings in LIST are ignored." (setq list (cdr list))) list) -(defmacro with-lexical-binding (&rest body) - "Execute the statements in BODY using lexical binding." - `(let ((internal-interpreter-environment internal-interpreter-environment)) - (setq internal-interpreter-environment '(t)) - ,@body)) +;; Remove this since we don't know how to handle it in the byte-compiler yet. +;; (defmacro with-lexical-binding (&rest body) +;; "Execute the statements in BODY using lexical binding." +;; `(let ((internal-interpreter-environment '(t))) +;; ,@body)) (defun assq-delete-all (key alist) "Delete from ALIST all elements whose car is `eq' to KEY. |
