# HG changeset patch # User Jaroslav Hajek # Date 1269513910 -3600 # Node ID 20ce1bea653dc66d8c618cfa307788ec43505d82 # Parent 9684b3c3b417b695667d87609fe9c8b0745ad4ed use round and trunc from gnulib where possible diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2010-03-25 Jaroslav Hajek + + * bootstrap.conf: Include roundf, trunc, truncf. + 2010-03-24 John W. Eaton * configure.ac (AC_INIT): Version is now 3.3.51. diff --git a/bootstrap.conf b/bootstrap.conf --- a/bootstrap.conf +++ b/bootstrap.conf @@ -56,6 +56,9 @@ unlink vsnprintf round + roundf + trunc + truncf " # Additional xgettext options to use. Use "\\\newline" to break lines. diff --git a/liboctave/ChangeLog b/liboctave/ChangeLog --- a/liboctave/ChangeLog +++ b/liboctave/ChangeLog @@ -1,3 +1,13 @@ +2010-03-25 Jaroslav Hajek + + * lo-mappers.cc + (fix (double)): Forward to gnulib::trunc. + (fix (float)): Forward to gnulib::truncf. + (xround (double)): Forward to gnulib::round. + (xround (float)): Forward to gnulib::roundf. + (xtrunc (double)): Forward to gnulib::trunc. + (xtrunc (float)): Forward to gnulib::truncf. + 2010-03-25 David Grundberg * oct-time.h (octave_time): Revert ::modf to std::modf again now diff --git a/liboctave/lo-mappers.cc b/liboctave/lo-mappers.cc --- a/liboctave/lo-mappers.cc +++ b/liboctave/lo-mappers.cc @@ -54,7 +54,7 @@ double fix (double x) { - return x > 0 ? floor (x) : ceil (x); + return gnulib::trunc (x); } double @@ -72,38 +72,13 @@ double xround (double x) { -#if defined (HAVE_ROUND) return gnulib::round (x); -#else - if (x >= 0) - { - double y = floor (x); - - if ((x - y) >= 0.5) - y += 1.0; - - return y; - } - else - { - double y = ceil (x); - - if ((y - x) >= 0.5) - y -= 1.0; - - return y; - } -#endif } double xtrunc (double x) { -#if defined (HAVE_TRUNC) - return trunc (x); -#else - return x > 0 ? floor (x) : ceil (x); -#endif + return gnulib::trunc (x); } double @@ -368,7 +343,7 @@ float fix (float x) { - return x > 0 ? floor (x) : ceil (x); + return gnulib::truncf (x); } float @@ -386,38 +361,13 @@ float xround (float x) { -#if defined (HAVE_ROUND) return gnulib::round (x); -#else - if (x >= 0) - { - float y = floor (x); - - if ((x - y) >= 0.5) - y += 1.0; - - return y; - } - else - { - float y = ceil (x); - - if ((y - x) >= 0.5) - y -= 1.0; - - return y; - } -#endif } float xtrunc (float x) { -#if defined (HAVE_TRUNC) - return trunc (x); -#else - return x > 0 ? floor (x) : ceil (x); -#endif + return gnulib::truncf (x); } float