Mercurial > hg > octave-lyh
diff liboctave/oct-inttypes.h @ 13734:28ddb3150943
Rename signbit to __signbit, until the problem is fixed in gnulib.
* oct-inttypes.h (octave_int_arith_base<T, true>): Rename signbit to
__signbit to avoid problems with gnulib macro.
author | Michael Goffioul <michael.goffioul@gmail.com> |
---|---|
date | Thu, 20 Oct 2011 12:54:58 +0100 |
parents | 15eefbd9d4e8 |
children | 72c96de7a403 |
line wrap: on
line diff
--- a/liboctave/oct-inttypes.h +++ b/liboctave/oct-inttypes.h @@ -452,7 +452,7 @@ // Returns 1 for negative number, 0 otherwise. static T - signbit (T x) + __signbit (T x) { #ifdef HAVE_FAST_INT_OPS return static_cast<UT> (x) >> std::numeric_limits<T>::digits; @@ -496,7 +496,7 @@ signum (T x) { // With modest optimizations, this will compile without a jump. - return ((x > 0) ? 1 : 0) - signbit (x); + return ((x > 0) ? 1 : 0) - __signbit (x); } // FIXME -- we do not have an authority what signed shifts should @@ -544,7 +544,7 @@ T ux = u ^ x, uy = u ^ y; if ((ux & uy) < 0) { - u = octave_int_base<T>::max_val () + signbit (~u); + u = octave_int_base<T>::max_val () + __signbit (~u); } return u; #else @@ -585,7 +585,7 @@ T ux = u ^ x, uy = u ^ ~y; if ((ux & uy) < 0) { - u = octave_int_base<T>::max_val () + signbit (~u); + u = octave_int_base<T>::max_val () + __signbit (~u); } return u; #else @@ -651,7 +651,7 @@ z = x / y; T w = -octave_int_abs (x % y); // Can't overflow, but std::abs (x) can! if (w <= y - w) - z -= 1 - (signbit (x) << 1); + z -= 1 - (__signbit (x) << 1); } } else @@ -663,7 +663,7 @@ T w = octave_int_abs (x % y); if (w >= y - w) - z += 1 - (signbit (x) << 1); + z += 1 - (__signbit (x) << 1); } return z; }