static this sucks, we should deprecate it

Steven Schveighoffer schveiguy at yahoo.com
Thu May 28 08:36:23 PDT 2009


On Thu, 28 May 2009 11:32:19 -0400, Ary Borenszweig <ary at esperanto.org.ar>  
wrote:

> Unknown W. Brackets wrote:
>> Probably a silly idea, but what about (or similar):
>>  static this: mod.name, mod.name2, mod.name3
>> {
>> }
>>  For a dependency list.  I may be wrong, but afaik the main problems  
>> stem from either wrong order or co-dependence (which needs to be solved  
>> by the programmer.)
>>  At least with this, you could ask the compiler for an order,  
>> potentially.  If the other modules had no static this, it could ignore  
>> it, allowing future proofing.
>>  But, maybe that's an ugly hack.
>>  -[Unknown]
>>   davidl wrote:
>>> Why on earth we still let the tumor grow?
>>> I would love to specify the order by myself not by the arbitrary order
>>> generated by the compiler.
>>>
>
> Hi,
>
> Can someone explain me what is exactly the problems with static this?  
> Something like a small example that shows the problem, so I can at least  
> think of a solution (because I don't know the problem).
>
> Thanks!
> Ary


Something like:

file1.d:

import file2.d;

static this()
{
}

file2.d:

import file1.d;

static this()
{
}

fails to compile due to the perceived circular dependency, even though  
none exists.

-Steve



More information about the Digitalmars-d mailing list