static this sucks, we should deprecate it
Steven Schveighoffer
schveiguy at yahoo.com
Thu May 28 08:39:51 PDT 2009
On Thu, 28 May 2009 11:36:23 -0400, Steven Schveighoffer
<schveiguy at yahoo.com> wrote:
> 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
Um.. duh, I meant:
import file1;
not import file1.d;
With that fix, then you should get the right message :)
-Steve
More information about the Digitalmars-d
mailing list