forward-sexp parses character literal ?; as comment
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
GNU Emacs |
Fix Released
|
Unknown
|
|||
emacs25 (Ubuntu) |
Fix Committed
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: emacs
In the *scratch* buffer if you write (insert ?;) you can evaluate this Lisp code and it behaves as intended (inserts a semicolon in the current buffer) but doing M-x forward-sexp just before the expression results in an "Unbalanced parentheses" error.
--- (Somewhat edited) original bug description follows ---
When you start Emacs by dragging a file to its icon or selecting "Open with" in Konqueror or Firefox, the startup message includes an option to dismiss the startup screen, with a checkbox to inhibit it from being shown again when Emacs is invoked anew.
If I select the "Never show it again" button, before clicking on "Dismiss the startup screen", I get the following error:
forward-sexp: Scan error: "Unbalanced parentheses", 6391, 9919
This was traced to an .emacs file which Customize attempts to parse and update, but fails because it contained a literal ?; in one of the expressions.
Version:
GNU Emacs 22.2.1 (x86_64-
Kubuntu, Jaunty for x86-64
description: | updated |
Changed in emacs: | |
status: | Unknown → Fix Released |
I'm afraid I don't see how to reproduce this with emacs22. What do you see and what did you do when you started Emacs in order to see this?
More to the point, if you can reproduce this every time you run Emacs, do you think you could do the following, please? Run Emacs with the following:
bash$ emacs --eval '(setq debug-on-error t)'
... and then do whatever you do in order to get the error message. The contents of the resulting *Backtrace* buffer show which function was invoked and how; save that to a temporary file, and attach that file here. Thanks in advance.
I'm marking this bug as "Incomplete" to mark that we are waiting for clarifications from the person who reported the bug, but of course, anybody else who is able to supply the missing information is free to do so, and revert the Status back to "New".