It will not work with other compilers as well. I would try doing something like: ```c if ((_control87(0, 0) & _MCW_PC) == _PC_24) toint = 1 / FLT_EPSILON; else toint = 1 / DBL_EPSILON; ``` It's not tested. If it doesn't work with 64-bit precision we will probably need to implement it without floating point operations (or set/restore precision around the function).