[Issue 12481] New: Wrong cross-module overload resolution with std.process.pipe and std.functional.pipe

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Mar 27 10:02:52 PDT 2014


https://d.puremagic.com/issues/show_bug.cgi?id=12481

           Summary: Wrong cross-module overload resolution with
                    std.process.pipe and std.functional.pipe
           Product: D
           Version: D2
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: nobody at puremagic.com
        ReportedBy: thecybershadow at gmail.com


--- Comment #0 from Vladimir Panteleev <thecybershadow at gmail.com> 2014-03-27 19:02:46 EET ---
/////// test.d ///////
import std.process;
import std.functional;

void main()
{
    pipe();
}
//////////////////////

The compiler is expected to either choose std.process.pipe, or present an
ambiguity error. Currently it chooses std.functional.pipe, with the resulting
error:

C:\...\std\functional.d(514,25): Error: tuple index 0 exceeds 0
C:\...\std\functional.d(514,42): Error: slice [1..0] is out of range of [0..0]
C:\...\std\functional.d(533,22): Error: template instance std.functional
.compose!() error instantiating
test.d(6,6):        instantiated from here: pipe!()

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


More information about the Digitalmars-d-bugs mailing list