Thread overview
[Issue 4985] New: A missing length problem in typecons.Tuple
Oct 07, 2010
Shin Fujishiro
October 03, 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4985

           Summary: A missing length problem in typecons.Tuple
           Product: D
           Version: D2
          Platform: x86
        OS/Version: Windows
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Phobos
        AssignedTo: nobody@puremagic.com
        ReportedBy: bearophile_hugs@eml.cc


--- Comment #0 from bearophile_hugs@eml.cc 2010-10-03 13:30:17 PDT ---
A (hopefully correct) reduced test case from page 30 of: http://nwcpp.org/images/stories/nwcpp-2010-09.pdf


import std.concurrency: spawn, send;
void foo() {}
void main() {
    foreach (b; [cast(immutable(ubyte)[])[1]])
        send(spawn(&foo), b);
}



DMD 2.049 shows:
...\dmd\src\phobos\std\typecons.d(336): Error: no property 'length' for type
'immutable(char)'


This is the part of typecons.Tuple that gives the error:

    static string injectNamedFields()
    {
        string decl = "";
        foreach (i, name; staticMap!(extractName, fieldSpecs))
        {
            auto    field = text("Identity!(field[", i, "])");
            auto numbered = text("_", i);
            decl ~= text("alias ", field, " ", numbered, ";");
            if (name.length != 0) // line 336
            {
                decl ~= text("alias ", numbered, " ", name, ";");
            }
        }
        return decl;
    }

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
October 07, 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4985


Shin Fujishiro <rsinfu@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rsinfu@gmail.com


--- Comment #1 from Shin Fujishiro <rsinfu@gmail.com> 2010-10-07 16:07:28 PDT ---
Maybe you updated only your std.typecons to the svn trunk and not std.typetuple?  I can't reproduce the reported error unless I roll std.typetuple back.  Please try updating your std.typetuple.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
October 08, 2010
http://d.puremagic.com/issues/show_bug.cgi?id=4985


bearophile_hugs@eml.cc changed:

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


--- Comment #2 from bearophile_hugs@eml.cc 2010-10-08 12:43:25 PDT ---
(In reply to comment #1)
> Maybe you updated only your std.typecons to the svn trunk and not std.typetuple?  I can't reproduce the reported error unless I roll std.typetuple back.  Please try updating your std.typetuple.

I don't know what happened, but I have updated std.typetuple and std.typecons, and the problem has gone. So I close this bug report. Thank you Shin Fujishiro.

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