I typed in "/tp <username> 100 25 100" and it teleported me to X=100.5,Y=25,Z=100.5. Usually minecraft accounts for block suffocation damage(at least I believe that's why it's done) by teleporting the player .5 blocks above the designated Y coordinate. Instead of this, in snapshot 14w21b, the player is teleported .5 blocks more on the X and Z coordinates and nothing changes on the Y.
I have attached a video that demonstrates this bug.
If you specify the coordinates without decimals , X and Z get increased to land on the middle of a block instead of the border between blocks (see explanation in MC-4794), but the Y coordinate gets not increased so that you stand with your feet on a block.
If you specify the coordinates with decimals (
/tp @p 1.1 2.2 3.1
, you'll get TP'd to the exact coordinates.That has nothing to do with the prevention of suffocation.