aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert2018-06-29 11:14:36 -0700
committerPaul Eggert2018-06-29 11:15:06 -0700
commite980a3c992c13178052f5994b063be58a2f95a2d (patch)
treec2e145556e7666ef0babc01284c29bfb8966161e /src
parenteec71ebdb50c3110bb747db57c7d7f04b6d14ad1 (diff)
downloademacs-e980a3c992c13178052f5994b063be58a2f95a2d.tar.gz
emacs-e980a3c992c13178052f5994b063be58a2f95a2d.zip
* src/lisp.h: Omit obsolete comment re bytecode stack.
Diffstat (limited to 'src')
-rw-r--r--src/lisp.h18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 56ad8b814b6..b2449cb87d3 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -3044,15 +3044,13 @@ extern void defvar_kboard (struct Lisp_Kboard_Objfwd *, const char *, int);
3044 } while (false) 3044 } while (false)
3045 3045
3046 3046
3047/* Elisp uses several stacks: 3047/* Elisp uses multiple stacks:
3048 - the C stack. 3048 - The C stack.
3049 - the bytecode stack: used internally by the bytecode interpreter. 3049 - The specpdl stack keeps track of backtraces, unwind-protects and
3050 Allocated from the C stack. 3050 dynamic let-bindings. It is allocated from the 'specpdl' array,
3051 - The specpdl stack: keeps track of active unwind-protect and 3051 a manually managed stack.
3052 dynamic-let-bindings. Allocated from the `specpdl' array, a manually 3052 - The handler stack keeps track of active catch tags and condition-case
3053 managed stack. 3053 handlers. It is allocated in a manually managed stack implemented by a
3054 - The handler stack: keeps track of active catch tags and condition-case
3055 handlers. Allocated in a manually managed stack implemented by a
3056 doubly-linked list allocated via xmalloc and never freed. */ 3054 doubly-linked list allocated via xmalloc and never freed. */
3057 3055
3058/* Structure for recording Lisp call stack for backtrace purposes. */ 3056/* Structure for recording Lisp call stack for backtrace purposes. */
@@ -3131,7 +3129,7 @@ SPECPDL_INDEX (void)
3131 control structures. A struct handler contains all the information needed to 3129 control structures. A struct handler contains all the information needed to
3132 restore the state of the interpreter after a non-local jump. 3130 restore the state of the interpreter after a non-local jump.
3133 3131
3134 handler structures are chained together in a doubly linked list; the `next' 3132 Handler structures are chained together in a doubly linked list; the `next'
3135 member points to the next outer catchtag and the `nextfree' member points in 3133 member points to the next outer catchtag and the `nextfree' member points in
3136 the other direction to the next inner element (which is typically the next 3134 the other direction to the next inner element (which is typically the next
3137 free element since we mostly use it on the deepest handler). 3135 free element since we mostly use it on the deepest handler).