emacs/lisp/emacs-lisp
Stefan Monnier b38b1ec071 Various compiler bug-fixes. MPC seems to run correctly now.
* lisp/files.el (lexical-binding): Add a safe-local-variable property.

* lisp/emacs-lisp/byte-opt.el (byte-inline-lapcode): Check how many elements
are added to the stack.
(byte-compile-splice-in-already-compiled-code): Don't touch lexical nor
byte-compile-depth now that byte-inline-lapcode does it for us.
(byte-compile-inline-expand): Don't inline dynbind byte code into
lexbind code, since it has to be done differently.

* lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
Correctly extract arglist from `closure's.
(byte-compile-cl-warn): Compiler-macros are run earlier now.
(byte-compile-top-level): Bind byte-compile-lexical-environment to nil,
except for lambdas.
(byte-compile-form): Don't run the compiler-macro expander here.
(byte-compile-let): Merge with byte-compile-let*.
Don't preserve-body-value if the body's value was discarded.

* lisp/emacs-lisp/cconv.el (cconv--set-diff, cconv--set-diff-map)
(cconv--map-diff, cconv--map-diff-elem, cconv--map-diff-set): New funs.
(cconv--env-var): New constant.
(cconv-closure-convert-rec): Use it and use them.  Fix a typo that
ended up forgetting to remove entries from lmenvs in `let'.
For `lambda' use the outer `fvrs' when building the closure and don't
forget to remove `vars' from the `emvrs' and `lmenvs' of the body.

* lisp/emacs-lisp/cl-macs.el (cl-byte-compile-block): Disable optimization
in lexbind, because it needs a different implementation.

* src/bytecode.c (exec_byte_code): Fix handling of &rest.

* src/eval.c (Vinternal_interpreter_environment): Remove.
(syms_of_eval): Do declare Vinternal_interpreter_environment as
a global lisp var, but unintern it to hide it.
(Fcommandp):
* src/data.c (Finteractive_form): Understand `closure's.
2011-02-17 16:19:13 -05:00
..
.gitignore Nuke arch-tags. 2011-01-15 15:16:57 -08:00
advice.el Fix help-mode highlighting of advice warning (Bug#6304). 2011-01-28 16:42:11 -05:00
assoc.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
authors.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
autoload.el Refill some long/short copyright headers. 2011-01-26 00:36:39 -08:00
avl-tree.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
backquote.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
benchmark.el Refill some long/short copyright headers. 2011-01-26 00:36:39 -08:00
bindat.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
byte-opt.el Various compiler bug-fixes. MPC seems to run correctly now. 2011-02-17 16:19:13 -05:00
byte-run.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
bytecomp.el Various compiler bug-fixes. MPC seems to run correctly now. 2011-02-17 16:19:13 -05:00
cconv.el Various compiler bug-fixes. MPC seems to run correctly now. 2011-02-17 16:19:13 -05:00
chart.el Refill some long/short copyright headers. 2011-01-26 00:36:39 -08:00
check-declare.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
checkdoc.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
cl-extra.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
cl-indent.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
cl-loaddefs.el Various compiler bug-fixes. MPC seems to run correctly now. 2011-02-17 16:19:13 -05:00
cl-macs.el Various compiler bug-fixes. MPC seems to run correctly now. 2011-02-17 16:19:13 -05:00
cl-seq.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
cl-specs.el * lisp/emacs-lisp/cl-specs.el (multiple-value-bind): Fix debug spec. 2011-02-10 19:54:12 -08:00
cl.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
copyright.el Undo part of previous copyright.el change. 2011-01-25 09:41:28 -08:00
crm.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
cust-print.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
debug.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
derived.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
disass.el Merge from trunk 2011-02-01 12:09:25 -05:00
easy-mmode.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
easymenu.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
edebug.el Merge from trunk 2011-02-11 21:27:53 -05:00
eieio-base.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
eieio-comp.el Refill some long/short copyright headers. 2011-01-26 00:36:39 -08:00
eieio-custom.el Refill some long/short copyright headers. 2011-01-26 00:36:39 -08:00
eieio-datadebug.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
eieio-opt.el Refill some long/short copyright headers. 2011-01-26 00:36:39 -08:00
eieio-speedbar.el Refill some long/short copyright headers. 2011-01-26 00:36:39 -08:00
eieio.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
eldoc.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
elint.el elint.el trivia. 2011-02-02 23:27:59 -08:00
elp.el Refill some long/short copyright headers. 2011-01-26 00:36:39 -08:00
ert-x.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
ert.el * lisp/apropos.el (apropos-print): Now that `apropos-mode' inherits 2011-02-02 12:59:44 -05:00
ewoc.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
find-func.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
find-gc.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
float-sup.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
generic.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
gulp.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
helper.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
lisp-mnt.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
lisp-mode.el Merge from trunk 2011-02-01 12:09:25 -05:00
lisp.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
macroexp.el Make cconv-analyse understand the need for closures. 2011-02-11 14:48:54 -05:00
map-ynp.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
package-x.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
package.el * lisp/apropos.el (apropos-print): Now that `apropos-mode' inherits 2011-02-02 12:59:44 -05:00
pcase.el Various compiler bug-fixes. MPC seems to run correctly now. 2011-02-17 16:19:13 -05:00
pp.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
re-builder.el Move keymap initialization into declaration. 2011-02-10 11:56:00 -05:00
regexp-opt.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
regi.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
ring.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
rx.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
shadow.el Merge changes from emacs-23 branch 2011-01-31 18:54:50 -05:00
smie.el * lisp/emacs-lisp/smie.el (smie-blink-matching-open): Don't use `pos' in two 2011-02-10 14:40:17 -05:00
syntax.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
tcover-ses.el Refill some long/short copyright headers. 2011-01-26 00:36:39 -08:00
tcover-unsafep.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
testcover.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
timer.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
tq.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
trace.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
unsafep.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
warnings.el Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00