# HG changeset patch # User Jerry James # Date 1400178325 21600 # Node ID acf1c26e3019f3e8171b591c5b9e120f87187012 # Parent d2c0ff38ad5cf62e35cfe32960c50e923b651bbb Bind print-circle when printing backtraces. See in xemacs-patches. diff -r d2c0ff38ad5c -r acf1c26e3019 src/ChangeLog --- a/src/ChangeLog Wed May 14 14:16:24 2014 -0600 +++ b/src/ChangeLog Thu May 15 12:25:25 2014 -0600 @@ -1,3 +1,9 @@ +2014-05-08 Jerry James + + * print.c (struct debug_bindings): Add print_circle field. + (debug_print_exit): Restore print_circle. + (debug_print_enter): Save print_circle binding and set it. + 2014-05-06 Jerry James * file-coding.c (encode_decode_coding_region): Signal an error if diff -r d2c0ff38ad5c -r acf1c26e3019 src/print.c --- a/src/print.c Wed May 14 14:16:24 2014 -0600 +++ b/src/print.c Thu May 15 12:25:25 2014 -0600 @@ -164,6 +164,7 @@ int print_depth; int print_readably; int print_unbuffered; + int print_circle; int in_debug_print; int gc_currently_forbidden; Lisp_Object Vprint_length; @@ -2847,6 +2848,7 @@ print_depth = bindings->print_depth; print_readably = bindings->print_readably; print_unbuffered = bindings->print_unbuffered; + print_circle = bindings->print_circle; in_debug_print = bindings->in_debug_print; gc_currently_forbidden = bindings->gc_currently_forbidden; Vprint_length = bindings->Vprint_length; @@ -2873,6 +2875,7 @@ bindings->print_depth = print_depth; bindings->print_readably = print_readably; bindings->print_unbuffered = print_unbuffered; + bindings->print_circle = print_circle; bindings->in_debug_print = in_debug_print; bindings->gc_currently_forbidden = gc_currently_forbidden; bindings->Vprint_length = Vprint_length; @@ -2885,6 +2888,7 @@ print_depth = 0; print_readably = debug_print_readably != -1 ? debug_print_readably : 0; print_unbuffered++; + print_circle = 1; in_debug_print = 1; gc_currently_forbidden = 1; if (debug_print_length > 0)