Re: Follow-up to earlier question
Douglas Katzman via Sbcl-help <[email protected]> Fri, 27 Mar 2026 11:01:15 -0400
| Newsgroups | gmane.lisp.steel-bank.general |
|---|---|
| Message-ID | <CAOrNaszpgEirFigAa2oo4dodm+Y35=h7WybCd07+3PPvg22B9Q@mail.gmail.com> |
--===============1709342392016517901==
Content-Type: multipart/alternative; boundary="00000000000080b21b064e02c609"
--00000000000080b21b064e02c609
Content-Type: text/plain; charset="UTF-8"
In your situation, don't use Lisp to backtrace. Do it from 'ldb' instead
I made a recursive function FOO which just binds a lot of specials as an
example -
Binding stack guard page temporarily disabled: proceed with caution
debugger invoked on a SB-KERNEL::BINDING-STACK-EXHAUSTED in thread
#<THREAD tid=259 "main thread" RUNNING {1200030003}>:
Binding stack exhausted.
PROCEED WITH CAUTION.
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [ABORT] Exit debugger, returning to top level.
(SB-KERNEL::BINDING-STACK-EXHAUSTED-ERROR)
0] *(sb-vm:ldb-monitor)*
Welcome to LDB, a low-level debugger for the Lisp runtime environment.
ldb> *backtrace*
Backtrace:
0: fp=0xba4f2b0 pc=0xb7fb35a Foreign function backtrace_cmd
1: fp=0xba4f410 pc=0xb7fafdc Foreign function ldb_monitor
2: fp=0xba4f428 pc=0xb8001a3de5 SB-VM::LDB-MONITOR
3: fp=0xba4f488 pc=0xb8007729dc SB-EXT::INTERACTIVE-EVAL
4: fp=0xba4f4b0 pc=0xb80089bc74 SB-DEBUG::DEBUG-EVAL-PRINT
5: fp=0xba4f650 pc=0xb80089b800 SB-DEBUG::DEBUG-LOOP-FUN
6: fp=0xba4f668 pc=0xb80089af5a SB-DEBUG::INTERNAL-DEBUG
7: fp=0xba4f6e8 pc=0xb800899c24 (FLET DEBUG :IN
SB-DEBUG::%INVOKE-DEBUGGER)
8: fp=0xba4f768 pc=0xb8008996cc SB-DEBUG::%INVOKE-DEBUGGER
9: fp=0xba4f7d8 pc=0xb8008985fd (LAMBDA () :IN
SB-DEBUG::FUNCALL-WITH-DEBUG-IO-SYNTAX)
10: fp=0xba4f7f0 pc=0xb80006db68 SB-IMPL::CALL-WITH-SANE-IO-SYNTAX
11: fp=0xba4f898 pc=0xb8008980da (FLET "THUNK" :IN
SB-DEBUG::FUNCALL-WITH-DEBUG-IO-SYNTAX)
12: fp=0xba4f8b0 pc=0xb8007cb9ef SB-IMPL::%WITH-STANDARD-IO-SYNTAX
13: fp=0xba4f960 pc=0xb800898013 SB-DEBUG::FUNCALL-WITH-DEBUG-IO-SYNTAX
14: fp=0xba4f978 pc=0xb800898eeb INVOKE-DEBUGGER
15: fp=0xba4f9a8 pc=0xb80000e066 ERROR
16: fp=0xba4f9b8 pc=0xb800866086 SB-KERNEL::BINDING-STACK-EXHAUSTED-ERROR
17: fp=0xba4f9f0 pc=0xb82726e Foreign function call_into_lisp_
18: fp=0xba4fa78 pc=0xb827320 Foreign function post_signal_tramp
19: fp=0xba4faa0 pc=0xb800c6c0e5 CL-USER::FOO
20: fp=0xba4fac8 pc=0xb800c6c1ac CL-USER::FOO
--00000000000080b21b064e02c609
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">In your situation, don't use Lisp to backtrace.=C2=A0 =
Do it from 'ldb' instead<div>I made a recursive function FOO which =
just binds a lot of specials as an example -</div><div><br></div><div><font=
face=3D"monospace">Binding stack guard page temporarily disabled: proceed =
with caution<br><br>debugger invoked on a SB-KERNEL::BINDING-STACK-EXHAUSTE=
D in thread<br>#<THREAD tid=3D259 "main thread" RUNNING {12000=
30003}>:<br>=C2=A0 Binding stack exhausted.<br><br>PROCEED WITH CAUTION.=
<br><br>Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.<br=
><br>restarts (invokable by number or by possibly-abbreviated name):<br>=C2=
=A0 0: [ABORT] Exit debugger, returning to top level.<br><br>(SB-KERNEL::BI=
NDING-STACK-EXHAUSTED-ERROR)<br>0] <b>(sb-vm:ldb-monitor)</b><br>Welcome to=
LDB, a low-level debugger for the Lisp runtime environment.<br>ldb> <b>=
backtrace</b><br>Backtrace:<br>=C2=A0 =C2=A00: fp=3D0xba4f2b0 pc=3D0xb7fb35=
a Foreign function backtrace_cmd<br>=C2=A0 =C2=A01: fp=3D0xba4f410 pc=3D0xb=
7fafdc Foreign function ldb_monitor<br>=C2=A0 =C2=A02: fp=3D0xba4f428 pc=3D=
0xb8001a3de5 SB-VM::LDB-MONITOR<br>=C2=A0 =C2=A03: fp=3D0xba4f488 pc=3D0xb8=
007729dc SB-EXT::INTERACTIVE-EVAL<br>=C2=A0 =C2=A04: fp=3D0xba4f4b0 pc=3D0x=
b80089bc74 SB-DEBUG::DEBUG-EVAL-PRINT<br>=C2=A0 =C2=A05: fp=3D0xba4f650 pc=
=3D0xb80089b800 SB-DEBUG::DEBUG-LOOP-FUN<br>=C2=A0 =C2=A06: fp=3D0xba4f668 =
pc=3D0xb80089af5a SB-DEBUG::INTERNAL-DEBUG<br>=C2=A0 =C2=A07: fp=3D0xba4f6e=
8 pc=3D0xb800899c24 (FLET DEBUG :IN SB-DEBUG::%INVOKE-DEBUGGER)<br>=C2=A0 =
=C2=A08: fp=3D0xba4f768 pc=3D0xb8008996cc SB-DEBUG::%INVOKE-DEBUGGER<br>=C2=
=A0 =C2=A09: fp=3D0xba4f7d8 pc=3D0xb8008985fd (LAMBDA () :IN SB-DEBUG::FUNC=
ALL-WITH-DEBUG-IO-SYNTAX)<br>=C2=A0 10: fp=3D0xba4f7f0 pc=3D0xb80006db68 SB=
-IMPL::CALL-WITH-SANE-IO-SYNTAX<br>=C2=A0 11: fp=3D0xba4f898 pc=3D0xb800898=
0da (FLET "THUNK" :IN SB-DEBUG::FUNCALL-WITH-DEBUG-IO-SYNTAX)<br>=
=C2=A0 12: fp=3D0xba4f8b0 pc=3D0xb8007cb9ef SB-IMPL::%WITH-STANDARD-IO-SYNT=
AX<br>=C2=A0 13: fp=3D0xba4f960 pc=3D0xb800898013 SB-DEBUG::FUNCALL-WITH-DE=
BUG-IO-SYNTAX<br>=C2=A0 14: fp=3D0xba4f978 pc=3D0xb800898eeb INVOKE-DEBUGGE=
R<br>=C2=A0 15: fp=3D0xba4f9a8 pc=3D0xb80000e066 ERROR<br>=C2=A0 16: fp=3D0=
xba4f9b8 pc=3D0xb800866086 SB-KERNEL::BINDING-STACK-EXHAUSTED-ERROR<br>=C2=
=A0 17: fp=3D0xba4f9f0 pc=3D0xb82726e Foreign function call_into_lisp_<br>=
=C2=A0 18: fp=3D0xba4fa78 pc=3D0xb827320 Foreign function post_signal_tramp=
<br>=C2=A0 19: fp=3D0xba4faa0 pc=3D0xb800c6c0e5 CL-USER::FOO<br>=C2=A0 20: =
fp=3D0xba4fac8 pc=3D0xb800c6c1ac CL-USER::FOO</font><br></div></div>
--00000000000080b21b064e02c609--
--===============1709342392016517901==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
--===============1709342392016517901==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
Sbcl-help mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sbcl-help
--===============1709342392016517901==--