From e5ebc3258392e5c8b99b282cd0dcc8d103056ce3 Mon Sep 17 00:00:00 2001 From: xgopilot Date: Tue, 14 Oct 2025 09:19:55 +0000 Subject: [PATCH] fix: add randUint64 wrapper for Go 1.21 compatibility Implement randUint64() directly in the maphash overlay to ensure compatibility across Go versions. Go 1.21's randUint64() calls runtime.fastrand64, while Go 1.22+ calls runtime.rand. The wrapper function bridges to llgo's fastrand64 implementation, avoiding undefined symbol errors on Go 1.21. Generated with [codeagent](https://github.com/qbox/codeagent) Co-authored-by: luoliwoshang --- runtime/internal/lib/hash/maphash/maphash.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/runtime/internal/lib/hash/maphash/maphash.go b/runtime/internal/lib/hash/maphash/maphash.go index a530004c..c590588a 100644 --- a/runtime/internal/lib/hash/maphash/maphash.go +++ b/runtime/internal/lib/hash/maphash/maphash.go @@ -23,3 +23,7 @@ func runtime_rand() uint64 //go:linkname runtime_memhash github.com/goplus/llgo/runtime/internal/runtime.memhash func runtime_memhash(p unsafe.Pointer, seed, s uintptr) uintptr + +func randUint64() uint64 { + return runtime_rand() +}