aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJuanma Barranquero <[email protected]>2005-06-27 06:00:54 +0000
committerJuanma Barranquero <[email protected]>2005-06-27 06:00:54 +0000
commit69410484f228767bdce802b93ef5b4dc73940023 (patch)
tree09fe38f3fbf4e0222947286e3982628914a94917 /src
parent007c55a45ff5b367b3a9932c13cc3186fe8a4b22 (diff)
(Fdefvar): Don't try to set constant symbols.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog4
-rw-r--r--src/eval.c4
2 files changed, 8 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 046d1a321f..dcc8d0f2bd 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,7 @@
+2005-06-27 Juanma Barranquero <[email protected]>
+
+ * eval.c (Fdefvar): Don't try to set constant symbols.
+
2005-06-25 Richard M. Stallman <[email protected]>
* macfns.c (Fx_show_tip): Pass new arg to try_window.
diff --git a/src/eval.c b/src/eval.c
index c33021da7b..589bf593f1 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -806,6 +806,10 @@ usage: (defvar SYMBOL &optional INITVALUE DOCSTRING) */)
register Lisp_Object sym, tem, tail;
sym = Fcar (args);
+ if (SYMBOL_CONSTANT_P (sym))
+ error ("Cannot defvar a constant symbol: %s",
+ SDATA (SYMBOL_NAME (sym)));
+
tail = Fcdr (args);
if (!NILP (Fcdr (Fcdr (tail))))
error ("Too many arguments");