DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ d

⟦e3884f9e5⟧

    Length: 6068 (0x17b4)
    Names: »debug.elc«

Derivation

└─⟦a0efdde77⟧ Bits:30001252 EUUGD11 Tape, 1987 Spring Conference Helsinki
    └─ ⟦this⟧ »EUUGD11/gnu-31mar87/emacs/lisp/debug.elc« 

Hex Dump

0x0000…0020 0a 28 73 65 74 71 20 64 65 62 75 67 67 65 72 20 28 71 75 6f 74 65 20 64 65 62 75 67 29 29 0a 0a   ┆ (setq debugger (quote debug))  ┆
0x0020…0040 28 64 65 66 75 6e 20 64 65 62 75 67 20 28 26 72 65 73 74 20 64 65 62 75 67 67 65 72 2d 61 72 67   ┆(defun debug (&rest debugger-arg┆
0x0040…0060 73 29 20 22 5c 0a 45 6e 74 65 72 20 64 65 62 75 67 67 65 72 2e 20 20 52 65 74 75 72 6e 73 20 69   ┆s) "\ Enter debugger.  Returns i┆
0x0060…0080 66 20 75 73 65 72 20 73 61 79 73 20 5c 22 63 6f 6e 74 69 6e 75 65 5c 22 2e 0a 41 72 67 75 6d 65   ┆f user says \"continue\". Argume┆
0x0080…00a0 6e 74 73 20 61 72 65 20 6d 61 69 6e 6c 79 20 66 6f 72 20 75 73 65 20 77 68 65 6e 20 74 68 69 73   ┆nts are mainly for use when this┆
0x00a0…00c0 20 69 73 20 63 61 6c 6c 65 64 0a 20 66 72 6f 6d 20 74 68 65 20 69 6e 74 65 72 6e 61 6c 73 20 6f   ┆ is called  from the internals o┆
0x00c0…00e0 66 20 74 68 65 20 65 76 61 6c 75 61 74 6f 72 2e 0a 59 6f 75 20 6d 61 79 20 63 61 6c 6c 20 77 69   ┆f the evaluator. You may call wi┆
0x00e0…0100 74 68 20 6e 6f 20 61 72 67 73 2c 20 6f 72 20 79 6f 75 20 6d 61 79 0a 20 70 61 73 73 20 6e 69 6c   ┆th no args, or you may  pass nil┆
0x0100…0120 20 61 73 20 74 68 65 20 66 69 72 73 74 20 61 72 67 20 61 6e 64 20 61 6e 79 20 6f 74 68 65 72 20   ┆ as the first arg and any other ┆
0x0120…0140 61 72 67 73 20 79 6f 75 20 6c 69 6b 65 2e 0a 20 49 6e 20 74 68 61 74 20 63 61 73 65 2c 20 74 68   ┆args you like.  In that case, th┆
0x0140…0160 65 20 6c 69 73 74 20 6f 66 20 61 72 67 73 20 61 66 74 65 72 20 74 68 65 20 66 69 72 73 74 20 77   ┆e list of args after the first w┆
0x0160…0180 69 6c 6c 20 0a 20 62 65 20 70 72 69 6e 74 65 64 20 69 6e 74 6f 20 74 68 65 20 62 61 63 6b 74 72   ┆ill   be printed into the backtr┆
0x0180…01a0 61 63 65 20 62 75 66 66 65 72 2e 22 20 28 62 79 74 65 2d 63 6f 64 65 20 22 d1 d2 21 88 c3 d3 20   ┆ace buffer." (byte-code "  !    ┆
0x01a0…01c0 c3 c3 d4 d5 21 70 c3 c3 1e 08 1e 07 1e 06 1d 1c 1a 19 18 d6 8e 8a d7 8b 29 29 88 0e 07 89 16 10   ┆    !p                  ))      ┆
0x01c0…01e0 88 08 2e 08 87 22 20 5b 64 65 62 75 67 67 65 72 2d 76 61 6c 75 65 20 64 65 62 75 67 67 65 72 2d   ┆  .  " [debugger-value debugger-┆
0x01e0…0200 6d 61 74 63 68 2d 64 61 74 61 20 64 65 62 75 67 2d 6f 6e 2d 65 72 72 6f 72 20 6e 69 6c 20 64 65   ┆match-data debug-on-error nil de┆
0x0200…0220 62 75 67 2d 6f 6e 2d 71 75 69 74 20 64 65 62 75 67 67 65 72 2d 62 75 66 66 65 72 20 64 65 62 75   ┆bug-on-quit debugger-buffer debu┆
0x0220…0240 67 67 65 72 2d 6f 6c 64 2d 62 75 66 66 65 72 20 64 65 62 75 67 67 65 72 2d 73 74 65 70 2d 61 66   ┆gger-old-buffer debugger-step-af┆
0x0240…0260 74 65 72 2d 65 78 69 74 20 63 75 72 73 6f 72 2d 69 6e 2d 65 63 68 6f 2d 61 72 65 61 20 73 74 61   ┆ter-exit cursor-in-echo-area sta┆
0x0260…0280 6e 64 61 72 64 2d 6f 75 74 70 75 74 20 70 72 69 6e 74 2d 65 73 63 61 70 65 2d 6e 65 77 6c 69 6e   ┆ndard-output print-escape-newlin┆
0x0280…02a0 65 73 20 74 20 70 72 69 6e 74 2d 6c 65 6e 67 74 68 20 64 65 62 75 67 67 65 72 2d 61 72 67 73 20   ┆es t print-length debugger-args ┆
0x02a0…02c0 69 6e 68 69 62 69 74 2d 74 72 61 63 65 20 62 75 66 66 65 72 2d 72 65 61 64 2d 6f 6e 6c 79 20 64   ┆inhibit-trace buffer-read-only d┆
0x02c0…02e0 65 62 75 67 2d 6f 6e 2d 6e 65 78 74 2d 63 61 6c 6c 20 6d 65 73 73 61 67 65 20 22 45 6e 74 65 72   ┆ebug-on-next-call message "Enter┆
0x02e0…0300 69 6e 67 20 64 65 62 75 67 67 65 72 2e 2e 2e 22 20 6d 61 74 63 68 2d 64 61 74 61 20 67 65 6e 65   ┆ing debugger..." match-data gene┆
0x0300…0320 72 61 74 65 2d 6e 65 77 2d 62 75 66 66 65 72 20 22 2a 42 61 63 6b 74 72 61 63 65 2a 22 20 28 28   ┆rate-new-buffer "*Backtrace*" ((┆
0x0320…0340 62 79 74 65 2d 63 6f 64 65 20 22 c1 08 21 88 c2 c3 8d 87 22 20 5b 64 65 62 75 67 67 65 72 2d 62   ┆byte-code "  !     " [debugger-b┆
0x0340…0360 75 66 66 65 72 20 6b 69 6c 6c 2d 62 75 66 66 65 72 20 66 6f 6f 20 28 62 79 74 65 2d 63 6f 64 65   ┆uffer kill-buffer foo (byte-code┆
0x0360…0380 20 22 09 18 08 85 20 00 08 40 85 17 00 c3 08 40 21 3f 85 17 00 c4 c5 c2 5c 22 88 08 41 89 10 88   ┆ "       @     @!?      \"  A   ┆
0x0380…03a0 82 02 00 88 c6 09 21 29 87 22 20 5b 64 20 64 65 62 75 67 67 65 72 2d 6d 61 74 63 68 2d 64 61 74   ┆      !) " [d debugger-match-dat┆
0x03a0…03c0 61 20 6e 69 6c 20 6d 61 72 6b 65 72 2d 62 75 66 66 65 72 20 74 68 72 6f 77 20 66 6f 6f 20 73 74   ┆a nil marker-buffer throw foo st┆
0x03c0…03e0 6f 72 65 2d 6d 61 74 63 68 2d 64 61 74 61 5d 20 35 29 5d 20 33 29 29 20 28 28 62 79 74 65 2d 63   ┆ore-match-data] 5)] 3)) ((byte-c┆
0x03e0…0400 6f 64 65 20 22 ca 08 21 88 cb 20 88 70 c3 cc 1c 1a 19 cd 20 2b 88 65 62 88 ce 20 88 cf 60 d0 d1   ┆ode "  !    p       + eb     `  ┆
0x0400…0420 21 88 d2 d3 21 88 60 5c 22 88 0d 40 d4 3e 83 46 00 d5 63 88 0d 40 d6 3d 85 43 00 d7 d8 c3 5c 22   ┆!   ! `\"  @ > F  c  @ = C    \"┆
0x0420…0440 88 d9 d3 21 88 da 63 88 db 20 82 a1 00 0d 40 dc 3d 83 6c 00 dd 63 88 d3 0d 38 89 16 06 88 de 0e   ┆   !  c       @ = l  c   8      ┆
0x0440…0460 06 70 5c 22 88 df 63 88 d9 d3 21 88 e0 63 88 db 20 82 a1 00 0d 40 e1 3d 83 82 00 e2 63 88 de d3   ┆ p\"  c   !  c       @ =    c   ┆
0x0460…0480 0d 38 70 5c 22 88 df 63 82 a1 00 0d 40 c3 3d 83 8e 00 e3 63 82 a1 00 de 0d 40 c8 3d 83 9b 00 0d   ┆ 8p\"  c    @ =    c     @ =    ┆
0x0480…04a0 41 82 9c 00 0d 70 5c 22 88 df 63 88 e4 e5 21 88 c3 c8 c3 1e 09 19 1e 07 e4 e5 21 88 e6 20 2b 87   ┆A    p\"  c   !           !   + ┆
0x04a0…04c0 22 20 5b 64 65 62 75 67 67 65 72 2d 62 75 66 66 65 72 20 73 74 61 6e 64 61 72 64 2d 6f 75 74 70   ┆" [debugger-buffer standard-outp┆
0x04c0…04e0 75 74 20 70 72 69 6e 74 2d 65 73 63 61 70 65 2d 6e 65 77 6c 69 6e 65 73 20 74 20 70 72 69 6e 74   ┆ut print-escape-newlines t print┆
0x04e0…0500 2d 6c 65 6e 67 74 68 20 64 65 62 75 67 67 65 72 2d 61 72 67 73 20 64 65 62 75 67 67 65 72 2d 76   ┆-length debugger-args debugger-v┆
0x0500…0520 61 6c 75 65 20 69 6e 68 69 62 69 74 2d 74 72 61 63 65 20 6e 69 6c 20 62 75 66 66 65 72 2d 72 65   ┆alue inhibit-trace nil buffer-re┆
0x0520…0540 61 64 2d 6f 6e 6c 79 20 70 6f 70 2d 74 6f 2d 62 75 66 66 65 72 20 65 72 61 73 65 2d 62 75 66 66   ┆ad-only pop-to-buffer erase-buff┆
0x0540…0560 65 72 20 35 30 20 62 61 63 6b 74 72 61 63 65 20 64 65 62 75 67 67 65 72 2d 6d 6f 64 65 20 64 65   ┆er 50 backtrace debugger-mode de┆
0x0560…0580 6c 65 74 65 2d 72 65 67 69 6f 6e 20 66 6f 72 77 61 72 64 2d 73 65 78 70 20 38 20 66 6f 72 77 61   ┆lete-region forward-sexp 8 forwa┆
0x0580…05a0 72 64 2d 6c 69 6e 65 20 31 20 28 6c 61 6d 62 64 61 20 64 65 62 75 67 29 20 22 45 6e 74 65 72 69   ┆rd-line 1 (lambda debug) "Enteri┆
0x05a0…05c0 6e 67 3a 0a 22 20 64 65 62 75 67 20 62 61 63 6b 74 72 61 63 65 2d 64 65 62 75 67 20 34 20 64 65   ┆ng: " debug backtrace-debug 4 de┆
0x05c0…05e0 6c 65 74 65 2d 63 68 61 72 20 34 32 20 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 20 65   ┆lete-char 42 beginning-of-line e┆
0x05e0…0600 78 69 74 20 22 52 65 74 75 72 6e 20 76 61 6c 75 65 3a 20 22 20 70 72 69 6e 31 20 31 30 20 33 32   ┆xit "Return value: " prin1 10 32┆
0x0600…0620 20 65 72 72 6f 72 20 22 53 69 67 6e 61 6c 6c 69 6e 67 3a 20 22 20 22 42 65 67 69 6e 6e 69 6e 67   ┆ error "Signalling: " "Beginning┆
0x0620…0640 20 65 76 61 6c 75 61 74 69 6f 6e 20 6f 66 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 66 6f 72   ┆ evaluation of function call for┆
0x0640…0660 6d 3a 0a 22 20 6d 65 73 73 61 67 65 20 22 22 20 72 65 63 75 72 73 69 76 65 2d 65 64 69 74 5d 20   ┆m: " message "" recursive-edit] ┆
0x0660…0680 31 39 29 29 5d 20 31 31 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 62 75 67 67 65 72 2d 73 74 65 70   ┆19))] 11))  (defun debugger-step┆
0x0680…06a0 2d 74 68 72 6f 75 67 68 20 6e 69 6c 20 22 5c 0a 50 72 6f 63 65 65 64 2c 20 73 74 65 70 70 69 6e   ┆-through nil "\ Proceed, steppin┆
0x06a0…06c0 67 20 74 68 72 6f 75 67 68 20 73 75 62 65 78 70 72 65 73 73 69 6f 6e 73 20 6f 66 20 74 68 69 73   ┆g through subexpressions of this┆
0x06c0…06e0 20 65 78 70 72 65 73 73 69 6f 6e 2e 0a 45 6e 74 65 72 20 61 6e 6f 74 68 65 72 20 64 65 62 75 67   ┆ expression. Enter another debug┆
0x06e0…0700 67 65 72 20 6f 6e 20 6e 65 78 74 20 65 6e 74 72 79 20 74 6f 20 65 76 61 6c 2c 20 61 70 70 6c 79   ┆ger on next entry to eval, apply┆
0x0700…0720 20 6f 72 20 66 75 6e 63 61 6c 6c 2e 22 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 20 28 62 79 74   ┆ or funcall." (interactive) (byt┆
0x0720…0740 65 2d 63 6f 64 65 20 22 c2 88 c1 89 10 88 c3 c4 21 88 c5 20 87 22 20 5b 64 65 62 75 67 67 65 72   ┆e-code "        !    " [debugger┆
0x0740…0760 2d 73 74 65 70 2d 61 66 74 65 72 2d 65 78 69 74 20 74 20 6e 69 6c 20 6d 65 73 73 61 67 65 20 22   ┆-step-after-exit t nil message "┆
0x0760…0780 50 72 6f 63 65 64 69 6e 67 2c 20 77 69 6c 6c 20 64 65 62 75 67 20 6f 6e 20 6e 65 78 74 20 65 76   ┆Proceding, will debug on next ev┆
0x0780…07a0 61 6c 20 6f 72 20 63 61 6c 6c 2e 22 20 65 78 69 74 2d 72 65 63 75 72 73 69 76 65 2d 65 64 69 74   ┆al or call." exit-recursive-edit┆
0x07a0…07c0 5d 20 33 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 62 75 67 67 65 72 2d 63 6f 6e 74 69 6e 75 65 20   ┆] 3))  (defun debugger-continue ┆
0x07c0…07e0 6e 69 6c 20 22 5c 0a 43 6f 6e 74 69 6e 75 65 2c 20 65 76 61 6c 75 61 74 69 6e 67 20 74 68 69 73   ┆nil "\ Continue, evaluating this┆
0x07e0…0800 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 74 68 6f 75 74 20 73 74 6f 70 70 69 6e 67 2e 22 20 28   ┆ expression without stopping." (┆
0x0800…0820 69 6e 74 65 72 61 63 74 69 76 65 29 20 28 62 79 74 65 2d 63 6f 64 65 20 22 c0 88 c1 c2 21 88 c3   ┆interactive) (byte-code "    !  ┆
0x0820…0840 20 87 22 20 5b 6e 69 6c 20 6d 65 73 73 61 67 65 20 22 43 6f 6e 74 69 6e 75 69 6e 67 2e 22 20 65   ┆  " [nil message "Continuing." e┆
0x0840…0860 78 69 74 2d 72 65 63 75 72 73 69 76 65 2d 65 64 69 74 5d 20 33 29 29 0a 0a 28 64 65 66 75 6e 20   ┆xit-recursive-edit] 3))  (defun ┆
0x0860…0880 64 65 62 75 67 67 65 72 2d 72 65 74 75 72 6e 2d 76 61 6c 75 65 20 28 76 61 6c 29 20 22 5c 0a 43   ┆debugger-return-value (val) "\ C┆
0x0880…08a0 6f 6e 74 69 6e 75 65 2c 20 73 70 65 63 69 66 79 69 6e 67 20 76 61 6c 75 65 20 74 6f 20 72 65 74   ┆ontinue, specifying value to ret┆
0x08a0…08c0 75 72 6e 2e 0a 54 68 69 73 20 69 73 20 6f 6e 6c 79 20 75 73 65 66 75 6c 20 77 68 65 6e 20 74 68   ┆urn. This is only useful when th┆
0x08c0…08e0 65 20 76 61 6c 75 65 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 74 68 65 20 64 65 62 75 67 67   ┆e value returned from the debugg┆
0x08e0…0900 65 72 0a 77 69 6c 6c 20 62 65 20 75 73 65 64 2c 20 73 75 63 68 20 61 73 20 69 6e 20 61 20 64 65   ┆er will be used, such as in a de┆
0x0900…0920 62 75 67 20 6f 6e 20 65 78 69 74 20 66 72 6f 6d 20 61 20 66 72 61 6d 65 2e 22 20 28 69 6e 74 65   ┆bug on exit from a frame." (inte┆
0x0920…0940 72 61 63 74 69 76 65 20 22 58 52 65 74 75 72 6e 20 76 61 6c 75 65 20 28 65 76 61 6c 75 61 74 65   ┆ractive "XReturn value (evaluate┆
0x0940…0960 64 29 3a 20 22 29 20 28 62 79 74 65 2d 63 6f 64 65 20 22 c3 88 09 89 10 88 c4 c5 c2 5c 22 88 c6   ┆d): ") (byte-code "         \"  ┆
0x0960…0980 08 21 88 c7 20 87 22 20 5b 64 65 62 75 67 67 65 72 2d 76 61 6c 75 65 20 76 61 6c 20 74 20 6e 69   ┆ !    " [debugger-value val t ni┆
0x0980…09a0 6c 20 70 72 69 6e 63 20 22 52 65 74 75 72 6e 69 6e 67 20 22 20 70 72 69 6e 31 20 65 78 69 74 2d   ┆l princ "Returning " prin1 exit-┆
0x09a0…09c0 72 65 63 75 72 73 69 76 65 2d 65 64 69 74 5d 20 34 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 62 75   ┆recursive-edit] 4))  (defun debu┆
0x09c0…09e0 67 67 65 72 2d 66 72 61 6d 65 2d 6e 75 6d 62 65 72 20 6e 69 6c 20 22 5c 0a 52 65 74 75 72 6e 20   ┆gger-frame-number nil "\ Return ┆
0x09e0…0a00 6e 75 6d 62 65 72 20 6f 66 20 66 72 61 6d 65 73 20 69 6e 20 62 61 63 6b 74 72 61 63 65 20 62 65   ┆number of frames in backtrace be┆
0x0a00…0a20 66 6f 72 65 20 74 68 65 20 6f 6e 65 20 70 6f 69 6e 74 20 70 6f 69 6e 74 73 20 61 74 2e 22 20 28   ┆fore the one point points at." (┆
0x0a20…0a40 62 79 74 65 2d 63 6f 64 65 20 22 8a c2 20 88 60 c3 19 18 65 62 88 c4 c5 60 60 c6 5c 5c 5c 22 c7   ┆byte-code "    `   eb   `` \\\" ┆
0x0a40…0a60 5c 22 86 20 00 c4 c5 60 60 c6 5c 5c 5c 22 c8 5c 22 85 2a 00 c9 ca 21 88 cb cc 21 88 cd cc 21 88   ┆\"     `` \\\" \" *   !   !   ! ┆
0x0a60…0a80 ce cf 21 88 67 d0 55 83 3f 00 cb cc 21 82 42 00 cb cf 21 88 cd cc 21 88 60 08 58 85 55 00 09 54   ┆  ! g U ?   ! B   !   ! ` X U  T┆
0x0a80…0aa0 89 11 88 82 2f 00 88 09 2a 29 87 22 20 5b 6f 70 6f 69 6e 74 20 63 6f 75 6e 74 20 62 65 67 69 6e   ┆    /   *) " [opoint count begin┆
0x0aa0…0ac0 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 20 30 20 65 71 75 61 6c 20 62 75 66 66 65 72 2d 73 75 62 73   ┆ning-of-line 0 equal buffer-subs┆
0x0ac0…0ae0 74 72 69 6e 67 20 36 20 22 53 69 67 6e 61 6c 22 20 22 52 65 74 75 72 6e 22 20 73 65 61 72 63 68   ┆tring 6 "Signal" "Return" search┆
0x0ae0…0b00 2d 66 6f 72 77 61 72 64 20 22 3a 22 20 66 6f 72 77 61 72 64 2d 73 65 78 70 20 31 20 66 6f 72 77   ┆-forward ":" forward-sexp 1 forw┆
0x0b00…0b20 61 72 64 2d 6c 69 6e 65 20 66 6f 72 77 61 72 64 2d 63 68 61 72 20 32 20 34 30 5d 20 31 35 29 29   ┆ard-line forward-char 2 40] 15))┆
0x0b20…0b40 0a 0a 28 64 65 66 63 6f 6e 73 74 20 64 65 62 75 67 67 65 72 2d 66 72 61 6d 65 2d 6f 66 66 73 65   ┆  (defconst debugger-frame-offse┆
0x0b40…0b60 74 20 38 20 22 5c 0a 22 29 0a 0a 28 64 65 66 75 6e 20 64 65 62 75 67 67 65 72 2d 66 72 61 6d 65   ┆t 8 "\ ")  (defun debugger-frame┆
0x0b60…0b80 20 6e 69 6c 20 22 5c 0a 52 65 71 75 65 73 74 20 65 6e 74 72 79 20 74 6f 20 64 65 62 75 67 67 65   ┆ nil "\ Request entry to debugge┆
0x0b80…0ba0 72 20 77 68 65 6e 20 74 68 69 73 20 66 72 61 6d 65 20 65 78 69 74 73 2e 0a 41 70 70 6c 69 65 73   ┆r when this frame exits. Applies┆
0x0ba0…0bc0 20 74 6f 20 74 68 65 20 66 72 61 6d 65 20 77 68 6f 73 65 20 6c 69 6e 65 20 70 6f 69 6e 74 20 69   ┆ to the frame whose line point i┆
0x0bc0…0be0 73 20 6f 6e 20 69 6e 20 74 68 65 20 62 61 63 6b 74 72 61 63 65 2e 22 20 28 69 6e 74 65 72 61 63   ┆s on in the backtrace." (interac┆
0x0be0…0c00 74 69 76 65 29 20 28 62 79 74 65 2d 63 6f 64 65 20 22 c4 88 c5 20 88 c6 20 18 c7 08 09 5c 5c c2   ┆tive) (byte-code "           \\ ┆
0x0c00…0c20 5c 22 29 88 67 c8 55 85 1f 00 c4 1b c9 ca 21 88 cb 63 29 88 c5 20 87 22 20 5b 6c 65 76 65 6c 20   ┆\") g U       !  c)    " [level ┆
0x0c20…0c40 64 65 62 75 67 67 65 72 2d 66 72 61 6d 65 2d 6f 66 66 73 65 74 20 74 20 62 75 66 66 65 72 2d 72   ┆debugger-frame-offset t buffer-r┆
0x0c40…0c60 65 61 64 2d 6f 6e 6c 79 20 6e 69 6c 20 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 20 64   ┆ead-only nil beginning-of-line d┆
0x0c60…0c80 65 62 75 67 67 65 72 2d 66 72 61 6d 65 2d 6e 75 6d 62 65 72 20 62 61 63 6b 74 72 61 63 65 2d 64   ┆ebugger-frame-number backtrace-d┆
0x0c80…0ca0 65 62 75 67 20 33 32 20 64 65 6c 65 74 65 2d 63 68 61 72 20 31 20 34 32 5d 20 36 29 29 0a 0a 28   ┆ebug 32 delete-char 1 42] 6))  (┆
0x0ca0…0cc0 64 65 66 75 6e 20 64 65 62 75 67 67 65 72 2d 66 72 61 6d 65 2d 63 6c 65 61 72 20 6e 69 6c 20 22   ┆defun debugger-frame-clear nil "┆
0x0cc0…0ce0 5c 0a 44 6f 20 6e 6f 74 20 65 6e 74 65 72 20 74 6f 20 64 65 62 75 67 67 65 72 20 77 68 65 6e 20   ┆\ Do not enter to debugger when ┆
0x0ce0…0d00 74 68 69 73 20 66 72 61 6d 65 20 65 78 69 74 73 2e 0a 41 70 70 6c 69 65 73 20 74 6f 20 74 68 65   ┆this frame exits. Applies to the┆
0x0d00…0d20 20 66 72 61 6d 65 20 77 68 6f 73 65 20 6c 69 6e 65 20 70 6f 69 6e 74 20 69 73 20 6f 6e 20 69 6e   ┆ frame whose line point is on in┆
0x0d20…0d40 20 74 68 65 20 62 61 63 6b 74 72 61 63 65 2e 22 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 20 28   ┆ the backtrace." (interactive) (┆
0x0d40…0d60 62 79 74 65 2d 63 6f 64 65 20 22 c2 88 c4 20 88 c5 20 18 c6 08 09 5c 5c c2 5c 22 29 88 67 c7 55   ┆byte-code "           \\ \") g U┆
0x0d60…0d80 85 1f 00 c2 1b c8 c9 21 88 ca 63 29 88 c4 20 87 22 20 5b 6c 65 76 65 6c 20 64 65 62 75 67 67 65   ┆       !  c)    " [level debugge┆
0x0d80…0da0 72 2d 66 72 61 6d 65 2d 6f 66 66 73 65 74 20 6e 69 6c 20 62 75 66 66 65 72 2d 72 65 61 64 2d 6f   ┆r-frame-offset nil buffer-read-o┆
0x0da0…0dc0 6e 6c 79 20 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 20 64 65 62 75 67 67 65 72 2d 66   ┆nly beginning-of-line debugger-f┆
0x0dc0…0de0 72 61 6d 65 2d 6e 75 6d 62 65 72 20 62 61 63 6b 74 72 61 63 65 2d 64 65 62 75 67 20 34 32 20 64   ┆rame-number backtrace-debug 42 d┆
0x0de0…0e00 65 6c 65 74 65 2d 63 68 61 72 20 31 20 33 32 5d 20 36 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 62   ┆elete-char 1 32] 6))  (defun deb┆
0x0e00…0e20 75 67 67 65 72 2d 65 76 61 6c 2d 65 78 70 72 65 73 73 69 6f 6e 20 28 65 78 70 29 20 28 69 6e 74   ┆ugger-eval-expression (exp) (int┆
0x0e20…0e40 65 72 61 63 74 69 76 65 20 22 78 45 76 61 6c 3a 20 22 29 20 28 62 79 74 65 2d 63 6f 64 65 20 22   ┆eractive "xEval: ") (byte-code "┆
0x0e40…0e60 c2 88 8a c3 08 21 3f 85 0d 00 70 89 10 88 08 71 88 c4 09 21 29 87 22 20 5b 64 65 62 75 67 67 65   ┆     !?   p    q   !) " [debugge┆
0x0e60…0e80 72 2d 6f 6c 64 2d 62 75 66 66 65 72 20 65 78 70 20 6e 69 6c 20 62 75 66 66 65 72 2d 6e 61 6d 65   ┆r-old-buffer exp nil buffer-name┆
0x0e80…0ea0 20 65 76 61 6c 2d 65 78 70 72 65 73 73 69 6f 6e 5d 20 33 29 29 0a 0a 28 64 65 66 76 61 72 20 64   ┆ eval-expression] 3))  (defvar d┆
0x0ea0…0ec0 65 62 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 20 6e 69 6c 29 0a 0a 28 69 66 20 64 65 62 75 67   ┆ebugger-mode-map nil)  (if debug┆
0x0ec0…0ee0 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 20 6e 69 6c 20 28 6c 65 74 20 28 28 6c 6f 6f 70 20 33 32 29   ┆ger-mode-map nil (let ((loop 32)┆
0x0ee0…0f00 29 20 28 73 65 74 71 20 64 65 62 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 20 28 6d 61 6b 65 2d   ┆) (setq debugger-mode-map (make-┆
0x0f00…0f20 6b 65 79 6d 61 70 29 29 20 28 73 75 70 70 72 65 73 73 2d 6b 65 79 6d 61 70 20 64 65 62 75 67 67   ┆keymap)) (suppress-keymap debugg┆
0x0f20…0f40 65 72 2d 6d 6f 64 65 2d 6d 61 70 29 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 64 65 62 75 67 67 65   ┆er-mode-map) (define-key debugge┆
0x0f40…0f60 72 2d 6d 6f 64 65 2d 6d 61 70 20 22 2d 22 20 28 71 75 6f 74 65 20 6e 65 67 61 74 69 76 65 2d 61   ┆r-mode-map "-" (quote negative-a┆
0x0f60…0f80 72 67 75 6d 65 6e 74 29 29 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 64 65 62 75 67 67 65 72 2d 6d   ┆rgument)) (define-key debugger-m┆
0x0f80…0fa0 6f 64 65 2d 6d 61 70 20 22 62 22 20 28 71 75 6f 74 65 20 64 65 62 75 67 67 65 72 2d 66 72 61 6d   ┆ode-map "b" (quote debugger-fram┆
0x0fa0…0fc0 65 29 29 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 64 65 62 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61   ┆e)) (define-key debugger-mode-ma┆
0x0fc0…0fe0 70 20 22 63 22 20 28 71 75 6f 74 65 20 64 65 62 75 67 67 65 72 2d 63 6f 6e 74 69 6e 75 65 29 29   ┆p "c" (quote debugger-continue))┆
0x0fe0…1000 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 64 65 62 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 20 22   ┆ (define-key debugger-mode-map "┆
0x1000…1020 72 22 20 28 71 75 6f 74 65 20 64 65 62 75 67 67 65 72 2d 72 65 74 75 72 6e 2d 76 61 6c 75 65 29   ┆r" (quote debugger-return-value)┆
0x1020…1040 29 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 64 65 62 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 20   ┆) (define-key debugger-mode-map ┆
0x1040…1060 22 75 22 20 28 71 75 6f 74 65 20 64 65 62 75 67 67 65 72 2d 66 72 61 6d 65 2d 63 6c 65 61 72 29   ┆"u" (quote debugger-frame-clear)┆
0x1060…1080 29 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 64 65 62 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 20   ┆) (define-key debugger-mode-map ┆
0x1080…10a0 22 64 22 20 28 71 75 6f 74 65 20 64 65 62 75 67 67 65 72 2d 73 74 65 70 2d 74 68 72 6f 75 67 68   ┆"d" (quote debugger-step-through┆
0x10a0…10c0 29 29 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 64 65 62 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61 70   ┆)) (define-key debugger-mode-map┆
0x10c0…10e0 20 22 68 22 20 28 71 75 6f 74 65 20 64 65 73 63 72 69 62 65 2d 6d 6f 64 65 29 29 20 28 64 65 66   ┆ "h" (quote describe-mode)) (def┆
0x10e0…1100 69 6e 65 2d 6b 65 79 20 64 65 62 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 20 22 71 22 20 28 71   ┆ine-key debugger-mode-map "q" (q┆
0x1100…1120 75 6f 74 65 20 74 6f 70 2d 6c 65 76 65 6c 29 29 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 64 65 62   ┆uote top-level)) (define-key deb┆
0x1120…1140 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 20 22 65 22 20 28 71 75 6f 74 65 20 64 65 62 75 67 67   ┆ugger-mode-map "e" (quote debugg┆
0x1140…1160 65 72 2d 65 76 61 6c 2d 65 78 70 72 65 73 73 69 6f 6e 29 29 20 28 64 65 66 69 6e 65 2d 6b 65 79   ┆er-eval-expression)) (define-key┆
0x1160…1180 20 64 65 62 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 20 22 20 22 20 28 71 75 6f 74 65 20 6e 65   ┆ debugger-mode-map " " (quote ne┆
0x1180…11a0 78 74 2d 6c 69 6e 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 62 75 67 67 65 72 2d 6d 6f 64   ┆xt-line))))  (defun debugger-mod┆
0x11a0…11c0 65 20 6e 69 6c 20 22 5c 0a 4d 6f 64 65 20 66 6f 72 20 62 61 63 6b 74 72 61 63 65 20 62 75 66 66   ┆e nil "\ Mode for backtrace buff┆
0x11c0…11e0 65 72 73 2c 20 73 65 6c 65 63 74 65 64 20 69 6e 20 64 65 62 75 67 67 65 72 2e 0a 5c 5c 7b 64 65   ┆ers, selected in debugger. \\{de┆
0x11e0…1200 62 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 7d 0a 46 6f 72 20 74 68 65 20 72 20 63 6f 6d 6d 61   ┆bugger-mode-map} For the r comma┆
0x1200…1220 6e 64 2c 20 77 68 65 6e 20 69 6e 20 64 65 62 75 67 67 65 72 20 64 75 65 20 74 6f 20 66 72 61 6d   ┆nd, when in debugger due to fram┆
0x1220…1240 65 20 62 65 69 6e 67 20 65 78 69 74 65 64 2c 0a 20 20 20 20 74 68 65 20 76 61 6c 75 65 20 73 70   ┆e being exited,     the value sp┆
0x1240…1260 65 63 69 66 69 65 64 20 68 65 72 65 20 77 69 6c 6c 20 62 65 20 75 73 65 64 20 61 73 20 74 68 65   ┆ecified here will be used as the┆
0x1260…1280 20 76 61 6c 75 65 20 6f 66 20 74 68 61 74 20 66 72 61 6d 65 2e 0a 0a 4e 6f 74 65 20 6c 69 6e 65   ┆ value of that frame.  Note line┆
0x1280…12a0 73 20 73 74 61 72 74 69 6e 67 20 77 69 74 68 20 2a 20 61 72 65 20 66 72 61 6d 65 73 20 74 68 61   ┆s starting with * are frames tha┆
0x12a0…12c0 74 20 77 69 6c 6c 0a 20 65 6e 74 65 72 20 64 65 62 75 67 67 65 72 20 77 68 65 6e 20 65 78 69 74   ┆t will  enter debugger when exit┆
0x12c0…12e0 65 64 2e 22 20 28 62 79 74 65 2d 63 6f 64 65 20 22 c6 20 88 c7 89 10 88 c8 89 11 88 c3 89 12 88   ┆ed." (byte-code "               ┆
0x12e0…1300 c9 0c 21 88 ca 0d 21 87 22 20 5b 6d 61 6a 6f 72 2d 6d 6f 64 65 20 6d 6f 64 65 2d 6e 61 6d 65 20   ┆  !   ! " [major-mode mode-name ┆
0x1300…1320 74 72 75 6e 63 61 74 65 2d 6c 69 6e 65 73 20 74 20 6c 69 73 70 2d 6d 6f 64 65 2d 73 79 6e 74 61   ┆truncate-lines t lisp-mode-synta┆
0x1320…1340 78 2d 74 61 62 6c 65 20 64 65 62 75 67 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 20 6b 69 6c 6c 2d 61   ┆x-table debugger-mode-map kill-a┆
0x1340…1360 6c 6c 2d 6c 6f 63 61 6c 2d 76 61 72 69 61 62 6c 65 73 20 64 65 62 75 67 67 65 72 2d 6d 6f 64 65   ┆ll-local-variables debugger-mode┆
0x1360…1380 20 22 44 65 62 75 67 67 65 72 22 20 73 65 74 2d 73 79 6e 74 61 78 2d 74 61 62 6c 65 20 75 73 65   ┆ "Debugger" set-syntax-table use┆
0x1380…13a0 2d 6c 6f 63 61 6c 2d 6d 61 70 5d 20 34 29 29 0a 0a 28 64 65 66 75 6e 20 64 65 62 75 67 2d 6f 6e   ┆-local-map] 4))  (defun debug-on┆
0x13a0…13c0 2d 65 6e 74 72 79 20 28 66 75 6e 63 74 69 6f 6e 29 20 22 5c 0a 52 65 71 75 65 73 74 20 46 55 4e   ┆-entry (function) "\ Request FUN┆
0x13c0…13e0 43 54 49 4f 4e 20 74 6f 20 69 6e 76 6f 6b 65 20 64 65 62 75 67 67 65 72 20 65 61 63 68 20 74 69   ┆CTION to invoke debugger each ti┆
0x13e0…1400 6d 65 20 69 74 20 69 73 20 63 61 6c 6c 65 64 2e 0a 49 66 20 74 68 65 20 75 73 65 72 20 63 6f 6e   ┆me it is called. If the user con┆
0x1400…1420 74 69 6e 75 65 73 2c 20 46 55 4e 43 54 49 4f 4e 27 73 20 65 78 65 63 75 74 69 6f 6e 20 70 72 6f   ┆tinues, FUNCTION's execution pro┆
0x1420…1440 63 65 65 64 73 2e 0a 57 6f 72 6b 73 20 62 79 20 6d 6f 64 69 66 79 69 6e 67 20 74 68 65 20 64 65   ┆ceeds. Works by modifying the de┆
0x1440…1460 66 69 6e 69 74 69 6f 6e 20 6f 66 20 46 55 4e 43 54 49 4f 4e 2c 0a 77 68 69 63 68 20 6d 75 73 74   ┆finition of FUNCTION, which must┆
0x1460…1480 20 62 65 20 77 72 69 74 74 65 6e 20 69 6e 20 4c 69 73 70 2c 20 6e 6f 74 20 70 72 65 64 65 66 69   ┆ be written in Lisp, not predefi┆
0x1480…14a0 6e 65 64 2e 0a 55 73 65 20 60 63 61 6e 63 65 6c 2d 64 65 62 75 67 2d 6f 6e 2d 65 6e 74 72 79 27   ┆ned. Use `cancel-debug-on-entry'┆
0x14a0…14c0 20 74 6f 20 63 61 6e 63 65 6c 20 74 68 65 20 65 66 66 65 63 74 20 6f 66 20 74 68 69 73 20 63 6f   ┆ to cancel the effect of this co┆
0x14c0…14e0 6d 6d 61 6e 64 2e 0a 52 65 64 65 66 69 6e 69 6e 67 20 46 55 4e 43 54 49 4f 4e 20 61 6c 73 6f 20   ┆mmand. Redefining FUNCTION also ┆
0x14e0…1500 64 6f 65 73 20 74 68 61 74 2e 22 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 22 61 44 65 62 75 67   ┆does that." (interactive "aDebug┆
0x1500…1520 20 6f 6e 20 65 6e 74 72 79 20 28 74 6f 20 66 75 6e 63 74 69 6f 6e 29 3a 20 22 29 20 28 62 79 74   ┆ on entry (to function): ") (byt┆
0x1520…1540 65 2d 63 6f 64 65 20 22 c3 88 09 4b 18 08 40 c4 3d 83 19 00 09 c4 c5 09 08 41 c2 23 42 4d 82 20   ┆e-code "   K  @ =        A #BM  ┆
0x1540…1560 00 09 c5 09 08 c2 23 4d 29 88 09 87 22 20 5b 64 65 66 6e 20 66 75 6e 63 74 69 6f 6e 20 74 20 6e   ┆      #M)   " [defn function t n┆
0x1560…1580 69 6c 20 6d 61 63 72 6f 20 64 65 62 75 67 2d 6f 6e 2d 65 6e 74 72 79 2d 31 5d 20 36 29 29 0a 0a   ┆il macro debug-on-entry-1] 6))  ┆
0x1580…15a0 28 64 65 66 75 6e 20 63 61 6e 63 65 6c 2d 64 65 62 75 67 2d 6f 6e 2d 65 6e 74 72 79 20 28 66 75   ┆(defun cancel-debug-on-entry (fu┆
0x15a0…15c0 6e 63 74 69 6f 6e 29 20 22 5c 0a 55 6e 64 6f 65 73 20 65 66 66 65 63 74 20 6f 66 20 64 65 62 75   ┆nction) "\ Undoes effect of debu┆
0x15c0…15e0 67 2d 6f 6e 2d 65 6e 74 72 79 20 6f 6e 20 46 55 4e 43 54 49 4f 4e 2e 22 20 28 69 6e 74 65 72 61   ┆g-on-entry on FUNCTION." (intera┆
0x15e0…1600 63 74 69 76 65 20 22 61 43 61 6e 63 65 6c 20 64 65 62 75 67 20 6f 6e 20 65 6e 74 72 79 20 28 74   ┆ctive "aCancel debug on entry (t┆
0x1600…1620 6f 20 66 75 6e 63 74 69 6f 6e 29 3a 20 22 29 20 28 62 79 74 65 2d 63 6f 64 65 20 22 c2 88 09 4b   ┆o function): ") (byte-code "   K┆
0x1620…1640 18 08 40 c3 3d 83 1a 00 09 c4 c3 c5 09 08 41 5c 22 c2 23 4d 82 21 00 09 c5 09 08 c2 23 4d 29 88   ┆  @ =         A\" #M !      #M) ┆
0x1640…1660 09 87 22 20 5b 64 65 66 6e 20 66 75 6e 63 74 69 6f 6e 20 6e 69 6c 20 6d 61 63 72 6f 20 63 6f 6e   ┆  " [defn function nil macro con┆
0x1660…1680 73 20 64 65 62 75 67 2d 6f 6e 2d 65 6e 74 72 79 2d 31 5d 20 37 29 29 0a 0a 28 64 65 66 75 6e 20   ┆s debug-on-entry-1] 7))  (defun ┆
0x1680…16a0 64 65 62 75 67 2d 6f 6e 2d 65 6e 74 72 79 2d 31 20 28 66 75 6e 63 74 69 6f 6e 20 64 65 66 6e 20   ┆debug-on-entry-1 (function defn ┆
0x16a0…16c0 66 6c 61 67 29 20 28 62 79 74 65 2d 63 6f 64 65 20 22 08 40 c6 3d 86 0b 00 c7 c8 09 5c 22 88 c5   ┆flag) (byte-code " @ =      \"  ┆
0x16c0…16e0 c5 1b 1a c9 ca 08 5c 22 40 3b 83 2d 00 c9 cb 08 5c 22 12 08 40 08 41 40 08 41 41 40 45 89 13 82   ┆      \"@; -    \"  @ A@ AA@E   ┆
0x16e0…1700 3a 00 c9 ca 08 5c 22 12 08 40 08 41 40 44 89 13 88 0c cc 0a 40 cd 5c 22 3d 83 49 00 c5 82 5b 00   ┆:    \"  @ A@D      @ \"= I   [ ┆
0x1700…1720 0c 83 56 00 ce 0b cf 0a 42 5c 22 82 5b 00 ce 0b 0a 41 5c 22 2a 87 22 20 5b 64 65 66 6e 20 66 75   ┆  V     B\" [    A\"* " [defn fu┆
0x1720…1740 6e 63 74 69 6f 6e 20 74 61 69 6c 20 70 72 65 63 20 66 6c 61 67 20 6e 69 6c 20 6c 61 6d 62 64 61   ┆nction tail prec flag nil lambda┆
0x1740…1760 20 65 72 72 6f 72 20 22 25 73 20 6e 6f 74 20 75 73 65 72 2d 64 65 66 69 6e 65 64 20 4c 69 73 70   ┆ error "%s not user-defined Lisp┆
0x1760…1780 20 66 75 6e 63 74 69 6f 6e 2e 22 20 6e 74 68 63 64 72 20 32 20 33 20 65 71 75 61 6c 20 28 64 65   ┆ function." nthcdr 2 3 equal (de┆
0x1780…17a0 62 75 67 20 28 71 75 6f 74 65 20 64 65 62 75 67 29 29 20 6e 63 6f 6e 63 20 28 64 65 62 75 67 20   ┆bug (quote debug)) nconc (debug ┆
0x17a0…17b4 28 71 75 6f 74 65 20 64 65 62 75 67 29 29 5d 20 39 29 29 0a   ┆(quote debug))] 9)) ┆