Commit b5071fc7 authored by Stefan Monnier's avatar Stefan Monnier
Browse files

* src/callint.c (Fcall_interactively): Use the right lexical environment

for `interactive' specs.
* src/eval.c (Feval): Accept a lexical environment.

Fixes: debbugs:13811
parent 944c37ef
2013-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
* callint.c (Fcall_interactively): Use the right lexical environment
for `interactive' specs (bug#13811).
* eval.c (Feval): Accept a lexical environment.
2013-02-25 Paul Eggert <eggert@cs.ucla.edu>
 
Simplify data_start configuration (Bug#13783).
......
......@@ -342,8 +342,8 @@ invoke it. If KEYS is omitted or nil, the return value of
/* Compute the arg values using the user's expression. */
GCPRO2 (input, filter_specs);
specs = Feval (specs,
CONSP (funval) && EQ (Qclosure, XCAR (funval))
? Qt : Qnil);
CONSP (funval) && EQ (Qclosure, XCAR (funval))
? CAR_SAFE (XCDR (funval)) : Qnil);
UNGCPRO;
if (events != num_input_events || !NILP (record_flag))
{
......
......@@ -1898,7 +1898,7 @@ If LEXICAL is t, evaluate using lexical scoping. */)
{
ptrdiff_t count = SPECPDL_INDEX ();
specbind (Qinternal_interpreter_environment,
NILP (lexical) ? Qnil : Fcons (Qt, Qnil));
CONSP (lexical) || NILP (lexical) ? lexical : Fcons (Qt, Qnil));
return unbind_to (count, eval_sub (form));
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment