Hi!
I've upgraded to version 0.12.0 and I had a little problem with this version.
Now, when importing a module, the module's parent directory is not prepended in the name of the C file generated for that module, so it may produce name collisions with other module/s.
For example, now I had to rename my "system" module to avoid collision with Nim's standard "system" module:
## now this import generates a collision, but before it worked perfectly
import jvlib/system
(...)
Nim Compiler Version 0.12.0 (2015-10-27) [MacOSX: amd64]
git hash: b186493f0143fa8d977b4815e2ecda9f16a43b63
active boot switches: -d:release
The implementation of this part in the compiler wasn't changed, so it's weird you see these problems. Do you have a stdlib.nimble file next to Nim's lib/system.nim?
Module names need to be unique per Nimble package so system.nim produces stdlib_system.c unless there is no stdlib.nimble file.
Another way to solve your problem is to put a jvlib/jvlib.nimble next to jvlib/system.nim. Note that this nimble file can be a fake package, in other words its contents can be empty.
Hi Araq,
Yes, you're right, that's the problem. I installed Nim using Homebrew and it didn't install the file stdlib.nimble next to system.nim.
Thanks