aboutsummaryrefslogtreecommitdiffstats
path: root/src/eval.c
diff options
context:
space:
mode:
authorRichard M. Stallman1994-12-21 18:15:35 +0000
committerRichard M. Stallman1994-12-21 18:15:35 +0000
commitca248607edd25a3d4385da7b084a15111b68466c (patch)
tree6ab92b050ed129c3a85eff9fdd0461b708425172 /src/eval.c
parent20ea2964cdf89eec255fb7d66064a9f1ab9e1575 (diff)
downloademacs-ca248607edd25a3d4385da7b084a15111b68466c.tar.gz
emacs-ca248607edd25a3d4385da7b084a15111b68466c.zip
(Fdefvar): Fix minor error in previous change.
(funcall_lambda): Fetch bytecode and constants vector from file if nec.
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/eval.c b/src/eval.c
index f5dd69ff057..c65744b9646 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -587,6 +587,7 @@ If INITVALUE is missing, SYMBOL's value is not set.")
587 tail = Fcdr (Fcdr (args)); 587 tail = Fcdr (Fcdr (args));
588 if (!NILP (Fcar (tail))) 588 if (!NILP (Fcar (tail)))
589 { 589 {
590 tem = Fcar (tail);
590 if (!NILP (Vpurify_flag)) 591 if (!NILP (Vpurify_flag))
591 tem = Fpurecopy (tem); 592 tem = Fpurecopy (tem);
592 Fput (sym, Qvariable_documentation, tem); 593 Fput (sym, Qvariable_documentation, tem);
@@ -2233,9 +2234,19 @@ funcall_lambda (fun, nargs, arg_vector)
2233 if (CONSP (fun)) 2234 if (CONSP (fun))
2234 val = Fprogn (Fcdr (Fcdr (fun))); 2235 val = Fprogn (Fcdr (Fcdr (fun)));
2235 else 2236 else
2236 val = Fbyte_code (XVECTOR (fun)->contents[COMPILED_BYTECODE], 2237 {
2237 XVECTOR (fun)->contents[COMPILED_CONSTANTS], 2238 /* If we have not actually read the bytecode string
2238 XVECTOR (fun)->contents[COMPILED_STACK_DEPTH]); 2239 and constants vector yet, fetch them from the file. */
2240 if (CONSP (XVECTOR (fun)->contents[COMPILED_BYTECODE]))
2241 {
2242 tem = read_doc_string (XVECTOR (fun)->contents[COMPILED_BYTECODE]);
2243 XVECTOR (fun)->contents[COMPILED_BYTECODE] = XCONS (tem)->car;
2244 XVECTOR (fun)->contents[COMPILED_CONSTANTS] = XCONS (tem)->cdr;
2245 }
2246 val = Fbyte_code (XVECTOR (fun)->contents[COMPILED_BYTECODE],
2247 XVECTOR (fun)->contents[COMPILED_CONSTANTS],
2248 XVECTOR (fun)->contents[COMPILED_STACK_DEPTH]);
2249 }
2239 return unbind_to (count, val); 2250 return unbind_to (count, val);
2240} 2251}
2241 2252