www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 4985] New: A missing length problem in typecons.Tuple

reply d-bugmail puremagic.com writes:
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: -------
Oct 03 2010
next sibling parent d-bugmail puremagic.com writes:
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: -------
Oct 07 2010
prev sibling parent d-bugmail puremagic.com writes:
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: -------
Oct 08 2010