return 0;
else
{
- /*
- TODO: fix this code; (r-s).sign() is too expensive.
-
- return r.sign_ * ::sign (r.num_ * s.den_ - s.num_ * r.den_);
- */
- return (r - s).sign ();
+ return r.sign_ * ::sign (int (r.num_ * s.den_) - int (s.num_ * r.den_));
}
}