www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 3509] New: Cannot forward reference a template mixin's members in a compile-time context

http://d.puremagic.com/issues/show_bug.cgi?id=3509

           Summary: Cannot forward reference a template mixin's members in
                    a compile-time context
           Product: D
           Version: 1.051
          Platform: All
        OS/Version: All
            Status: NEW
          Keywords: rejects-valid
          Severity: blocker
          Priority: P2
         Component: DMD
        AssignedTo: nobody puremagic.com
        ReportedBy: matti.niemenmaa+dbugzilla iki.fi
            Blocks: 340


--- Comment #0 from Matti Niemenmaa <matti.niemenmaa+dbugzilla iki.fi>
2009-11-14 12:29:13 PST ---
template T(bool b) { static assert (b); }

template Mix() { void f() {} }

class C {
    alias T!(is(typeof(M.f))) U;
    mixin Mix!() M;
}

foo.d(1): Error: static assert  (b) is false


Moving the alias below the mixin makes the code compile.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Nov 14 2009