[Issue 18026] Stack overflow in ddmd/dtemplate.d:6241, TemplateInstance::needsCodegen()

d-bugmail at puremagic.com d-bugmail at puremagic.com
Mon Apr 2 14:16:05 UTC 2018


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

--- Comment #1 from JR <zorael at gmail.com> ---
I am now at a stage where with 2.079.0 I can no longer trick dmd on linux into
compiling my project in release mode (or dub -b plain) at all; only debug
works. dmd 2.079.0 fails with exit code -11, with gdb backtraces listing
needsCodegen(). I can still coerce dmd 2.078.3 and ldc 1.8.0 into compiling,
partly. I expect ldc will similarly stop working when a new version of it based
on 2.079 is released.

When I reduce the problem with dustmite I end up with nonsense that apparently
does still trigger the behaviour, but isn't something you can reason about.
Things like function calls that *need to be there* for everything to work, and
without which I get the overflow.

The commit that didn't work in the previously linked overflow branch now builds
in 2.079.0, but instead now all my other tricks don't for the current state of
the codebase. The issue is an emergent property of a hundred little things.

Is there anything I can do to help diagnose?

> $ git clone https://github.com/zorael/kameloso
> $ cd kameloso
> $ git checkout 8b05c0f  # unreduced until interest expressed, expect build times
> $ dub build -c vanilla -b plain
> /usr/bin/dmd failed with exit code -11.

--


More information about the Digitalmars-d-bugs mailing list