@abcdw Hm since there was no reaction in IRC, I wanted to send it to mailing list. But I cannot reproduce it:
(use-modules (ice-9 threads))
(let ((th (call-with-new-thread (lambda () 'hi))))
(pk (join-thread th))
(pk (thread-exited? th))
(sleep 1)
(pk (thread-exited? th)))
gives me:
$ guile /tmp/x.scm
;;; (hi)
;;; (#t)
;;; (#t)
I am on guile 3.0.9.
@graywolf Thank you for trying it! Yes, you are right, this is not a minimal reproducer (I just didn't check after extracting a snippet from project).
This one should reproduce the behavior:
https://paste.rs/tdGRS