ICE when calling templated function from extern (C++) templated function?

Iain Buclaw via D.gnu d.gnu at puremagic.com
Sun Jan 8 09:23:34 PST 2017


On 8 January 2017 at 16:42, Iain Buclaw <ibuclaw at gdcproject.org> wrote:
> On 8 January 2017 at 11:06, Iain Buclaw <ibuclaw at gdcproject.org> wrote:
>> On 8 January 2017 at 09:08, Elronnd via D.gnu <d.gnu at puremagic.com> wrote:
>>> On Saturday, 31 December 2016 at 15:10:36 UTC, Iain Buclaw wrote:
>>>>
>>>> On 28 December 2016 at 07:51, Elronnd via D.gnu <d.gnu at puremagic.com>
>>>> wrote:
>>>> *snip*
>>>> It seems the bug is also in dmd too?  Unless it is fixed in master/latest
>>>> release, in which case will need to find out when this happened.
>>>
>>>
>>> It works fine for me on dmd.
>>
>> Then the version of dmd I have probably isn't new enough then.  If the
>> latest is fine, then the C++ mangler just needs to be sync'd between
>> the two codebases.  It's totally encapsulated, so is relatively
>> straightforward, once you get over the D -> C++ conversion. ;-)
>
> Looks like this is the related bug in DMD:
> https://issues.dlang.org/show_bug.cgi?id=15372

Actually, no.  It's this bug that is related indirectly, as the C++
mangler sees a Tuple parameter '[int]', but with the patch applied, it
flattens all tuples so we are just left with the Type 'int'.

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


More information about the D.gnu mailing list