diff --git a/racket/src/bc/src/startup.inc b/racket/src/bc/src/startup.inc index 30226745b0..2f5de76b58 100644 --- a/racket/src/bc/src/startup.inc +++ b/racket/src/bc/src/startup.inc @@ -38630,7 +38630,14 @@ static const char *startup_source = "(lambda(hash-code_0)" "(begin" "(if hash-code_0" -" (string->symbol (format \"~s\" (list hash-code_0 (path->directory-path (current-load-relative-directory)))))" +"(string->symbol" +"(format" +" \"~s\"" +"(list" +" hash-code_0" +"(path->directory-path" +"(let-values(((or-part_0)(current-load-relative-directory)))" +"(if or-part_0 or-part_0(current-directory)))))))" " #f))))" "(define-values" "(module-cache-set!)" diff --git a/racket/src/cs/schemified/expander.scm b/racket/src/cs/schemified/expander.scm index b2abb7b3f7..a6b833c43f 100644 --- a/racket/src/cs/schemified/expander.scm +++ b/racket/src/cs/schemified/expander.scm @@ -46072,7 +46072,9 @@ "~s" (list hash-code_0 - (path->directory-path (current-load-relative-directory))))) + (path->directory-path + (let ((or-part_0 (current-load-relative-directory))) + (if or-part_0 or-part_0 (current-directory))))))) #f))) (define module-cache-set! (lambda (key_0 proc_0) diff --git a/racket/src/expander/eval/module-cache.rkt b/racket/src/expander/eval/module-cache.rkt index 97608614a6..d17467a3bc 100644 --- a/racket/src/expander/eval/module-cache.rkt +++ b/racket/src/expander/eval/module-cache.rkt @@ -29,7 +29,8 @@ ;; Encode as a symbol so we can use an eq?-based hash table ;; (i.e., explot the low-level lock on the symbol table) (string->symbol (format "~s" (list hash-code (path->directory-path - (current-load-relative-directory))))))) + (or (current-load-relative-directory) + (current-directory)))))))) (define (module-cache-set! key proc) (hash-set! module-cache key (make-ephemeron key proc)))