From c6e745e306a294288a14a6bf2c0d3056b4a637aa Mon Sep 17 00:00:00 2001 From: Jose Antonio Ortega Ruiz Date: Fri, 26 Nov 2010 14:45:00 +0100 Subject: Bug fix: don't intern symbols read by scheme reader We were calling `intern' instead of `make-symbol', polluting emacs' obarray. --- elisp/geiser-base.el | 1 - elisp/geiser-company.el | 4 ++-- elisp/geiser-impl.el | 4 ++-- elisp/geiser-syntax.el | 4 ++-- 4 files changed, 6 insertions(+), 7 deletions(-) (limited to 'elisp') 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))))) -- cgit v1.2.3