GNU bug report logs -
#72378
srfi-64: top-level test-group does not work
Previous Next
Reported by: Tomas Volf <~@wolfsden.cz>
Date: Tue, 30 Jul 2024 19:53:13 UTC
Severity: normal
Done: Tomas Volf <~@wolfsden.cz>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
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 test-group is defined as equivalent to:
>
> (if (not (test-to-skip% suite-name))
> (dynamic-wind
> (lambda () (test-begin suite-name))
> (lambda () decl-or-expr ...)
> (lambda () (test-end suite-name))))
>
> `test-to-skip%' is not defined anywhere (great), however in the text we have
> this sentence:
>
>> However, the entire group is skipped if it matched an active test-skip
> Since active skip list is mandated to be a property of test runner, in case the
> test runner does not exist yet, there cannot be active skip list. Hence the
> group should run. However:
>
> (use-modules (srfi srfi-64))
> (test-group "x"
> #t)
>
> Leads to:
>
> Backtrace:
> In ice-9/boot-9.scm:
> 1752:10 6 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
> In unknown file:
> 5 (apply-smob/0 #<thunk 7fc490169300>)
> In ice-9/boot-9.scm:
> 724:2 4 (call-with-prompt _ _ #<procedure default-prompt-handler (k proc)>)
> In ice-9/eval.scm:
> 619:8 3 (_ #(#(#<directory (guile-user) 7fc49016cc80>)))
> In ice-9/boot-9.scm:
> 2836:4 2 (save-module-excursion _)
> 4388:12 1 (_)
> In /home/wolf/src/guile-wolfsden/tests/srfi-64/test-group-top-level.srfi64test:
> 8:0 0 (_)
>
> /home/wolf/src/guile-wolfsden/tests/srfi-64/test-group-top-level.srfi64test:8:0: In procedure struct-vtable: Wrong type argument in position 1 (expecting struct): #f
>
> Have a nice day
> Tomas Volf
>
>
I don't know how to fix this in the reference implementation that Guile uses, and don't care to find out because (as you seem to have noticed) the implementation is somewhat over-complicated in many parts.
But in any case, my implementation isn't affected by this bug, and your example works as intended with it.
- Taylan
This bug report was last modified 298 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.