www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Is this actually a bug or?

reply bauss <jj_1337 live.dk> writes:
If you look at:
https://github.com/DiamondMVC/Diamond/blob/master/authentication/permissions.d#L13

I have to import "diamond.http.method" manually, although the 
package "diamond.http" imports the module public like:

https://github.com/DiamondMVC/Diamond/blob/master/http/package.d#L11

However if the import statement directly to the module is removed 
then it won't compile, because the symbols from 
diamond.http.method are undefined symbols.

It only happens in that module too, other modules can access the 
symbols fine with importing "diamond.http" only.

For the compiler I'm using dmd-2.072.2, so if it's a bug and it 
has been fixed in a newer version it'd be nice to know.

I'm not asking for a work-around as clearly importing the module 
directly works fine, but I would just like to know if it's a bug 
and if I should report it or if it has already been fixed/is a 
known issue.
Oct 31 2017
parent reply Jonathan M Davis <newsgroup.d jmdavisprog.com> writes:
On Tuesday, October 31, 2017 20:06:12 bauss via Digitalmars-d wrote:
 If you look at:
 https://github.com/DiamondMVC/Diamond/blob/master/authentication/permissio
 ns.d#L13

 I have to import "diamond.http.method" manually, although the
 package "diamond.http" imports the module public like:

 https://github.com/DiamondMVC/Diamond/blob/master/http/package.d#L11

 However if the import statement directly to the module is removed
 then it won't compile, because the symbols from
 diamond.http.method are undefined symbols.

 It only happens in that module too, other modules can access the
 symbols fine with importing "diamond.http" only.

 For the compiler I'm using dmd-2.072.2, so if it's a bug and it
 has been fixed in a newer version it'd be nice to know.

 I'm not asking for a work-around as clearly importing the module
 directly works fine, but I would just like to know if it's a bug
 and if I should report it or if it has already been fixed/is a
 known issue.
Well, at first glance, it seems like you should just be able to import the package, but I suppose that there could be some detail I'm missing. I don't recall any bugs about that, but that doesn't mean that there weren't any. 2.072.2 is pretty old at this point, and I would advise against using it, but regardless, the easiest way to know if your problem goes away with a newer compiler is to just use a newer compiler. - Jonathan M Davis
Oct 31 2017
parent bauss <jj_1337 live.dk> writes:
On Tuesday, 31 October 2017 at 20:20:38 UTC, Jonathan M Davis 
wrote:
 On Tuesday, October 31, 2017 20:06:12 bauss via Digitalmars-d 
 wrote:
 If you look at: 
 https://github.com/DiamondMVC/Diamond/blob/master/authentication/permissio
ns.d#L13

 I have to import "diamond.http.method" manually, although the 
 package "diamond.http" imports the module public like:

 https://github.com/DiamondMVC/Diamond/blob/master/http/package.d#L11

 However if the import statement directly to the module is 
 removed then it won't compile, because the symbols from 
 diamond.http.method are undefined symbols.

 It only happens in that module too, other modules can access 
 the symbols fine with importing "diamond.http" only.

 For the compiler I'm using dmd-2.072.2, so if it's a bug and 
 it has been fixed in a newer version it'd be nice to know.

 I'm not asking for a work-around as clearly importing the 
 module directly works fine, but I would just like to know if 
 it's a bug and if I should report it or if it has already been 
 fixed/is a known issue.
Well, at first glance, it seems like you should just be able to import the package, but I suppose that there could be some detail I'm missing. I don't recall any bugs about that, but that doesn't mean that there weren't any. 2.072.2 is pretty old at this point, and I would advise against using it, but regardless, the easiest way to know if your problem goes away with a newer compiler is to just use a newer compiler. - Jonathan M Davis
Yeah I would use a newer compiler, but unfortunately mysql-native doesn't link properly with any versions after or at least it didn't for my project. (When compiling to x86) I haven't tried for a few releases though, so I might give it a try again. The linking issue is similar to this: https://issues.dlang.org/show_bug.cgi?id=15183
Oct 31 2017