diff options
| author | Mattias EngdegÄrd | 2022-02-17 14:39:42 +0100 |
|---|---|---|
| committer | Mattias EngdegÄrd | 2022-02-17 14:52:04 +0100 |
| commit | c1111e944784f68593964e528a9bd0dd6a6314fb (patch) | |
| tree | a3fd23eb850a9e85e645db974e3d7610f11bac06 /src | |
| parent | df6e989f7ab1044e6f98be4b503761af07cd370b (diff) | |
| download | emacs-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.c | 6 | ||||
| -rw-r--r-- | src/eval.c | 20 |
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 |