[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 16/36: fix symbol-function
From: |
Christopher Allan Webber |
Subject: |
[Guile-commits] 16/36: fix symbol-function |
Date: |
Fri, 25 Mar 2016 20:03:33 +0000 |
cwebber pushed a commit to branch wip-elisp
in repository guile.
commit 31afd07744fbb8383e62bef768474f816a5aed5b
Author: Robin Templeton <address@hidden>
Date: Fri Jul 18 17:43:20 2014 -0400
fix symbol-function
(Best-ability ChangeLog annotation added by Christopher Allan Webber.)
* module/language/elisp/runtime.scm (symbol-function): Adjust function.
---
module/language/elisp/runtime.scm | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/module/language/elisp/runtime.scm
b/module/language/elisp/runtime.scm
index e4bd0ff..dba2a54 100644
--- a/module/language/elisp/runtime.scm
+++ b/module/language/elisp/runtime.scm
@@ -158,10 +158,10 @@
value)
(define (symbol-function symbol)
- (set! symbol (schemify symbol))
- (ensure-present! function-slot-module symbol (lambda () #nil))
- (let ((module function-slot-module))
- (module-ref module symbol)))
+ (cond
+ ((module-variable function-slot-module (schemify symbol))
+ => variable-ref)
+ (else #nil)))
(define (set-symbol-function! symbol value)
(set! symbol (schemify symbol))
- [Guile-commits] 06/36: allow arbitrary constants in cps, (continued)
- [Guile-commits] 06/36: allow arbitrary constants in cps, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 05/36: guile-private-ref, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 04/36: multiple obarrays, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 07/36: prefer compilers earlier in list, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 08/36: guile-snarf fix, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 09/36: elisp updates, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 10/36: read nil/t as #nil/#t, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 12/36: defvar affects default value, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 11/36: symbol default value procedures, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 14/36: define-module for elisp special modules, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 16/36: fix symbol-function,
Christopher Allan Webber <=
- [Guile-commits] 13/36: constant-interning fix, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 15/36: restore special operator handling, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 17/36: fix `nil?' type inference, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 18/36: compile-elisp fn, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 19/36: elisp @@ macro, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 20/36: defconst, defvar: proclaim special at compile-time, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 21/36: compiler macros, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 22/36: defsubst, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 23/36: use defsubst, Christopher Allan Webber, 2016/03/25
- [Guile-commits] 24/36: fset macro, Christopher Allan Webber, 2016/03/25