Currently when you import a module the compiler will only generate code for 
functions that are called. The only way I can see to force Nim to compile the 
rest is to mark them `{.exportc.}` which isn't ideal. There is a `{.used.}` 
pragma but that doesn't seem to do what I want. It would be a great help when 
writing FFI bindings if a module could be compiled in full so that the C/C++ 
compiler has a chance to statically analyze the generated code. How much effort 
would it take to modify `{.used.}` and/or `{.importc(pp).}` to support this 
behavior?

Reply via email to