Public imports with D interface files?

David Nadlinger see at klickverbot.at
Sat Sep 3 18:21:02 PDT 2011


Are you specifying std_ext/typetuple.di or whatever it is called when 
compiling the main module? The public import probably triggers creation 
of a module constructor as it really creates aliases for the symbols 
from the imported module.

David


On 9/4/11 3:17 AM, Sean Eskapp wrote:
> I'm compiling a very simple D interface file:
>
>      module std_ext.typetuple;
>
>      public import std.typetuple
>
>      class TypeArray(T...)
>      {
>      }
>
> Compiling it as such:
>      dmd -debug -unittest -D -Dddocs -w -H -o- std_ext/typetuple.d
>
> And including it as such:
>
>      import std_ext.typetuple;
>
>      void main()
>      {
>          TypeArray!(int, double) blah;
>      }
>
> I get a linker error "Symbol Undefined _D7std_ext9typetuple12__ModuleInfoZ"
>
> Removing the public import removes this error. How can I fix this?



More information about the Digitalmars-d-learn mailing list