Add #305 implementation; also, add numeric test for -0.0