From 14ef4539bb580fe029fb2d3769dc4450f9289db8 Mon Sep 17 00:00:00 2001 From: Lars Ingebrigtsen Date: Thu, 20 Jun 2019 13:44:30 +0200 Subject: [PATCH] Don't define *, ** and ** in ielm as real variables * lisp/ielm.el: (*, **, ***): Change defvars into compiler directives instead of real variable definitions to avoid polluting the global Emacs namespace. (*1, *2, *3): Ditto. --- lisp/ielm.el | 41 +++++++++++++++-------------------------- 1 file changed, 15 insertions(+), 26 deletions(-) diff --git a/lisp/ielm.el b/lisp/ielm.el index c7a31a23e68..b8b0e260650 100644 --- a/lisp/ielm.el +++ b/lisp/ielm.el @@ -122,38 +122,27 @@ such as `edebug-defun' to work with such inputs." :type 'hook :group 'ielm) -(defvar * nil - "Most recent value evaluated in IELM.") +;; Most recent value evaluated in IELM. +(defvar *) -(defvar ** nil - "Second-most-recent value evaluated in IELM.") +;; Second-most-recent value evaluated in IELM. +(defvar **) -(defvar *** nil - "Third-most-recent value evaluated in IELM.") +;; Third-most-recent value evaluated in IELM. +(defvar ***) (defvar ielm-match-data nil "Match data saved at the end of last command.") -(defvar *1 nil - "During IELM evaluation, most recent value evaluated in IELM. -Normally identical to `*'. However, if the working buffer is an IELM -buffer, distinct from the process buffer, then `*' gives the value in -the working buffer, `*1' the value in the process buffer. -The intended value is only accessible during IELM evaluation.") - -(defvar *2 nil - "During IELM evaluation, second-most-recent value evaluated in IELM. -Normally identical to `**'. However, if the working buffer is an IELM -buffer, distinct from the process buffer, then `**' gives the value in -the working buffer, `*2' the value in the process buffer. -The intended value is only accessible during IELM evaluation.") - -(defvar *3 nil - "During IELM evaluation, third-most-recent value evaluated in IELM. -Normally identical to `***'. However, if the working buffer is an IELM -buffer, distinct from the process buffer, then `***' gives the value in -the working buffer, `*3' the value in the process buffer. -The intended value is only accessible during IELM evaluation.") +;; During IELM evaluation, *1 is the most recent value evaluated in +;; IELM. Normally identical to `*'. However, if the working buffer +;; is an IELM buffer, distinct from the process buffer, then `*' gives +;; the value in the working buffer, `*1' the value in the process +;; buffer. The intended value is only accessible during IELM +;; evaluation. *2 and *3 are the same for ** and ***. +(defvar *1) +(defvar *2) +(defvar *3) ;;; System variables -- 2.39.2