www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 14300] New: [2.067-rc1] DList casting to base type is broken


          Issue ID: 14300
           Summary: [2.067-rc1] DList casting to base type is broken
           Product: D
           Version: D2
          Hardware: All
                OS: Linux
            Status: NEW
          Severity: regression
          Priority: P1
         Component: DMD
          Assignee: nobody puremagic.com
          Reporter: NCrashed gmail.com

Worked on 2.066, but new release candidate fails.

import std.container.dlist;

interface ITest {}

class Test : ITest {}   

void main()
        DList!ITest().insertBack(new Test());

/usr/include/dmd/phobos/std/container/dlist.d(642): Error: template
std.container.dlist.DList!(ITest).DList.createNode cannot deduce function from
argument types !()(Test, BaseNode*, BaseNode*), candidates are:
std.container.dlist.DList!(ITest).DList.createNode()(ref T arg, BaseNode* prev
= null, BaseNode* next = null)
/usr/include/dmd/phobos/std/container/dlist.d(414): Error: template instance
std.container.dlist.DList!(ITest).DList.insertBeforeNode!(Test) error
source/app.d(9):        instantiated from here: insertBack!(Test)

Mar 17 2015