@c -*-texinfo-*-
@c This is part of the GNU Emacs Lisp Reference Manual.
-@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1998, 1999, 2005
-@c Free Software Foundation, Inc.
+@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1998, 1999, 2001, 2002, 2003,
+@c 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
@c See the file elisp.texi for copying conditions.
@setfilename ../info/debugging
@node Debugging, Read and Print, Advising Functions, Top
@node Debugger
@section The Lisp Debugger
-@cindex debugger
+@cindex debugger for Emacs Lisp
@cindex Lisp debugger
@cindex break
@node Syntax Errors
@section Debugging Invalid Lisp Syntax
+@cindex debugging invalid Lisp syntax
The Lisp reader reports invalid syntax, but cannot say where the real
problem is. For example, the error ``End of file during parsing'' in
if it goes to the place where that defun appears to end. If it does
not, there is a problem in that defun.
+@cindex unbalanced parentheses
+@cindex parenthesis mismatch, debugging
However, unmatched parentheses are the most common syntax errors in
Lisp, and we can give further advice for those cases. (In addition,
just moving point through the code with Show Paren mode enabled might
never return. If it ever does return, you get a run-time error.
@end defmac
+ Edebug also has a coverage testing feature (@pxref{Coverage
+Testing}). These features partly duplicate each other, and it would
+be cleaner to combine them.
+
@node Compilation Errors
@section Debugging Problems in Compilation
+@cindex debugging byte compilation problems
When an error happens during byte compilation, it is normally due to
invalid syntax in the program you are compiling. The compiler prints a