This is wrong.
If u take the number 111 and if you want to set 4 bits, then there will be no
bits set at all. The total number of SET bits in 111 will remain unchanged.
Number 111 = 1101111(in bit representation)
Now 4 set bits = (1<<4)-1 = 15
Now OR these two numbers. 111 | 15
in bit representation 1101111
1111
-------------
1101111
-------------
So we can see that we haven't SET any bit additional.