diff --git a/gnu-apl-interactive.el b/gnu-apl-interactive.el index bca2921..11855d9 100644 --- a/gnu-apl-interactive.el +++ b/gnu-apl-interactive.el @@ -285,11 +285,17 @@ to `gnu-apl-executable')." (let ((result (gnu-apl--read-network-reply-block))) (if (not (string= (car result) "tag")) (message "No function definition found") - (let ((reference (cadr result))) - (unless (string-match "^\\(.*\\):\\([0-9]+\\)$" reference) - (error "Unexpected tag format: %S" reference)) - (let ((file (match-string 1 reference)) - (line-num (string-to-number (match-string 2 reference)))) - (ring-insert find-tag-marker-ring (point-marker)) - (find-file-existing file) - (goto-line line-num)))))))) + (block show + (let ((reference (cadr result))) + (message reference) ;;; + (unless (string-match "^\\(.*\\):\\([0-9]+\\)$" reference) + (if (string-match "^⎕FX$" reference) + (progn + (message "%s: No source information" resolved-name) + (return-from show)) + (error "Unexpected tag format: %S" reference))) + (let ((file (match-string 1 reference)) + (line-num (string-to-number (match-string 2 reference)))) + (ring-insert find-tag-marker-ring (point-marker)) + (find-file-existing file) + (goto-line line-num)))))))))