diff --git a/lib/system/threads.nim b/lib/system/threads.nim index 2c2fd4325..050950121 100644 --- a/lib/system/threads.nim +++ b/lib/system/threads.nim @@ -146,7 +146,7 @@ proc threadProcWrapStackFrame[TArg](thrd: ptr Thread[TArg]) = when defined(boehmgc): boehmGC_call_with_stack_base(threadProcWrapDispatch[TArg], thrd) elif not defined(nogc) and not defined(gogc) and not defined(gcRegions) and not defined(gcDestructors): - var p {.volatile.}: proc(a: ptr Thread[TArg]) {.nimcall.} = + var p {.volatile.}: proc(a: ptr Thread[TArg]) {.nimcall, gcsafe.} = threadProcWrapDispatch[TArg] # init the GC for refc/markandsweep nimGC_setStackBottom(addr(p))