rdmd failing to generate init data from dependant file

Francois Chabot francois.chabot.dev at gmail.com
Mon Jul 2 14:13:57 PDT 2012


I'm not 100% sure that rdmd is the culprit here, or if it's 
something OPTLINK isn't picking up.

Given the following modules:

   module a_pkg.a_module;
   import std.exception ;

   immutable class Test
   {
   	string[string] aa ;

	this( )
	{
		string[string] tmp ;
                 ...fill tmp with stuff...
		aa = assumeUnique( tmp ) ;
	}
   }

and

   module main ;
   import a_pkg.a_module ;

   ...do something that uses Test...

if I rdmd main.d, I get the following error:
Error 42: Symbol Undefined _D16TypeInfo_HAyayAa6__initZ

now, if I add the following class to main.d:

   immutable class Placeholder
   {
   	string[string] aa ;

	this()
	{
		string[string] tmp ;
		aa = assumeUnique( tmp ) ;
	}
   }

It all compiles/works fine. Any ideas on what I might be doing 
wrong here?


More information about the Digitalmars-d-learn mailing list