diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-06-06 05:36:43 +0200 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-06-06 05:36:43 +0200 |
commit | f911e89822474bb57152ba6db861f1bd6be00460 (patch) | |
tree | 31426ac83f2671f24a4c289a20ebdf1cec6d6c70 /scheme/guile/geiser/xref.scm | |
parent | 4d8117a2e9b6dd3b969e84b72c8fbbfcd4e87c21 (diff) | |
download | geiser-chez-f911e89822474bb57152ba6db861f1bd6be00460.tar.gz geiser-chez-f911e89822474bb57152ba6db861f1bd6be00460.tar.bz2 |
Guile: evaluation fixes (current git head).
Diffstat (limited to 'scheme/guile/geiser/xref.scm')
-rw-r--r-- | scheme/guile/geiser/xref.scm | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/scheme/guile/geiser/xref.scm b/scheme/guile/geiser/xref.scm index 54a0d9c..060bec4 100644 --- a/scheme/guile/geiser/xref.scm +++ b/scheme/guile/geiser/xref.scm @@ -1,6 +1,6 @@ ;;; xref.scm -- cross-referencing utilities -;; Copyright (C) 2009 Jose Antonio Ortega Ruiz +;; Copyright (C) 2009, 2010 Jose Antonio Ortega Ruiz ;; This program is free software; you can redistribute it and/or ;; modify it under the terms of the Modified BSD License. You should @@ -24,7 +24,9 @@ (define (symbol-location sym) (cond ((symbol-module sym) => module-location) - (else '()))) + (else (let ((obj (symbol->object sym))) + (or (and (program? obj) (program-location obj)) + '()))))) (define (generic-methods sym) (let* ((gen (symbol->object sym)) |