From f4470eb794218e2cfda18108392f61bda3d0d470 Mon Sep 17 00:00:00 2001 From: Martin Kinkelin Date: Mon, 31 Jan 2022 16:26:47 +0100 Subject: [PATCH] Fix Issue 22717 - TypeInfo_Struct.equals swaps lhs and rhs parameters --- src/object.d | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/object.d b/src/object.d index 7bb6bec7ed..35fb6c3658 100644 --- a/src/object.d +++ b/src/object.d @@ -1885,8 +1885,17 @@ class TypeInfo_Struct : TypeInfo return false; else if (xopEquals) { - const dg = _memberFunc(p2, xopEquals); - return dg.xopEquals(p1); + // TODO: remove as soon as `git describe` for DMD master yields v2.099+ + static if (__VERSION__ < 2099) + { + const dg = _memberFunc(p2, xopEquals); + return dg.xopEquals(p1); + } + else + { + const dg = _memberFunc(p1, xopEquals); + return dg.xopEquals(p2); + } } else if (p1 == p2) return true;