diff options
| author | Tom Tromey | 2013-07-26 14:02:53 -0600 |
|---|---|---|
| committer | Tom Tromey | 2013-07-26 14:02:53 -0600 |
| commit | cc231cbe45d27a1906d268fb72d3b4105a2e9c65 (patch) | |
| tree | c011828e2a3a18e77eaa8849e3cccb805d798f42 /src/bytecode.c | |
| parent | b34a529f177a6ea32da5cb1254f91bf9d71838db (diff) | |
| parent | fec9206062b420aca84f53d05a72c3ee43244022 (diff) | |
| download | emacs-cc231cbe45d27a1906d268fb72d3b4105a2e9c65.tar.gz emacs-cc231cbe45d27a1906d268fb72d3b4105a2e9c65.zip | |
merge from trunk
Diffstat (limited to 'src/bytecode.c')
| -rw-r--r-- | src/bytecode.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/bytecode.c b/src/bytecode.c index f186f7d1bc3..1be3e5c6188 100644 --- a/src/bytecode.c +++ b/src/bytecode.c | |||
| @@ -569,9 +569,9 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth, | |||
| 569 | if (nargs < mandatory) | 569 | if (nargs < mandatory) |
| 570 | /* Too few arguments. */ | 570 | /* Too few arguments. */ |
| 571 | Fsignal (Qwrong_number_of_arguments, | 571 | Fsignal (Qwrong_number_of_arguments, |
| 572 | Fcons (Fcons (make_number (mandatory), | 572 | list2 (Fcons (make_number (mandatory), |
| 573 | rest ? Qand_rest : make_number (nonrest)), | 573 | rest ? Qand_rest : make_number (nonrest)), |
| 574 | Fcons (make_number (nargs), Qnil))); | 574 | make_number (nargs))); |
| 575 | else | 575 | else |
| 576 | { | 576 | { |
| 577 | for (; i < nonrest; i++) | 577 | for (; i < nonrest; i++) |
| @@ -590,9 +590,8 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth, | |||
| 590 | else | 590 | else |
| 591 | /* Too many arguments. */ | 591 | /* Too many arguments. */ |
| 592 | Fsignal (Qwrong_number_of_arguments, | 592 | Fsignal (Qwrong_number_of_arguments, |
| 593 | Fcons (Fcons (make_number (mandatory), | 593 | list2 (Fcons (make_number (mandatory), make_number (nonrest)), |
| 594 | make_number (nonrest)), | 594 | make_number (nargs))); |
| 595 | Fcons (make_number (nargs), Qnil))); | ||
| 596 | } | 595 | } |
| 597 | else if (! NILP (args_template)) | 596 | else if (! NILP (args_template)) |
| 598 | /* We should push some arguments on the stack. */ | 597 | /* We should push some arguments on the stack. */ |
| @@ -1061,8 +1060,8 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth, | |||
| 1061 | 1060 | ||
| 1062 | CASE (Bsave_window_excursion): /* Obsolete since 24.1. */ | 1061 | CASE (Bsave_window_excursion): /* Obsolete since 24.1. */ |
| 1063 | { | 1062 | { |
| 1064 | register ptrdiff_t count1 = SPECPDL_INDEX (); | 1063 | ptrdiff_t count1 = SPECPDL_INDEX (); |
| 1065 | record_unwind_protect (Fset_window_configuration, | 1064 | record_unwind_protect (restore_window_configuration, |
| 1066 | Fcurrent_window_configuration (Qnil)); | 1065 | Fcurrent_window_configuration (Qnil)); |
| 1067 | BEFORE_POTENTIAL_GC (); | 1066 | BEFORE_POTENTIAL_GC (); |
| 1068 | TOP = Fprogn (TOP); | 1067 | TOP = Fprogn (TOP); |
| @@ -1087,7 +1086,7 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth, | |||
| 1087 | } | 1086 | } |
| 1088 | 1087 | ||
| 1089 | CASE (Bunwind_protect): /* FIXME: avoid closure for lexbind. */ | 1088 | CASE (Bunwind_protect): /* FIXME: avoid closure for lexbind. */ |
| 1090 | record_unwind_protect (Fprogn, POP); | 1089 | record_unwind_protect (unwind_body, POP); |
| 1091 | NEXT; | 1090 | NEXT; |
| 1092 | 1091 | ||
| 1093 | CASE (Bcondition_case): /* FIXME: ill-suited for lexbind. */ | 1092 | CASE (Bcondition_case): /* FIXME: ill-suited for lexbind. */ |
| @@ -1169,14 +1168,14 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth, | |||
| 1169 | } | 1168 | } |
| 1170 | 1169 | ||
| 1171 | CASE (Blist1): | 1170 | CASE (Blist1): |
| 1172 | TOP = Fcons (TOP, Qnil); | 1171 | TOP = list1 (TOP); |
| 1173 | NEXT; | 1172 | NEXT; |
| 1174 | 1173 | ||
| 1175 | CASE (Blist2): | 1174 | CASE (Blist2): |
| 1176 | { | 1175 | { |
| 1177 | Lisp_Object v1; | 1176 | Lisp_Object v1; |
| 1178 | v1 = POP; | 1177 | v1 = POP; |
| 1179 | TOP = Fcons (TOP, Fcons (v1, Qnil)); | 1178 | TOP = list2 (TOP, v1); |
| 1180 | NEXT; | 1179 | NEXT; |
| 1181 | } | 1180 | } |
| 1182 | 1181 | ||