The original article which used to be here is obsolete. Its replacement - which fixes some errors and better explains the relevant issues - was crafted as a multi-part series here. Please update your links. Some of the problems with the original code include aliasing problems, integer overflow, and an attempt to extend the ULPs based technique further than really makes sense. The series of article