In guile 1.6.3 built on a recent i386 debian, I struck a couple of cases where memoized macros seem to induce segmentation violations during a backtrace print. The files foo.scm and bar.scm are two examples, each independent, to be run as guile --debug -s foo.scm guile --debug -s bar.scm Each results in a partial backtrace printout then a segmentation violation, whereas naturally I hoped for a full printout. foo.scm has an obviously incorrect "let", as revealled by running without --debug. Still, it'd be nice to get a backtrace to locate the problem. For what it's worth, gdb suggests perhaps unmemocopy has gone into an infinite or very long recursion (the call under the "loop" label), apparently overflowing the stack (the faulting insn being a pushl). bar.scm produces a correct macro expansion, I believe. (Uncommenting the pretty-print in the file shows what's being executed, or is supposed to be executed.) But the record-accessor call is requesting an incorrect field. Running without --debug shows that error. For what it's worth, gdb suggests scm_unmemocar has been reached with an "env" list of just one element, whereas SCM_IFRAME is 1, for which an env of two or more elements is apparently expected. (But all this is a mystery to me, so I wouldn't necessarily trust that analysis).