www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 14020] New: [ICE] generateEmptyFunction(C, func...) is

https://issues.dlang.org/show_bug.cgi?id=14020

          Issue ID: 14020
           Summary: [ICE] generateEmptyFunction(C, func...) is unsupported
                    parameter for C++ template, from typecons.BlackHole
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: DMD
          Assignee: nobody puremagic.com
          Reporter: redballoon36 gmail.com

The following code causes an assertion failure in dmd 2.066.1:

import std.typecons : BlackHole;

extern(C++) interface Inter
{
    void func();
}

BlackHole!Inter var;

The error output is:
/usr/include/dlang/dmd/std/typecons.d(1980): Error: template instance
std.typecons.AutoImplement!(Inter, generateEmptyFunction, isAbstractFunction)
ICE: generateEmptyFunction(C, func...) is unsupported parameter for C++
template
dmd: cppmangle.c:218: void CppMangleVisitor::source_name(Dsymbol*): Assertion
`0' failed.

--
Jan 20 2015