Next: Compilation Errors Prev: Debugger Up: Debugging
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
evaluating an expression indicates an excess of open parentheses (or
square brackets). The reader detects this imbalance at the end of the
file, but it cannot figure out where the close parenthesis should have
been. Likewise, "Invalid read syntax: ")"" indicates an excess close
parenthesis or missing open parenthesis, but not where the missing
parenthesis belongs. How, then, to find what to change?
If the problem is not simply an imbalance of parentheses, a useful
technique is to try `C-M-e' at the beginning of each defun, and see if
it goes to the place where that defun appears to end. If it does not,
there is a problem in that defun.
However, unmatched parentheses are the most common syntax errors in
Lisp, and we can give further advice for those cases.
- Excess Open
- How to find a spurious open paren or missing close.
- Excess Close
- How to find a spurious close paren or missing open.
automatically generated by info2www