On Wednesday, 10 December 2014 at 12:08:34 UTC, ketmar via Digitalmars-d-learn wrote:
On Wed, 10 Dec 2014 11:52:11 +0000
Lemonfiend via Digitalmars-d-learn <digitalmars-d-learn@puremagic.com>
wrote:

Consider the following:

---
enum Foo { BAR, }

mixin template S(string s_)
{
        enum s = s_;
}

void main()
{
mixin S!(Foo.BAR.stringof); // Error: identifier 'stringof' of 'Foo.BAR.stringof' is not defined

        enum e = Foo.BAR.stringof;
        mixin S!(e); // works fine
}
---

Why doesn't the first work? And is there an alternative to the second version?

  mixin S!((Foo.BAR).stringof);

sorry, don't remember the parsing rule for this.

Wow, I didn't even consider that.. Thanks!

Reply via email to