www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Global Imports in DMD not working?

reply Trevor Parscal <trevorparscal hotmail.com> writes:
I've been getting annoyed with this lately...

a imports b, which imports c, but a still can't access anything in c...

Anybody else notice this?

I'm using dmd 1.0
Jan 07 2007
parent reply Hasan Aljudy <hasan.aljudy gmail.com> writes:
Trevor Parscal wrote:
 I've been getting annoyed with this lately...
 
 a imports b, which imports c, but a still can't access anything in c...
 
 Anybody else notice this?
 
 I'm using dmd 1.0

imports are private by default, i.e. they don't propogate. use public imports, i.e. in b, say: public import c; this way, any module that imports b automatically imports c.
Jan 07 2007
parent reply Chris Nicholson-Sauls <ibisbasenji gmail.com> writes:
Hasan Aljudy wrote:
 Trevor Parscal wrote:
 I've been getting annoyed with this lately...

 a imports b, which imports c, but a still can't access anything in c...

 Anybody else notice this?

 I'm using dmd 1.0

imports are private by default, i.e. they don't propogate. use public imports, i.e. in b, say: public import c; this way, any module that imports b automatically imports c.

Actually I was just about to post about this, as my Bovis project has several uses of public imports... For some unknown reason, DMD/1.00 is not honoring public imports. Given Trevor's case: a imports b, which /publicly/ imports c, but a cannot see c. It doesn't seem to /always/ happen though, and I've yet to find a pattern in it. -- Chris Nicholson-Sauls
Jan 07 2007
next sibling parent Trevor Parscal <trevorparscal hotmail.com> writes:
Yes, I WAS using global imports...

I just hate to have a mess of import lists in the top of every file.

Well, hopefully this will get fixed...
Jan 09 2007
prev sibling parent Walter Bright <newshound digitalmars.com> writes:
Chris Nicholson-Sauls wrote:
 It doesn't seem to /always/ happen though, and I've yet to find a 
 pattern in it.

If you can get a small, reproducible, test case, please post it to bugzilla.
Jan 09 2007