Subject: Re: bug#37037: Guile 2.0.13+1-5.1 FTBFS on GNU/Hurd due to one failing test.

From: Mark H Weaver <[email-masked]>
Date: Thu, 22 Aug 2019 17:01:22 -0400

Hi Svante,

Svante Signell <[email-masked]> writes:

> When building Debian version 2.0.13+1-5.1 one test fails making the
> whole build to fail. The problem is in the file test-
> suite/tests/statprof.test. According to that file it is known that
> ITIMER_PROF is not implemented:
>
> ;; Throw `unresolved' upon ENOSYS.  This is used to skip tests on
> ;; platforms such as GNU/Hurd where `ITIMER_PROF' is is currently
> ;; unimplemented.
>       
> (define-syntax-rule (when-implemented body ...)
>   (catch 'system-error
>     (lambda ()
>       body ...)
>     (lambda args
>       (let ((errno (system-error-errno args)))
>         (false-if-exception (statprof-stop))
>         (if (= errno ENOSYS)
>             (throw 'unresolved)
>             (apply throw args))))))
>
> (pass-if-equal "return values"
>     '(42 77)
>   (call-with-values
>       (lambda ()
>         (with-output-to-port (%make-void-port "w")
>           (lambda ()
>             (with-statprof
>                 (let loop ((i 10000))
>                   (if (zero? i)
>                       (values 42 77)
>                       (loop (1- i))))))))
>     list))

It looks like this issue was already fixed in Guile 2.0.14, by commit
f2764cb1031379c47a17c02fef3f8164a6ce9cda on the 'stable-2.0' branch:

  https://git.savannah.gnu.org/cgit/guile.git/commit/?h=stable-2.0&id=f2764cb1031379c47a17c02fef3f8164a6ce9cda

Would you like to try it and report back?

     Thanks,
       Mark