-Werror Is not useful for nim generated code. Warnings are for humans not compiler output. Nim compiler will do a ton of unsafe things in C because they are actually safe in nim. No one is going to spend time fixing auto generated warnings... thats not what warnings are for! See: [https://forum.nim-lang.org/t/5785](https://forum.nim-lang.org/t/5785)
"about 1 GB/s slower" \- Its our favorite pastime to beat C code at speed. No seriously not sarcastic! Post minimal version of your code please and we will make it fast... Did you compile -d:realse or -d:danger? You probably can't pass ref object`s to C and it should probably be `ptr object? I don't think nim is copying your objects, but it might be your code. Post it!
