On Sunday 07 August 2011 18:58:53 Stijn Herreman wrote: > module main; > > import std.stdio; > import my_module; > > int main() > { > my_method(); > return 0; > } > > > module my_module; > > import std.stdio; > > package void my_method() > { > writeln("Hello D-World!"); > } > > > Error: function my_module.my_method is not accessible from main
Hmmm. My guess would be that either it's a bug or that from D's perspective, neither of your modules are in a package. They have no package in front of their names; they're at the base level of the hierarchy. And that might mean that they don't have a package, so they don't share a package. But I don't know. Personally, I don't see much point in using the package specifier when you're not actually using a package hierarchy (you're just making it so that everything but stuff which actually uses a hierarchy can use the function - it would be a really weird distinction to make). So, it wouldn't entirely surprise me if this is completely by design. It might be a bug though. - Jonathan M Davis