[Issue 15138] ICE with basic use of stdx.data.json

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Mon Oct 5 08:27:56 PDT 2015


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

Kenji Hara <k.hara.pg at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Hardware|x86_64                      |All

--- Comment #6 from Kenji Hara <k.hara.pg at gmail.com> ---
(In reply to Martin Nowak from comment #5)
> Can anyone try to reduce this using dustmite?

Reduced case:

// app.d
import json;
void main()
{
    JSONValue v;
    v.get!JSONValue;
}

// json.d
alias AliasSeq(TL...) = TL;

alias FieldNameTuple(T...) = AliasSeq!();

struct TaggedAlgebraic(U)
{
    alias X = FieldNameTuple!(U.tupleof);
}

void get(T, U)(TaggedAlgebraic!U ta) {}

union PayloadUnion
{
    int dummy;
}

struct JSONValue
{
    alias Payload = TaggedAlgebraic!PayloadUnion;

    void get(T)()
    {
        Payload payload;
        .get!T(payload);
    }
}

// command line:
dmd -unittest app.d

DMD v2.069 DEBUG
core.exception.AssertError at dtemplate.d(6385): Assertion failure
----------------
0x0059CBC7 in _d_assert
0x0045BB98 in TemplateInstance at c:\d2home\dmd2\src\dmd\src\dtemplate.d(6386)
0x005127AD in ToObjFile at c:\d2home\dmd2\src\dmd\src\toobj.c(1138)
0x0045E1B9 in TemplateInstance at c:\d2home\dmd2\src\dmd\src\dtemplate.d(7597)
0x00510A10 in toObjFile at c:\d2home\dmd2\src\dmd\src\toobj.c(1204)
0x005075FB in genObjFile at c:\d2home\dmd2\src\dmd\src\glue.c(385)
0x004ADD86 in tryMain at c:\d2home\dmd2\src\dmd\src\mars.d(1621)
0x004AE1AB in _Dmain at c:\d2home\dmd2\src\dmd\src\mars.d(1695)
0x0059DDBA in D2rt6dmain211_d_run_mainUiPPaPUAAaZiZ6runAllMFZ9__lambda1MFZv
0x0059DD8F in void rt.dmain2._d_run_main(int, char**, extern (C) int
function(char[][])*).runAll()
0x0059DCA7 in _d_run_main
0x004AE4F0 in main
0x005B21BD in mainCRTStartup
0x75A8336A in BaseThreadInitThunk
0x776B9882 in RtlInitializeExceptionChain
0x776B9855 in RtlInitializeExceptionChain

--


More information about the Digitalmars-d-bugs mailing list