From c25539c9dce1e5b986f4139a38ceff7b39828015 Mon Sep 17 00:00:00 2001 From: Robin Templeton Date: Tue, 24 Jun 2014 00:10:10 -0400 Subject: defvar affects default value (Best-ability ChangeLog annotation added by Christine Lemmer-Webber.) * module/language/elisp/compile-tree-il.scm (defvar): Refactor appropriately. --- module/language/elisp/compile-tree-il.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/module/language/elisp/compile-tree-il.scm b/module/language/elisp/compile-tree-il.scm index a405ab4d7..55e5c3bc1 100644 --- a/module/language/elisp/compile-tree-il.scm +++ b/module/language/elisp/compile-tree-il.scm @@ -511,10 +511,13 @@ (make-conditional loc (make-call loc - (make-module-ref loc runtime 'symbol-bound? #t) + (make-module-ref loc runtime 'symbol-default-bound? #t) (list (make-const loc sym))) (make-void loc) - (set-variable! loc sym (compile-expr value))) + (make-call loc + (make-module-ref loc runtime 'set-symbol-default-value! #t) + (list (make-const loc sym) + (compile-expr value)))) (make-const loc sym)))) (else (report-error loc "Bad defvar" args)))) -- cgit v1.2.3