On 2014-06-19 at 13:03 +0400, Dmitry Eremin-Solenikov wrote: > I'd suggest to have something like > unsigned long mask = 0Ul - !!swap; > That would be more robust - you can use then all > expressions as 'swap' argument instead of plain 0 or 1. Thank you for your suggestion. I will do that in the next revised patch. Note that it doesn't work well yet. --