]> git.eshelyaron.com Git - emacs.git/commitdiff
Missing file in last commit.
authorStefan Monnier <monnier@iro.umontreal.ca>
Sun, 6 Mar 2011 05:07:48 +0000 (00:07 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Sun, 6 Mar 2011 05:07:48 +0000 (00:07 -0500)
* src/eval.c (funcall_lambda): Adjust arglist test accordingly.

src/eval.c

index 869d70e3d7fbce06b996f31a8617d27718637f11..1f6a5e4a1c6ce1a7a89cd1f1e00a155c6c388081 100644 (file)
@@ -3136,8 +3136,8 @@ funcall_lambda (Lisp_Object fun, int nargs,
     }
   else if (COMPILEDP (fun))
     {
-      if ((ASIZE (fun) & PSEUDOVECTOR_SIZE_MASK) > COMPILED_PUSH_ARGS
-         && ! NILP (XVECTOR (fun)->contents[COMPILED_PUSH_ARGS]))
+      syms_left = AREF (fun, COMPILED_ARGLIST);
+      if (INTEGERP (syms_left))
        /* A byte-code object with a non-nil `push args' slot means we
           shouldn't bind any arguments, instead just call the byte-code
           interpreter directly; it will push arguments as necessary.
@@ -3154,10 +3154,9 @@ funcall_lambda (Lisp_Object fun, int nargs,
          return exec_byte_code (AREF (fun, COMPILED_BYTECODE),
                                 AREF (fun, COMPILED_CONSTANTS),
                                 AREF (fun, COMPILED_STACK_DEPTH),
-                                AREF (fun, COMPILED_ARGLIST),
+                                syms_left,
                                 nargs, arg_vector);
        }
-      syms_left = AREF (fun, COMPILED_ARGLIST);
       lexenv = Qnil;
     }
   else