It seems that argtypemerge has troubles when confronted with an error:
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/traits.d(1046,60): Error: parameter index must be in range 0..3 not 3LU
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/traits.d(1047,25): Error: template instance std.traits.ParameterStorageClassTuple!(void function(FreeListRef!(shared(int), true), int delegate(int, int) pure nothrow @nogc @safe, int, int) nothrow @nogc @system).StorageClass!3LU error instantiating
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/traits.d(1047,25): instantiated from here: StorageClass!2LU
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/traits.d(1047,25): instantiated from here: StorageClass!1LU
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/traits.d(1052,44): instantiated from here: StorageClass!0LU
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/typecons.d(4273,22): ... (4 instantiations, -v to show) ...
source/vibe/core/concurrency.d(1146,34): instantiated from here: toDelegate!(void function(FreeListRef!(shared(int), true), int delegate(int, int) pure nothrow @nogc @safe, int, int) nothrow @nogc @system)
source/vibe/core/concurrency.d(1187,15): instantiated from here: async!(int delegate(int, int) pure nothrow @nogc @safe, int, int)
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/functional.d(1224,13): Error: CTFE failed because of previous errors in generateFunction
argtypemerge(, _error_, 0)
argtypemerge(_error_, void*, 0)
core.exception.AssertError@ddmd/argtypes.d(201): Assertion failure
Comment #2 by greensunny12 — 2017-06-11T05:12:23Z
It seems that argtypemerge has troubles when confronted with an error:
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/traits.d(1046,60): Error: parameter index must be in range 0..3 not 3LU
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/traits.d(1047,25): Error: template instance std.traits.ParameterStorageClassTuple!(void function(FreeListRef!(shared(int), true), int delegate(int, int) pure nothrow @nogc @safe, int, int) nothrow @nogc @system).StorageClass!3LU error instantiating
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/traits.d(1047,25): instantiated from here: StorageClass!2LU
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/traits.d(1047,25): instantiated from here: StorageClass!1LU
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/traits.d(1052,44): instantiated from here: StorageClass!0LU
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/typecons.d(4273,22): ... (4 instantiations, -v to show) ...
source/vibe/core/concurrency.d(1146,34): instantiated from here: toDelegate!(void function(FreeListRef!(shared(int), true), int delegate(int, int) pure nothrow @nogc @safe, int, int) nothrow @nogc @system)
source/vibe/core/concurrency.d(1187,15): instantiated from here: async!(int delegate(int, int) pure nothrow @nogc @safe, int, int)
/home/seb/dlang/dmd/generated/linux/debug/64/../../../../../phobos/std/functional.d(1224,13): Error: CTFE failed because of previous errors in generateFunction
argtypemerge(, _error_, 0)
argtypemerge(_error_, void*, 0)
core.exception.AssertError@ddmd/argtypes.d(201): Assertion failure