comparison src/eval.c @ 438:84b14dcb0985 r21-2-27

Import from CVS: tag r21-2-27
author cvs
date Mon, 13 Aug 2007 11:32:25 +0200
parents 080151679be2
children 8de8e3f6228a
comparison
equal deleted inserted replaced
437:e2a4e8b94b82 438:84b14dcb0985
4741 if (printing_bindings) write_c_string (")\n", stream); 4741 if (printing_bindings) write_c_string (")\n", stream);
4742 } 4742 }
4743 4743
4744 DEFUN ("backtrace", Fbacktrace, 0, 2, "", /* 4744 DEFUN ("backtrace", Fbacktrace, 0, 2, "", /*
4745 Print a trace of Lisp function calls currently active. 4745 Print a trace of Lisp function calls currently active.
4746 Option arg STREAM specifies the output stream to send the backtrace to, 4746 Optional arg STREAM specifies the output stream to send the backtrace to,
4747 and defaults to the value of `standard-output'. Optional second arg 4747 and defaults to the value of `standard-output'. Optional second arg
4748 DETAILED means show places where currently active variable bindings, 4748 DETAILED means show places where currently active variable bindings,
4749 catches, condition-cases, and unwind-protects were made as well as 4749 catches, condition-cases, and unwind-protects were made as well as
4750 function calls. 4750 function calls.
4751 */ 4751 */
4784 for (;;) 4784 for (;;)
4785 { 4785 {
4786 if (!NILP (detailed) && catches && catches->backlist == backlist) 4786 if (!NILP (detailed) && catches && catches->backlist == backlist)
4787 { 4787 {
4788 int catchpdl = catches->pdlcount; 4788 int catchpdl = catches->pdlcount;
4789 if (specpdl[catchpdl].func == condition_case_unwind 4789 if (speccount > catchpdl
4790 && speccount > catchpdl) 4790 && specpdl[catchpdl].func == condition_case_unwind)
4791 /* This is a condition-case catchpoint */ 4791 /* This is a condition-case catchpoint */
4792 catchpdl = catchpdl + 1; 4792 catchpdl = catchpdl + 1;
4793 4793
4794 backtrace_specials (speccount, catchpdl, stream); 4794 backtrace_specials (speccount, catchpdl, stream);
4795 4795