comparison src/eval.c @ 359:8e84bee8ddd0 r21-1-9

Import from CVS: tag r21-1-9
author cvs
date Mon, 13 Aug 2007 10:57:55 +0200
parents 3b3709405255
children 972bbb6d6ca2
comparison
equal deleted inserted replaced
358:fed6e0f6a03a 359:8e84bee8ddd0
4820 if (printing_bindings) write_c_string (")\n", stream); 4820 if (printing_bindings) write_c_string (")\n", stream);
4821 } 4821 }
4822 4822
4823 DEFUN ("backtrace", Fbacktrace, 0, 2, "", /* 4823 DEFUN ("backtrace", Fbacktrace, 0, 2, "", /*
4824 Print a trace of Lisp function calls currently active. 4824 Print a trace of Lisp function calls currently active.
4825 Option arg STREAM specifies the output stream to send the backtrace to, 4825 Optional arg STREAM specifies the output stream to send the backtrace to,
4826 and defaults to the value of `standard-output'. Optional second arg 4826 and defaults to the value of `standard-output'. Optional second arg
4827 DETAILED means show places where currently active variable bindings, 4827 DETAILED means show places where currently active variable bindings,
4828 catches, condition-cases, and unwind-protects were made as well as 4828 catches, condition-cases, and unwind-protects were made as well as
4829 function calls. 4829 function calls.
4830 */ 4830 */
4863 for (;;) 4863 for (;;)
4864 { 4864 {
4865 if (!NILP (detailed) && catches && catches->backlist == backlist) 4865 if (!NILP (detailed) && catches && catches->backlist == backlist)
4866 { 4866 {
4867 int catchpdl = catches->pdlcount; 4867 int catchpdl = catches->pdlcount;
4868 if (specpdl[catchpdl].func == condition_case_unwind 4868 if (speccount > catchpdl
4869 && speccount > catchpdl) 4869 && specpdl[catchpdl].func == condition_case_unwind)
4870 /* This is a condition-case catchpoint */ 4870 /* This is a condition-case catchpoint */
4871 catchpdl = catchpdl + 1; 4871 catchpdl = catchpdl + 1;
4872 4872
4873 backtrace_specials (speccount, catchpdl, stream); 4873 backtrace_specials (speccount, catchpdl, stream);
4874 4874