[Issue 11230] [REG2.064a] Inexact mangling for template function literal.

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sun Oct 13 22:52:40 PDT 2013


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



--- Comment #5 from Kenji Hara <k.hara.pg at gmail.com> 2013-10-13 22:52:39 PDT ---
Correct test case from bug 11249 comment#0.

import std.algorithm;
class A {
    A[] as;
}

class B {
    A[] as;
}

A visit(A a) {
    a.as.map!(a => visit);
    return null;
}

A visit(B b) {
    b.as.map!(a => visit);
    return null;
}

A visit() {
    return null;
}

$ ../dmd/src/dmd -c -offail.o fail.d
../dmd/src/../../phobos/std/algorithm.d(415): Error: struct
fail.visit.MapResult!(__lambda2, A[]).MapResult failed semantic analysis
../dmd/src/../../phobos/std/algorithm.d(425): Error: this for _input needs to
be type MapResult not type MapResult!(__lambda2, A[])
../dmd/src/../../phobos/std/algorithm.d(430): Error: this for _input needs to
be type MapResult not type MapResult!(__lambda2, A[])
../dmd/src/../../phobos/std/algorithm.d(436): Error: this for _input needs to
be type MapResult not type MapResult!(__lambda2, A[])
../dmd/src/../../phobos/std/algorithm.d(448): Error: this for _input needs to
be type MapResult not type MapResult!(__lambda2, A[])
../dmd/src/../../phobos/std/algorithm.d(454): Error: this for _input needs to
be type MapResult not type MapResult!(__lambda2, A[])
../dmd/src/../../phobos/std/algorithm.d(459): Error: this for _input needs to
be type MapResult not type MapResult!(__lambda2, A[])
../dmd/src/../../phobos/std/algorithm.d(471): Error: this for _input needs to
be type MapResult not type MapResult!(__lambda2, A[])
../dmd/src/../../phobos/std/algorithm.d(479): Error: this for _input needs to
be type MapResult not type MapResult!(__lambda2, A[])
../dmd/src/../../phobos/std/algorithm.d(496): Error: this for _input needs to
be type MapResult not type MapResult!(__lambda2, A[])
../dmd/src/../../phobos/std/algorithm.d(411): Error: template instance
fail.visit.MapResult!(__lambda2, A[]) error instantiating
fail.d(18):        instantiated from here: map!(A[])
fail.d(18): Error: template instance fail.visit.map!((a) => visit).map!(A[])
error instantiating

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


More information about the Digitalmars-d-bugs mailing list