aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorStefan Monnier2011-04-01 11:16:50 -0400
committerStefan Monnier2011-04-01 11:16:50 -0400
commit7200d79c65c65686495dd95e9f6dd436cf6db55e (patch)
tree5ad8e8f4ad0bb2dadfdc1d670cb3cd47db28a3f8 /src
parent40d83b412f584cc02e68d4eac8fd5e6eb769e2fe (diff)
downloademacs-old-branches/lexbind-new.tar.gz
emacs-old-branches/lexbind-new.zip
Miscellanous cleanups in preparation for the merge.old-branches/lexbind-new
* lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): Remove debug statement. * lisp/emacs-lisp/bytecomp.el (byte-compile-single-version) (byte-compile-version-cond, byte-compile-delay-out) (byte-compile-delayed-out): Remove, unused. * src/bytecode.c (Fbyte_code): Revert to old calling convention. * src/lisp.h (COMPILED_PUSH_ARGS): Remove, unused.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog5
-rw-r--r--src/bytecode.c41
-rw-r--r--src/callint.c4
-rw-r--r--src/eval.c15
-rw-r--r--src/lisp.h3
-rw-r--r--src/lread.c33
-rw-r--r--src/window.c1
7 files changed, 44 insertions, 58 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index e34cd694321..04064adbaa3 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
12011-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * bytecode.c (Fbyte_code): Revert to old calling convention.
4 * lisp.h (COMPILED_PUSH_ARGS): Remove, unused.
5
12011-03-16 Stefan Monnier <monnier@iro.umontreal.ca> 62011-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
2 7
3 * image.c (parse_image_spec): Use Ffunctionp. 8 * image.c (parse_image_spec): Use Ffunctionp.
diff --git a/src/bytecode.c b/src/bytecode.c
index 01ae8055ebf..5d94cb0fb39 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -51,7 +51,7 @@ by Hallvard:
51 * 51 *
52 * define BYTE_CODE_METER to enable generation of a byte-op usage histogram. 52 * define BYTE_CODE_METER to enable generation of a byte-op usage histogram.
53 */ 53 */
54#define BYTE_CODE_SAFE 1 54/* #define BYTE_CODE_SAFE */
55/* #define BYTE_CODE_METER */ 55/* #define BYTE_CODE_METER */
56 56
57 57
@@ -160,7 +160,7 @@ extern Lisp_Object Qand_optional, Qand_rest;
160#ifdef BYTE_CODE_SAFE 160#ifdef BYTE_CODE_SAFE
161#define Bset_mark 0163 /* this loser is no longer generated as of v18 */ 161#define Bset_mark 0163 /* this loser is no longer generated as of v18 */
162#endif 162#endif
163#define Binteractive_p 0164 /* Obsolete. */ 163#define Binteractive_p 0164 /* Obsolete since Emacs-24.1. */
164 164
165#define Bforward_char 0165 165#define Bforward_char 0165
166#define Bforward_word 0166 166#define Bforward_word 0166
@@ -185,16 +185,16 @@ extern Lisp_Object Qand_optional, Qand_rest;
185#define Bdup 0211 185#define Bdup 0211
186 186
187#define Bsave_excursion 0212 187#define Bsave_excursion 0212
188#define Bsave_window_excursion 0213 /* Obsolete. */ 188#define Bsave_window_excursion 0213 /* Obsolete since Emacs-24.1. */
189#define Bsave_restriction 0214 189#define Bsave_restriction 0214
190#define Bcatch 0215 190#define Bcatch 0215
191 191
192#define Bunwind_protect 0216 192#define Bunwind_protect 0216
193#define Bcondition_case 0217 193#define Bcondition_case 0217
194#define Btemp_output_buffer_setup 0220 /* Obsolete. */ 194#define Btemp_output_buffer_setup 0220 /* Obsolete since Emacs-24.1. */
195#define Btemp_output_buffer_show 0221 /* Obsolete. */ 195#define Btemp_output_buffer_show 0221 /* Obsolete since Emacs-24.1. */
196 196
197#define Bunbind_all 0222 /* Obsolete. */ 197#define Bunbind_all 0222 /* Obsolete. Never used. */
198 198
199#define Bset_marker 0223 199#define Bset_marker 0223
200#define Bmatch_beginning 0224 200#define Bmatch_beginning 0224
@@ -413,24 +413,15 @@ unmark_byte_stack (void)
413 } while (0) 413 } while (0)
414 414
415 415
416DEFUN ("byte-code", Fbyte_code, Sbyte_code, 3, MANY, 0, 416DEFUN ("byte-code", Fbyte_code, Sbyte_code, 3, 3, 0,
417 doc: /* Function used internally in byte-compiled code. 417 doc: /* Function used internally in byte-compiled code.
418The first argument, BYTESTR, is a string of byte code; 418The first argument, BYTESTR, is a string of byte code;
419the second, VECTOR, a vector of constants; 419the second, VECTOR, a vector of constants;
420the third, MAXDEPTH, the maximum stack depth used in this function. 420the third, MAXDEPTH, the maximum stack depth used in this function.
421If the third argument is incorrect, Emacs may crash. 421If the third argument is incorrect, Emacs may crash. */)
422 422 (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth)
423If ARGS-TEMPLATE is specified, it is an argument list specification,
424according to which any remaining arguments are pushed on the stack
425before executing BYTESTR.
426
427usage: (byte-code BYTESTR VECTOR MAXDEP &optional ARGS-TEMPLATE &rest ARGS) */)
428 (size_t nargs, Lisp_Object *args)
429{ 423{
430 Lisp_Object args_tmpl = nargs >= 4 ? args[3] : Qnil; 424 return exec_byte_code (bytestr, vector, maxdepth, Qnil, 0, NULL);
431 int pnargs = nargs >= 4 ? nargs - 4 : 0;
432 Lisp_Object *pargs = nargs >= 4 ? args + 4 : 0;
433 return exec_byte_code (args[0], args[1], args[2], args_tmpl, pnargs, pargs);
434} 425}
435 426
436/* Execute the byte-code in BYTESTR. VECTOR is the constant vector, and 427/* Execute the byte-code in BYTESTR. VECTOR is the constant vector, and
@@ -810,7 +801,7 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
810 AFTER_POTENTIAL_GC (); 801 AFTER_POTENTIAL_GC ();
811 break; 802 break;
812 803
813 case Bunbind_all: /* Obsolete. */ 804 case Bunbind_all: /* Obsolete. Never used. */
814 /* To unbind back to the beginning of this frame. Not used yet, 805 /* To unbind back to the beginning of this frame. Not used yet,
815 but will be needed for tail-recursion elimination. */ 806 but will be needed for tail-recursion elimination. */
816 BEFORE_POTENTIAL_GC (); 807 BEFORE_POTENTIAL_GC ();
@@ -938,12 +929,12 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
938 save_excursion_save ()); 929 save_excursion_save ());
939 break; 930 break;
940 931
941 case Bsave_current_buffer: /* Obsolete. */ 932 case Bsave_current_buffer: /* Obsolete since ??. */
942 case Bsave_current_buffer_1: 933 case Bsave_current_buffer_1:
943 record_unwind_protect (set_buffer_if_live, Fcurrent_buffer ()); 934 record_unwind_protect (set_buffer_if_live, Fcurrent_buffer ());
944 break; 935 break;
945 936
946 case Bsave_window_excursion: /* Obsolete. */ 937 case Bsave_window_excursion: /* Obsolete since 24.1. */
947 { 938 {
948 register int count = SPECPDL_INDEX (); 939 register int count = SPECPDL_INDEX ();
949 record_unwind_protect (Fset_window_configuration, 940 record_unwind_protect (Fset_window_configuration,
@@ -985,7 +976,7 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
985 break; 976 break;
986 } 977 }
987 978
988 case Btemp_output_buffer_setup: /* Obsolete. */ 979 case Btemp_output_buffer_setup: /* Obsolete since 24.1. */
989 BEFORE_POTENTIAL_GC (); 980 BEFORE_POTENTIAL_GC ();
990 CHECK_STRING (TOP); 981 CHECK_STRING (TOP);
991 temp_output_buffer_setup (SSDATA (TOP)); 982 temp_output_buffer_setup (SSDATA (TOP));
@@ -993,7 +984,7 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
993 TOP = Vstandard_output; 984 TOP = Vstandard_output;
994 break; 985 break;
995 986
996 case Btemp_output_buffer_show: /* Obsolete. */ 987 case Btemp_output_buffer_show: /* Obsolete since 24.1. */
997 { 988 {
998 Lisp_Object v1; 989 Lisp_Object v1;
999 BEFORE_POTENTIAL_GC (); 990 BEFORE_POTENTIAL_GC ();
@@ -1465,7 +1456,7 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
1465 AFTER_POTENTIAL_GC (); 1456 AFTER_POTENTIAL_GC ();
1466 break; 1457 break;
1467 1458
1468 case Binteractive_p: /* Obsolete. */ 1459 case Binteractive_p: /* Obsolete since 24.1. */
1469 PUSH (Finteractive_p ()); 1460 PUSH (Finteractive_p ());
1470 break; 1461 break;
1471 1462
diff --git a/src/callint.c b/src/callint.c
index 489fa392e46..60570369d9e 100644
--- a/src/callint.c
+++ b/src/callint.c
@@ -171,8 +171,8 @@ static void
171fix_command (Lisp_Object input, Lisp_Object values) 171fix_command (Lisp_Object input, Lisp_Object values)
172{ 172{
173 /* FIXME: Instead of this ugly hack, we should provide a way for an 173 /* FIXME: Instead of this ugly hack, we should provide a way for an
174 interactive spec to return an expression that will re-build the args 174 interactive spec to return an expression/function that will re-build the
175 without user intervention. */ 175 args without user intervention. */
176 if (CONSP (input)) 176 if (CONSP (input))
177 { 177 {
178 Lisp_Object car; 178 Lisp_Object car;
diff --git a/src/eval.c b/src/eval.c
index 9f90e6df4b5..0e47d7c757c 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -117,10 +117,10 @@ Lisp_Object Vsignaling_function;
117 117
118int handling_signal; 118int handling_signal;
119 119
120static Lisp_Object apply_lambda (Lisp_Object fun, Lisp_Object args);
121static Lisp_Object funcall_lambda (Lisp_Object, size_t, Lisp_Object *); 120static Lisp_Object funcall_lambda (Lisp_Object, size_t, Lisp_Object *);
122static void unwind_to_catch (struct catchtag *, Lisp_Object) NO_RETURN; 121static void unwind_to_catch (struct catchtag *, Lisp_Object) NO_RETURN;
123static int interactive_p (int); 122static int interactive_p (int);
123static Lisp_Object apply_lambda (Lisp_Object fun, Lisp_Object args);
124 124
125void 125void
126init_eval_once (void) 126init_eval_once (void)
@@ -684,7 +684,7 @@ usage: (defmacro NAME ARGLIST [DOCSTRING] [DECL] BODY...) */)
684 tail = Fcons (lambda_list, tail); 684 tail = Fcons (lambda_list, tail);
685 else 685 else
686 tail = Fcons (lambda_list, Fcons (doc, tail)); 686 tail = Fcons (lambda_list, Fcons (doc, tail));
687 687
688 defn = Fcons (Qlambda, tail); 688 defn = Fcons (Qlambda, tail);
689 if (!NILP (Vinternal_interpreter_environment)) /* Mere optimization! */ 689 if (!NILP (Vinternal_interpreter_environment)) /* Mere optimization! */
690 defn = Ffunction (Fcons (defn, Qnil)); 690 defn = Ffunction (Fcons (defn, Qnil));
@@ -1012,11 +1012,8 @@ usage: (let* VARLIST BODY...) */)
1012 1012
1013 varlist = XCDR (varlist); 1013 varlist = XCDR (varlist);
1014 } 1014 }
1015
1016 UNGCPRO; 1015 UNGCPRO;
1017
1018 val = Fprogn (Fcdr (args)); 1016 val = Fprogn (Fcdr (args));
1019
1020 return unbind_to (count, val); 1017 return unbind_to (count, val);
1021} 1018}
1022 1019
@@ -2083,7 +2080,8 @@ then strings and vectors are not accepted. */)
2083 return Qnil; 2080 return Qnil;
2084 funcar = XCAR (fun); 2081 funcar = XCAR (fun);
2085 if (EQ (funcar, Qclosure)) 2082 if (EQ (funcar, Qclosure))
2086 return !NILP (Fassq (Qinteractive, Fcdr (Fcdr (XCDR (fun))))) ? Qt : if_prop; 2083 return (!NILP (Fassq (Qinteractive, Fcdr (Fcdr (XCDR (fun)))))
2084 ? Qt : if_prop);
2087 else if (EQ (funcar, Qlambda)) 2085 else if (EQ (funcar, Qlambda))
2088 return !NILP (Fassq (Qinteractive, Fcdr (XCDR (fun)))) ? Qt : if_prop; 2086 return !NILP (Fassq (Qinteractive, Fcdr (XCDR (fun)))) ? Qt : if_prop;
2089 else if (EQ (funcar, Qautoload)) 2087 else if (EQ (funcar, Qautoload))
@@ -2898,7 +2896,7 @@ call7 (Lisp_Object fn, Lisp_Object arg1, Lisp_Object arg2, Lisp_Object arg3,
2898/* The caller should GCPRO all the elements of ARGS. */ 2896/* The caller should GCPRO all the elements of ARGS. */
2899 2897
2900DEFUN ("functionp", Ffunctionp, Sfunctionp, 1, 1, 0, 2898DEFUN ("functionp", Ffunctionp, Sfunctionp, 1, 1, 0,
2901 doc: /* Return non-nil if OBJECT is a type of object that can be called as a function. */) 2899 doc: /* Non-nil if OBJECT is a function. */)
2902 (Lisp_Object object) 2900 (Lisp_Object object)
2903{ 2901{
2904 if (SYMBOLP (object) && !NILP (Ffboundp (object))) 2902 if (SYMBOLP (object) && !NILP (Ffboundp (object)))
@@ -3220,7 +3218,7 @@ funcall_lambda (Lisp_Object fun, size_t nargs,
3220 xsignal2 (Qwrong_number_of_arguments, fun, make_number (nargs)); 3218 xsignal2 (Qwrong_number_of_arguments, fun, make_number (nargs));
3221 else 3219 else
3222 val = Qnil; 3220 val = Qnil;
3223 3221
3224 /* Bind the argument. */ 3222 /* Bind the argument. */
3225 if (!NILP (lexenv) && SYMBOLP (next)) 3223 if (!NILP (lexenv) && SYMBOLP (next))
3226 /* Lexically bind NEXT by adding it to the lexenv alist. */ 3224 /* Lexically bind NEXT by adding it to the lexenv alist. */
@@ -3501,7 +3499,6 @@ context where binding is lexical by default. */)
3501} 3499}
3502 3500
3503 3501
3504
3505DEFUN ("backtrace-debug", Fbacktrace_debug, Sbacktrace_debug, 2, 2, 0, 3502DEFUN ("backtrace-debug", Fbacktrace_debug, Sbacktrace_debug, 2, 2, 0,
3506 doc: /* Set the debug-on-exit flag of eval frame LEVEL levels down to FLAG. 3503 doc: /* Set the debug-on-exit flag of eval frame LEVEL levels down to FLAG.
3507The debugger is entered when that frame exits, if the flag is non-nil. */) 3504The debugger is entered when that frame exits, if the flag is non-nil. */)
diff --git a/src/lisp.h b/src/lisp.h
index bd70dcebbdb..580dbd11013 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -1483,7 +1483,6 @@ typedef unsigned char UCHAR;
1483#define COMPILED_STACK_DEPTH 3 1483#define COMPILED_STACK_DEPTH 3
1484#define COMPILED_DOC_STRING 4 1484#define COMPILED_DOC_STRING 4
1485#define COMPILED_INTERACTIVE 5 1485#define COMPILED_INTERACTIVE 5
1486#define COMPILED_PUSH_ARGS 6
1487 1486
1488/* Flag bits in a character. These also get used in termhooks.h. 1487/* Flag bits in a character. These also get used in termhooks.h.
1489 Richard Stallman <rms@gnu.ai.mit.edu> thinks that MULE 1488 Richard Stallman <rms@gnu.ai.mit.edu> thinks that MULE
@@ -3264,7 +3263,7 @@ extern int read_bytecode_char (int);
3264 3263
3265/* Defined in bytecode.c */ 3264/* Defined in bytecode.c */
3266extern Lisp_Object Qbytecode; 3265extern Lisp_Object Qbytecode;
3267EXFUN (Fbyte_code, MANY); 3266EXFUN (Fbyte_code, 3);
3268extern void syms_of_bytecode (void); 3267extern void syms_of_bytecode (void);
3269extern struct byte_stack *byte_stack_list; 3268extern struct byte_stack *byte_stack_list;
3270#ifdef BYTE_MARK_STACK 3269#ifdef BYTE_MARK_STACK
diff --git a/src/lread.c b/src/lread.c
index 24183532527..6a24569f552 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -796,16 +796,16 @@ lisp_file_lexically_bound_p (Lisp_Object readcharfun)
796 } beg_end_state = NOMINAL; 796 } beg_end_state = NOMINAL;
797 int in_file_vars = 0; 797 int in_file_vars = 0;
798 798
799#define UPDATE_BEG_END_STATE(ch) \ 799#define UPDATE_BEG_END_STATE(ch) \
800 if (beg_end_state == NOMINAL) \ 800 if (beg_end_state == NOMINAL) \
801 beg_end_state = (ch == '-' ? AFTER_FIRST_DASH : NOMINAL); \ 801 beg_end_state = (ch == '-' ? AFTER_FIRST_DASH : NOMINAL); \
802 else if (beg_end_state == AFTER_FIRST_DASH) \ 802 else if (beg_end_state == AFTER_FIRST_DASH) \
803 beg_end_state = (ch == '*' ? AFTER_ASTERIX : NOMINAL); \ 803 beg_end_state = (ch == '*' ? AFTER_ASTERIX : NOMINAL); \
804 else if (beg_end_state == AFTER_ASTERIX) \ 804 else if (beg_end_state == AFTER_ASTERIX) \
805 { \ 805 { \
806 if (ch == '-') \ 806 if (ch == '-') \
807 in_file_vars = !in_file_vars; \ 807 in_file_vars = !in_file_vars; \
808 beg_end_state = NOMINAL; \ 808 beg_end_state = NOMINAL; \
809 } 809 }
810 810
811 /* Skip until we get to the file vars, if any. */ 811 /* Skip until we get to the file vars, if any. */
@@ -834,7 +834,7 @@ lisp_file_lexically_bound_p (Lisp_Object readcharfun)
834 UPDATE_BEG_END_STATE (ch); 834 UPDATE_BEG_END_STATE (ch);
835 ch = READCHAR; 835 ch = READCHAR;
836 } 836 }
837 837
838 while (var_end > var 838 while (var_end > var
839 && (var_end[-1] == ' ' || var_end[-1] == '\t')) 839 && (var_end[-1] == ' ' || var_end[-1] == '\t'))
840 var_end--; 840 var_end--;
@@ -880,7 +880,6 @@ lisp_file_lexically_bound_p (Lisp_Object readcharfun)
880 return rv; 880 return rv;
881 } 881 }
882} 882}
883
884 883
885/* Value is a version number of byte compiled code if the file 884/* Value is a version number of byte compiled code if the file
886 associated with file descriptor FD is a compiled Lisp file that's 885 associated with file descriptor FD is a compiled Lisp file that's
@@ -1275,7 +1274,6 @@ Return t if the file exists and loads successfully. */)
1275 specbind (Qinhibit_file_name_operation, Qnil); 1274 specbind (Qinhibit_file_name_operation, Qnil);
1276 load_descriptor_list 1275 load_descriptor_list
1277 = Fcons (make_number (fileno (stream)), load_descriptor_list); 1276 = Fcons (make_number (fileno (stream)), load_descriptor_list);
1278
1279 specbind (Qload_in_progress, Qt); 1277 specbind (Qload_in_progress, Qt);
1280 1278
1281 instream = stream; 1279 instream = stream;
@@ -1863,11 +1861,9 @@ This function preserves the position of point. */)
1863 1861
1864 specbind (Qeval_buffer_list, Fcons (buf, Veval_buffer_list)); 1862 specbind (Qeval_buffer_list, Fcons (buf, Veval_buffer_list));
1865 specbind (Qstandard_output, tem); 1863 specbind (Qstandard_output, tem);
1866 specbind (Qlexical_binding, Qnil);
1867 record_unwind_protect (save_excursion_restore, save_excursion_save ()); 1864 record_unwind_protect (save_excursion_restore, save_excursion_save ());
1868 BUF_TEMP_SET_PT (XBUFFER (buf), BUF_BEGV (XBUFFER (buf))); 1865 BUF_TEMP_SET_PT (XBUFFER (buf), BUF_BEGV (XBUFFER (buf)));
1869 if (lisp_file_lexically_bound_p (buf)) 1866 specbind (Qlexical_binding, lisp_file_lexically_bound_p (buf) ? Qt : Qnil);
1870 Fset (Qlexical_binding, Qt);
1871 readevalloop (buf, 0, filename, 1867 readevalloop (buf, 0, filename,
1872 !NILP (printflag), unibyte, Qnil, Qnil, Qnil); 1868 !NILP (printflag), unibyte, Qnil, Qnil, Qnil);
1873 unbind_to (count, Qnil); 1869 unbind_to (count, Qnil);
@@ -3336,7 +3332,6 @@ read_vector (Lisp_Object readcharfun, int bytecodeflag)
3336 for (i = 0; i < size; i++) 3332 for (i = 0; i < size; i++)
3337 { 3333 {
3338 item = Fcar (tem); 3334 item = Fcar (tem);
3339
3340 /* If `load-force-doc-strings' is t when reading a lazily-loaded 3335 /* If `load-force-doc-strings' is t when reading a lazily-loaded
3341 bytecode object, the docstring containing the bytecode and 3336 bytecode object, the docstring containing the bytecode and
3342 constants values must be treated as unibyte and passed to 3337 constants values must be treated as unibyte and passed to
@@ -3394,7 +3389,6 @@ read_vector (Lisp_Object readcharfun, int bytecodeflag)
3394 tem = Fcdr (tem); 3389 tem = Fcdr (tem);
3395 free_cons (otem); 3390 free_cons (otem);
3396 } 3391 }
3397
3398 return vector; 3392 return vector;
3399} 3393}
3400 3394
@@ -4024,7 +4018,6 @@ defvar_lisp (struct Lisp_Objfwd *o_fwd,
4024 staticpro (address); 4018 staticpro (address);
4025} 4019}
4026 4020
4027
4028/* Similar but define a variable whose value is the Lisp Object stored 4021/* Similar but define a variable whose value is the Lisp Object stored
4029 at a particular offset in the current kboard object. */ 4022 at a particular offset in the current kboard object. */
4030 4023
@@ -4470,7 +4463,7 @@ to load. See also `load-dangerous-libraries'. */);
4470 doc: /* If non-nil, use lexical binding when evaluating code. 4463 doc: /* If non-nil, use lexical binding when evaluating code.
4471This only applies to code evaluated by `eval-buffer' and `eval-region'. 4464This only applies to code evaluated by `eval-buffer' and `eval-region'.
4472This variable is automatically set from the file variables of an interpreted 4465This variable is automatically set from the file variables of an interpreted
4473 lisp file read using `load'. */); 4466 Lisp file read using `load'. */);
4474 Fmake_variable_buffer_local (Qlexical_binding); 4467 Fmake_variable_buffer_local (Qlexical_binding);
4475 4468
4476 DEFVAR_LISP ("eval-buffer-list", Veval_buffer_list, 4469 DEFVAR_LISP ("eval-buffer-list", Veval_buffer_list,
diff --git a/src/window.c b/src/window.c
index 4bd533c22ac..7e40cdff42b 100644
--- a/src/window.c
+++ b/src/window.c
@@ -3649,6 +3649,7 @@ displaying that buffer. */)
3649 return Qnil; 3649 return Qnil;
3650} 3650}
3651 3651
3652
3652void 3653void
3653temp_output_buffer_show (register Lisp_Object buf) 3654temp_output_buffer_show (register Lisp_Object buf)
3654{ 3655{