diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-11-26 14:45:00 +0100 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-11-26 14:45:00 +0100 |
commit | c6e745e306a294288a14a6bf2c0d3056b4a637aa (patch) | |
tree | 501af33e9103ee493249e40cf6dfa74a3955a58c | |
parent | 1b36531863a45d1ba714b21500069bc6319ee31f (diff) | |
download | geiser-c6e745e306a294288a14a6bf2c0d3056b4a637aa.tar.gz geiser-c6e745e306a294288a14a6bf2c0d3056b4a637aa.tar.bz2 |
Bug fix: don't intern symbols read by scheme reader
We were calling `intern' instead of `make-symbol', polluting emacs'
obarray.
-rw-r--r-- | elisp/geiser-base.el | 1 | ||||
-rw-r--r-- | elisp/geiser-company.el | 4 | ||||
-rw-r--r-- | elisp/geiser-impl.el | 4 | ||||
-rw-r--r-- | elisp/geiser-syntax.el | 4 |
4 files changed, 6 insertions, 7 deletions
diff --git a/elisp/geiser-base.el b/elisp/geiser-base.el index 41fb6fc..d232d2f 100644 --- a/elisp/geiser-base.el +++ b/elisp/geiser-base.el @@ -72,4 +72,3 @@ (provide 'geiser-base) -;;; geiser-base.el ends here diff --git a/elisp/geiser-company.el b/elisp/geiser-company.el index eadce93..d6f89e1 100644 --- a/elisp/geiser-company.el +++ b/elisp/geiser-company.el @@ -32,7 +32,7 @@ (ignore-errors (if module (format "%s [module]" id) - (or (geiser-autodoc--autodoc (list (list (intern id) 0)) t) + (or (geiser-autodoc--autodoc (list (list (make-symbol id) 0)) t) (format "%s [local id]" id))))) (defsubst geiser-company--doc-buffer (id module) @@ -40,7 +40,7 @@ (defun geiser-company--location (id module) (ignore-errors - (let ((id (intern id))) + (let ((id (make-symbol id))) (save-excursion (if module (geiser-edit-module id 'noselect) diff --git a/elisp/geiser-impl.el b/elisp/geiser-impl.el index 7df87cf..038e72f 100644 --- a/elisp/geiser-impl.el +++ b/elisp/geiser-impl.el @@ -208,8 +208,8 @@ switcher (switch-to-NAME), and provides geiser-NAME." (parent (and (listp name) (cadr name)))) (unless (symbolp name) (error "Malformed implementation name: %s" name)) - (let ((runner (intern (format "run-%s" name))) - (switcher (intern (format "switch-to-%s" name))) + (let ((runner (make-symbol (format "run-%s" name))) + (switcher (make-symbol (format "switch-to-%s" name))) (runner-doc (format "Start a new %s REPL." name)) (switcher-doc (format "Switch to a running %s REPL, or start one." name)) diff --git a/elisp/geiser-syntax.el b/elisp/geiser-syntax.el index 65c4813..9bb5e2c 100644 --- a/elisp/geiser-syntax.el +++ b/elisp/geiser-syntax.el @@ -161,7 +161,7 @@ implementation-specific entries for font-lock-keywords.") (?\< (geiser-syntax--read/unprintable)) ((?' ?` ?,) (geiser-syntax--read/next-token)) (t (let ((tok (geiser-syntax--read/elisp))) - (if tok (cons 'atom (intern (format "#%s" tok))) + (if tok (cons 'atom (make-symbol (format "#%s" tok))) (geiser-syntax--read/next-token)))))) (?\' (geiser-syntax--read/token '(quote . quote))) (?\` (geiser-syntax--read/token @@ -209,7 +209,7 @@ implementation-specific entries for font-lock-keywords.") (vectorb (apply 'vector (geiser-syntax--read/list))) ((quote backquote unquote splice) (list (cdr token) (geiser-syntax--read))) - (kwd (intern (format ":%s" (cdr token)))) + (kwd (make-symbol (format ":%s" (cdr token)))) (unprintable (format "#<%s>" (cdr token))) ((char string atom) (cdr token)) (t (error "Reading scheme syntax: unexpected token: %s" token))))) |