It's not clear. [https://nim-lang.org/docs/manual_experimental.html#aliasing-restrictions-in-parameter-passing](https://nim-lang.org/docs/manual_experimental.html#aliasing-restrictions-in-parameter-passing)
> An output parameter should never be aliased with a global or thread local > variable referenced by the called proc. Arguably the compiler needs to detect and reject your code. Realistically it won't do that anytime soon and you need to write cleaner code.
