https://issues.dlang.org/show_bug.cgi?id=16651
Issue ID: 16651 Summary: atomicOp!"-="(ulong, uint) = wrong result/codegen Product: D Version: D2 Hardware: x86_64 OS: Windows Status: NEW Severity: major Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: 2k...@gmx.net wrong result/codegen for atomicOp!"-="(ulong, uint) using DMD -m64. tested on win64 only, using DMD-2.071.2. problem does not occur with DMD -m32 or ldc2-1.1.0-b3 -m64. ----- version(DigitalMars)version(D_LP64){ import std.stdio : writeln; import core.atomic : atomicOp; shared ulong foo = 2; uint bar = 1; atomicOp!"-="( foo, bar ); writeln( "foo = ", foo ); // foo = 4294967297 } --