Skip to content

Commit dd8af70

Browse files
authored
Fix weird compile errors with D v2.104+ (#42)
AFAICT, the `typeof()` here should be superfluous, but isn't. We're seeing errors like …\mir-ion\source\mir\ser\package.d(529): Error: cannot implicitly convert expression `value.message` of type `const(BrowserAction)` to `serdeIgnoreOut` …\mir-ion\source\mir\ser\package.d(1020): Error: template instance `mir.ser.serializeValueImpl!(JsonSerializer!("", Appender!(char[])), Message!(BrowserAction))` error instantiating with D v2.104.2 and v2.105.1, that are fixed by this.
1 parent 3eaf539 commit dd8af70

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

source/mir/ser/package.d

+2-2
Original file line numberDiff line numberDiff line change
@@ -524,13 +524,13 @@ private void serializeValueImpl(S, V)(scope ref S serializer, scope ref const V
524524
continue;
525525
}
526526

527-
static if(__traits(hasMember, typeof(__traits(getMember, value, member)), "serdeIgnoreOut"))
527+
static if(__traits(hasMember, __traits(getMember, value, member), "serdeIgnoreOut"))
528528
{
529529
if (__traits(getMember, __traits(getMember, value, member), "serdeIgnoreOut"))
530530
continue;
531531
}
532532

533-
static if(__traits(hasMember, typeof(__traits(getMember, value, member)), "_void"))
533+
static if(__traits(hasMember, __traits(getMember, value, member), "_void"))
534534
{
535535
if (__traits(getMember, value, member)._is!void)
536536
continue;

0 commit comments

Comments
 (0)