Skip to content

Commit b476262

Browse files
authored
Avoid op= on struct rvalue (#476)
Use `opOpAssign` directly instead, which is in the spec: > an instance method can still be called on an rvalue struct instance, even if the method is not const https://dlang.org/spec/struct.html#member-functions
1 parent ecde2eb commit b476262

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

source/mir/bignum/fixed.d

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -963,7 +963,7 @@ UInt!(size + size_t.sizeof * 8)
963963
extendedMul(size_t size)(UInt!size a, size_t b)
964964
@safe pure nothrow @nogc
965965
{
966-
size_t overflow = a.view *= b;
966+
size_t overflow = a.view.opOpAssign!"*"(b);
967967
auto ret = a.toSize!(size + size_t.sizeof * 8);
968968
ret.data[$ - 1] = overflow;
969969
return ret;
@@ -1060,6 +1060,7 @@ UInt!(size + size_t.sizeof * 8)
10601060
{
10611061
auto ret = extendedMul(a, b);
10621062
auto view = ret.view;
1063-
view.coefficients[$ - 1] += view.topLeastSignificantPart(a.data.length) += c.view;
1063+
view.coefficients[$ - 1] +=
1064+
view.topLeastSignificantPart(a.data.length).opOpAssign!"+"(c.view);
10641065
return ret;
10651066
}

0 commit comments

Comments
 (0)