On 9/14/11 9:47 AM, Walter Bright wrote:
On 9/14/2011 12:06 AM, Rainer Schuetze wrote:
This works out better than the current dmd implementation, e.g. when
forward referencing symbols in a mixin. There are still situations
that depend on interpretation order, but that is to be expected when
"static if" is used.

It might be good to define the lookup mechanism, so it would be
possible to determine whether a failing forward reference is beyond
expected behaviour rather than a compiler-implementation detail.


This is good stuff.

I'd love to see a clear definition of the behavior of »static if« and friends, since trying to find out what happens e.g. when forward referencing something from a mixin or referencing the mixed-in scope from a mixin (e.g. via typeof(this), when the template is mixed into a class/struct) is more or less pure guesswork right now.

Also, even if this certainly isn't the best way to advertise for D, it would be great if the definition order-related peculiarities could be clearly mentioned in the docs (e.g. for static if), since these issues caused me a big headache when I first stumbled across them (and they still occasionally do).

David
_______________________________________________
dmd-internals mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/dmd-internals

Reply via email to