On 30.07.2024 21:51, Tomas Volf wrote: > Hello, > > I think I found a bug in (srfi srfi-64) module shipped with GNU Guile. > > The specification for test-end says: > >> Additionally, if the matching test-begin installed a new test-runner, then >> the >> test-end will uninstall it, after reporting the accumulated test results in >> an >> implementation-defined manner. > However in following example it fails to do so: > > (use-modules (srfi srfi-64)) > > (pk (eq? #f (test-runner-current))) > (test-begin "x") > (test-runner-on-final! (test-runner-current) (λ (_) #t)) > (test-end) > (pk (eq? #f (test-runner-current))) > > Resulting in: > > ;;; (#t) > %%%% Starting test x (Writing full log to "x.log") > > ;;; (#f) > > I see no provision in the specification that would justify this. > > Have a nice day > Tomas Volf > > Don't know how to most easily fix this upstream due to the convoluted code, but works fine with my implementation of SRFI-64.
- Taylan