diff options
-rw-r--r-- | lisp/progmodes/elisp-mode.el | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lisp/progmodes/elisp-mode.el b/lisp/progmodes/elisp-mode.el index 77bf3f1ed18..5989e1161b5 100644 --- a/lisp/progmodes/elisp-mode.el +++ b/lisp/progmodes/elisp-mode.el @@ -697,7 +697,10 @@ functions are annotated with \"<f>\" via the (let ((c (char-after))) (if (eq c ?\() ?\( (if (memq (char-syntax c) '(?w ?_)) - (read (current-buffer)))))) + (let ((pt (point))) + (forward-sexp) + (intern-soft + (buffer-substring pt (point)))))))) (error nil)))) (pcase parent ;; FIXME: Rather than hardcode special cases here, |