Thread overview
[Issue 2723] New: ICE with variadic template parameters, different case
Mar 10, 2009
d-bugmail
Mar 11, 2009
d-bugmail
Apr 01, 2009
d-bugmail
March 10, 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2723

           Summary: ICE with variadic template parameters, different case
           Product: D
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: bugzilla@digitalmars.com
        ReportedBy: andrei@metalanguage.com


Related to 2722:

//import std.typecons;

Tuple!(Types)[] foo(Types...)(string a)
{
    Tuple!(Types)[] result;
    return result;
}

void main()
{
    auto a = foo!(int, double)("s");
}

fails with:

dmd: template.c:798: MATCH TemplateDeclaration::deduceFunctionTemplateMatch(Loc, Objects*, Expression*, Expressions*, Objects*): Assertion `i < parameters->dim' failed.

What happened is that the identifier "Tuple" is not known. The compiler should clarify that in the error message. Uncommenting the import line makes the code work.


-- 

March 11, 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2723





------- Comment #1 from dhasenan@gmail.com  2009-03-10 21:35 -------
I have a similar case that fails with the same assertion in 1.041. In 1.039, it segfaulted instead.


-- 

April 01, 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2723


bugzilla@digitalmars.com changed:

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




------- Comment #2 from bugzilla@digitalmars.com  2009-04-01 13:54 -------
Fixed DMD 2.027


--