/** Copyright: Copyright Thomas Stuart Bockman 2015 License: <a href="http://www.boost.org/LICENSE_1_0.txt">Boost License 1.0</a>. Authors: Thomas Stuart Bockman */ module future.math; public import std.math; static if(__VERSION__ >= 2069) { version(GNU) { static assert(false); } } else { int cmp(const real x, const real y) @safe pure nothrow @nogc { if(x < y) return -1; if(x > y) return 1; const sx = signbit(x); const sy = signbit(y); if(x.isNaN) { if(!y.isNaN) return sx? -1 : 1; } else if(y.isNaN) return sy? 1 : -1; return (sx < sy)? -1 : (sx > sy); } }