When building this code in nim:
import jester, asyncdispatch
let stuff = "thing"
routes:
get "/":
resp stuff
runForever()
it results in:
mytest.nim(3, 1) template/generic instantiation from here lib/core/macros.nim(369, 70) template/generic instantiation from here lib/pure/asyncmacro.nim(355, 31) Warning: 'matchIter' is not GC-safe as it accesses 'stuff' which is a global using GC'ed memory [GcUnsafe2]
I suppose it refers to the variable stuff
and I suppose it's hard to diagnose because the jester routes are somekind of DSL.
If the message means what it means to mean, then why is it only a warning ? Or is it a false positive ? Or even more, is that concept of using variables in routes just plain impossible ?