diff options
Diffstat (limited to 'tests/gpgscm/init.scm')
-rw-r--r-- | tests/gpgscm/init.scm | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/gpgscm/init.scm b/tests/gpgscm/init.scm index f8fd71a1b..b03eb437b 100644 --- a/tests/gpgscm/init.scm +++ b/tests/gpgscm/init.scm @@ -534,6 +534,28 @@ `(define ,(cadr form) (call/cc (lambda (return) ,@(cddr form))))) +;; Print the given history. +(define (vm-history-print history) + (let loop ((n 0) (skip 0) (frames history)) + (cond + ((null? frames) + #t) + ((> skip 0) + (loop 0 (- skip 1) (cdr frames))) + (else + (let ((f (car frames))) + (display n) + (display ": ") + (let ((tag (get-tag f))) + (unless (null? tag) + (display (basename (car tag))) + (display ":") + (display (+ 1 (cdr tag))) + (display ": "))) + (write f)) + (newline) + (loop (+ n 1) skip (cdr frames)))))) + ;;;; Simple exception handling ; ; Exceptions are caught as follows: |