Mercurial > emacs
changeset 45405:13e858104d3b
* lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
object field named "xname".
(SYMBOL_NAME): New macro.
author | Ken Raeburn <raeburn@raeburn.org> |
---|---|
date | Mon, 20 May 2002 08:06:06 +0000 |
parents | 3885467d7b12 |
children | 6f19e244af49 |
files | src/lisp.h |
diffstat | 1 files changed, 10 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lisp.h Mon May 20 08:06:00 2002 +0000 +++ b/src/lisp.h Mon May 20 08:06:06 2002 +0000 @@ -871,9 +871,11 @@ enum symbol_interned. */ unsigned interned : 2; - /* The symbol's name. This should become a Lisp_Object - some day; there's no need for the Lisp_String pointer nowadays. */ - struct Lisp_String *name; + /* The symbol's name, as a Lisp string. + + The name "xname" is used to intentionally break code referring to + the old field "name" of type pointer to struct Lisp_String. */ + Lisp_Object xname; /* Value of the symbol or Qunbound if unbound. If this symbol is a defvaralias, `value' contains the symbol for which it is an @@ -891,6 +893,11 @@ struct Lisp_Symbol *next; }; +/* Value is name of symbol. */ + +#define SYMBOL_NAME(sym) \ + LISP_MAKE_RVALUE (XSYMBOL (sym)->xname) + /* Value is non-zero if SYM is an interned symbol. */ #define SYMBOL_INTERNED_P(sym) \