summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/progmodes/elisp-mode.el5
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,