Changing the example somewhat (just excluding registers):
if (0 == x.f)
x.f = 1
To my mind, this code contains a data race even though the "result"
(not precisely sure what that means frankly) is the same, i.e. it is
"racy" even if not "buggy"