On Thursday, 29 June 2023 at 18:47:48 UTC, Josh Holtrop wrote:
$ ldc2 -of environment environment.d

Since you named the file `environment.d` and didn't use an explicit `module name.thing;` declaration, the compiler assumes it should match the filename.

So it injects an implicit `module environment;` to the top of the file.

Now when you mention `environment`, it uses *that* name instead of the imported name, so it thinks you are trying to pass it the module called environment instead of the object.

If you add `module yourapp.environment;` or something to the top it'd fix it (unless you tried to use something called `yourapp`, then the name might conflict again!)

or rename the file.

Reply via email to