From 82b5ec8d18a576fd2768ca0983838c5236f43c3d Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Tue, 6 Mar 2018 09:46:26 -0700 Subject: [PATCH] expander: fix registry-lock retry path Provoking the retry path is extremely difficult, so it's unlikely to have caused any problem so far. --- racket/src/expander/namespace/registry.rkt | 2 +- racket/src/racket/src/startup.inc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/racket/src/expander/namespace/registry.rkt b/racket/src/expander/namespace/registry.rkt index d6b27481b3..247ca8cdbe 100644 --- a/racket/src/expander/namespace/registry.rkt +++ b/racket/src/expander/namespace/registry.rkt @@ -28,7 +28,7 @@ void] [else ;; CAS failed; take it from the top - (loop)])) + (lambda () (loop))])) (lambda () (semaphore-post sema))))] [(eq? (current-thread) (cdr v)) diff --git a/racket/src/racket/src/startup.inc b/racket/src/racket/src/startup.inc index 69cbdf7d35..76222dbdaf 100644 --- a/racket/src/racket/src/startup.inc +++ b/racket/src/racket/src/startup.inc @@ -12064,7 +12064,7 @@ static const char *startup_source = "(lambda()" "(if(box-cas! lock-box_0 v_31 lock_0)" "(let-values()(begin(proc_2) void))" -"(let-values()(loop_74))))" +"(let-values()(lambda()(loop_74)))))" "(lambda()(semaphore-post sema_0)))))))" "(if(eq?(current-thread)(cdr v_31))" "(let-values()(proc_2))"