bitcoin/bitcoin — pull request #1784 by xanatos (2012-09-04 13:31:34+00:00)
Title: Removing some implicit conversions

I think that implicitly converting 3 (the number) to uint256, doing an & between two uint256 and finally comparing the result to an uint64 (the 0) is a little overkill if all you want is to check 2 bits of an uint256.
I have to say the truth, I'm not sure if now we would be comparing the "same" 2 bits or the 2 bits from the other side of the uint256 (looking at operator= and Get64 I would say the same), but considering what this code wants to obtain, it shouldn't be a problem.

(I'm not even sure if this code will be faster, but I do think that all those implicit conversions are b.a.d.). We could even do a (*hashrand.begin() & 3) but that would be quite unreadable.