cs: fix interactio of unsafe capture and barriers
Fix `unsafe-call-with-composable-continuation/no-wind` so that it's not blocked by a barrier, since it's supposed to have thread-like capturing ability. Closes #3696
This commit is contained in:
parent
fff39d0306
commit
18435e3a08
|
@ -19,3 +19,19 @@
|
||||||
'no)
|
'no)
|
||||||
|
|
||||||
(check done? #t)
|
(check done? #t)
|
||||||
|
|
||||||
|
(set! done? #f)
|
||||||
|
|
||||||
|
(check
|
||||||
|
(call-as-nonatomic-retry-point
|
||||||
|
(lambda ()
|
||||||
|
(try-atomic
|
||||||
|
(lambda ()
|
||||||
|
(call-with-continuation-barrier
|
||||||
|
(lambda ()
|
||||||
|
(sync/timeout 0.25 ch)))
|
||||||
|
(set! done? #t))
|
||||||
|
'barrier)))
|
||||||
|
'barrier)
|
||||||
|
|
||||||
|
(check done? #t)
|
||||||
|
|
|
@ -526,7 +526,7 @@
|
||||||
(|#%app|
|
(|#%app|
|
||||||
p
|
p
|
||||||
(make-composable-continuation
|
(make-composable-continuation
|
||||||
(extract-metacontinuation 'call-with-composable-continuation (strip-impersonator tag) #f)
|
(extract-metacontinuation 'call-with-composable-continuation (strip-impersonator tag) (not wind?))
|
||||||
k
|
k
|
||||||
(current-winders)
|
(current-winders)
|
||||||
(current-mark-stack)
|
(current-mark-stack)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user