aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMattias EngdegÄrd2022-02-17 14:39:42 +0100
committerMattias EngdegÄrd2022-02-17 14:52:04 +0100
commitc1111e944784f68593964e528a9bd0dd6a6314fb (patch)
treea3fd23eb850a9e85e645db974e3d7610f11bac06 /src
parentdf6e989f7ab1044e6f98be4b503761af07cd370b (diff)
downloademacs-c1111e944784f68593964e528a9bd0dd6a6314fb.tar.gz
emacs-c1111e944784f68593964e528a9bd0dd6a6314fb.zip
Fix or remove outdated comments
* src/eval.c (funcall_lambda): Rewrite obsolete comment. * src/bytecode.c (exec_byte_code): Remove lying comment and unneeded #define. * lisp/emacs-lisp/byte-opt.el: Remove car. Keep pig. (byte-compile-log-lap-1): Remove obsolete and irrelevant comment.
Diffstat (limited to 'src')
-rw-r--r--src/bytecode.c6
-rw-r--r--src/eval.c20
2 files changed, 9 insertions, 17 deletions
diff --git a/src/bytecode.c b/src/bytecode.c
index bda9a39b7f3..96f1f905812 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -458,17 +458,13 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
458 458
459#ifdef BYTE_CODE_THREADED 459#ifdef BYTE_CODE_THREADED
460 460
461 /* A convenience define that saves us a lot of typing and makes
462 the table clearer. */
463#define LABEL(OP) [OP] = &&insn_ ## OP
464
465 /* This is the dispatch table for the threaded interpreter. */ 461 /* This is the dispatch table for the threaded interpreter. */
466 static const void *const targets[256] = 462 static const void *const targets[256] =
467 { 463 {
468 [0 ... (Bconstant - 1)] = &&insn_default, 464 [0 ... (Bconstant - 1)] = &&insn_default,
469 [Bconstant ... 255] = &&insn_Bconstant, 465 [Bconstant ... 255] = &&insn_Bconstant,
470 466
471#define DEFINE(name, value) LABEL (name) , 467#define DEFINE(name, value) [name] = &&insn_ ## name,
472 BYTE_CODES 468 BYTE_CODES
473#undef DEFINE 469#undef DEFINE
474 }; 470 };
diff --git a/src/eval.c b/src/eval.c
index 7472e649afe..d3342289fbb 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -3243,19 +3243,15 @@ funcall_lambda (Lisp_Object fun, ptrdiff_t nargs,
3243 else if (COMPILEDP (fun)) 3243 else if (COMPILEDP (fun))
3244 { 3244 {
3245 syms_left = AREF (fun, COMPILED_ARGLIST); 3245 syms_left = AREF (fun, COMPILED_ARGLIST);
3246 /* Bytecode objects using lexical binding have an integral
3247 ARGLIST slot value: pass the arguments to the byte-code
3248 engine directly. */
3246 if (FIXNUMP (syms_left)) 3249 if (FIXNUMP (syms_left))
3247 /* A byte-code object with an integer args template means we 3250 return fetch_and_exec_byte_code (fun, XFIXNUM (syms_left),
3248 shouldn't bind any arguments, instead just call the byte-code 3251 nargs, arg_vector);
3249 interpreter directly; it will push arguments as necessary. 3252 /* Otherwise the bytecode object uses dynamic binding and the
3250 3253 ARGLIST slot contains a standard formal argument list whose
3251 Byte-code objects with a nil args template (the default) 3254 variables are bound dynamically below. */
3252 have dynamically-bound arguments, and use the
3253 argument-binding code below instead (as do all interpreted
3254 functions, even lexically bound ones). */
3255 {
3256 return fetch_and_exec_byte_code (fun, XFIXNUM (syms_left),
3257 nargs, arg_vector);
3258 }
3259 lexenv = Qnil; 3255 lexenv = Qnil;
3260 } 3256 }
3261#ifdef HAVE_MODULES 3257#ifdef HAVE_MODULES