www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 7368] New: template mixin + __traits(allMembers) = Assertion 'members' failed

reply d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=7368

           Summary: template mixin + __traits(allMembers) = Assertion
                    'members' failed
           Product: D
           Version: D2
          Platform: x86_64
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: nobody puremagic.com
        ReportedBy: tobias pankrath.net



PST ---
import std.stdio;

struct A
{
    mixin member!(M1, M2);
}

struct M1 {}
struct M2 {}

mixin template member(children...)
{
    static if(children.length)
    {
        children[0] m;
        mixin member!(children[1..$]);
    }
}

void main()
{
    A a;
    writeln(__traits(allMembers, A));
}

-- 

dmd bugrep.d
dmd: dsymbol.c:1052: static int ScopeDsymbol::foreach(Dsymbols*, int (*)(void*,
size_t, Dsymbol*), void*, size_t*): Assertion `members' failed.
Aborted

dmd -v
DMD64 D Compiler v2.057
Copyright (c) 1999-2011 by Digital Mars written by Walter Bright
Documentation: http://www.digitalmars.com/d/2.0/index.html

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Jan 25 2012
parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=7368


Kenji Hara <k.hara.pg gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |DUPLICATE



Thanks for your reporting, but it was already fixed in git repo.
Please wait the release of 2.058.

*** This issue has been marked as a duplicate of issue 7160 ***

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Jan 26 2012