summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Antonio Ortega Ruiz <jao@gnu.org>2020-05-10 19:13:43 +0100
committerJose Antonio Ortega Ruiz <jao@gnu.org>2020-05-10 19:13:43 +0100
commit20043b13bb9756079d73c68ffd3942cecedb2b9e (patch)
tree8e38a7b551661d7bfa13ae3df0deb98ec078fd43
parente975e10772f8c0595dfed21f1ac2ad783deeb9f2 (diff)
downloadgeiser-guile-20043b13bb9756079d73c68ffd3942cecedb2b9e.tar.gz
geiser-guile-20043b13bb9756079d73c68ffd3942cecedb2b9e.tar.bz2
Make guile return line numbers more often, as suggested by Sergey0.12
See gitlab issue #303, where Sergey Trofimov kindly described not only the symptons, but this cure.
-rw-r--r--geiser/xref.scm10
1 files changed, 5 insertions, 5 deletions
diff --git a/geiser/xref.scm b/geiser/xref.scm
index ba509e7..549cc94 100644
--- a/geiser/xref.scm
+++ b/geiser/xref.scm
@@ -1,6 +1,6 @@
;;; xref.scm -- cross-referencing utilities
-;; Copyright (C) 2009, 2010 Jose Antonio Ortega Ruiz
+;; Copyright (C) 2009, 2010, 2020 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
@@ -23,10 +23,10 @@
#:use-module (system vm program))
(define (symbol-location sym)
- (cond ((symbol-module sym) => module-location)
- (else (let ((obj (symbol->object sym)))
- (or (and (program? obj) (program-location obj))
- '())))))
+ (let ((obj (symbol->object sym)))
+ (cond ((program? obj) (program-location obj))
+ ((symbol-module sym) => module-location)
+ (else '()))))
(define (generic-methods sym)
(let* ((gen (symbol->object sym))