(Token t) is not callable using argument types (Token): GDC bug or not?

Iain Buclaw via D.gnu d.gnu at puremagic.com
Sun Jan 29 13:09:46 PST 2017


On 29 January 2017 at 21:05, Matthias Klumpp via D.gnu
<d.gnu at puremagic.com> wrote:
> On Sunday, 29 January 2017 at 18:13:25 UTC, Iain Buclaw wrote:
>>
>> On 29 January 2017 at 19:12, Iain Buclaw <ibuclaw at gdcproject.org> wrote:
>>>
>>> On 29 January 2017 at 17:59, Matthias Klumpp via D.gnu
>>> <d.gnu at puremagic.com> wrote:
>>>>
>>>> Hi!
>>>> When compiling Dustmite on Debian with GDC, the build runs into the
>>>> following error on i386:
>>>> ```
>>>> splitter.d:875:15: error: function
>>>> splitter.DSplitter.postProcessBlockStatements.consume (Token t) is not
>>>> callable using argument types (Token)
>>>>     if (consume(tokenLookup["if"]) || consume(tokenLookup["static if"]))
>>>>                ^
>>>> debian/rules:9: recipe for target 'override_dh_auto_build' failed
>>>> ```
>>>> This only happens on i386 and other 32bit architectures, amd64 and even
>>>> x32
>>>> are fine.
>>>>
>>>> Looking at the source code at
>>>> https://github.com/CyberShadow/DustMite/blob/master/splitter.d#L875 , I
>>>> can't find any obvious programming issue, so I currently assume that
>>>> this is
>>>> a GDC bug.
>>>> Or am I missing something?
>>>> In the former case, I'd file a bug against GDC.
>>>> Cheers,
>>>>     Matthias
>>>>
>>>
>>> Whatever it is, it would be frontend-related (the error is semantic
>>> related, not codegen).  I don't have any 32bit boxes to try out, unless I am
>>> able to reproduce this in a container or debootstrap-chroot.
>>
>>
>> And I can't reproduce using -m32 with current git head either, nor the
>> gdc-5 package that I have readily available on my laptop.
>
>
> Crazy... It's definitely not a frontend issue, since this compiles fine with
> DMD apparently.... I need to attempt a build of the package in a local 32bit
> chroot and see if that reproduces the issue.
> Alternatively I could also compile with LDC, but I deliberately picked GDC
> here to have Dustmite available on more architectures.
> Btw, while Debian has GDC on a lot of architectures, it seems to only be
> working on very few.

Asking for port boxes is something I occasionally do for testing
building the library.  The compiler should be portable, but
druntime+phobos less so.   There are patches in druntime for C
bindings of PPC, MIPS, SuperH, etc.  Without the hardware, I can't
verify how close it is to being complete.


More information about the D.gnu mailing list