On Sunday, 29 January 2017 at 18:13:25 UTC, Iain Buclaw wrote:
On 29 January 2017 at 19:12, Iain Buclaw
<ibuc...@gdcproject.org> wrote:
On 29 January 2017 at 17:59, Matthias Klumpp via D.gnu
<d.gnu@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.