summaryrefslogtreecommitdiff
path: root/scheme/guile/geiser/xref.scm
diff options
context:
space:
mode:
Diffstat (limited to 'scheme/guile/geiser/xref.scm')
-rw-r--r--scheme/guile/geiser/xref.scm6
1 files changed, 3 insertions, 3 deletions
diff --git a/scheme/guile/geiser/xref.scm b/scheme/guile/geiser/xref.scm
index c94835a..cb39c5d 100644
--- a/scheme/guile/geiser/xref.scm
+++ b/scheme/guile/geiser/xref.scm
@@ -46,17 +46,17 @@
(define (describe-method name m)
(let ((proc (method-procedure m)))
(if proc
- `((location . ,(program-location proc))
+ `((location . ,(or (program-location proc) (symbol-location name)))
(signature . ,(object-signature name proc)))
'())))
(define (program-location p)
- (cond ((not (program? p)) '())
+ (cond ((not (program? p)) #f)
((program-source p 0) =>
(lambda (s) (make-location (program-path p) (source:line s))))
((program-path p) =>
(lambda (s) (make-location (program-path p) #f)))
- (else '())))
+ (else #f)))
(define (program-path p)
(let* ((mod (program-module p))