# HG changeset patch # User Marco Atzeri # Date 1290520302 -3600 # Node ID 8959861ef55717fa5bd7016eb90110b9f01ee0b6 # Parent 202bd0f1863d8324a0ec45ad76c3ccac7495c36a handling gamma for negative integers also when tgamma is available diff -r 202bd0f1863d -r 8959861ef557 liboctave/ChangeLog --- a/liboctave/ChangeLog Tue Nov 23 03:11:32 2010 -0500 +++ b/liboctave/ChangeLog Tue Nov 23 14:51:42 2010 +0100 @@ -12,6 +12,10 @@ * boolSparse.cc (SparseBoolMatrix::sum, SparseBoolMatrix::any): Cast integer idx_vector argument to octave_idx_type. +2010-11-21 Marco Atzeri + + * lo-specfun.cc: handling integer negative also for tgamma + 2010-11-18 John W. Eaton * chMatrix.cc (charMatrix::row_as_string): Never strip trailing diff -r 202bd0f1863d -r 8959861ef557 liboctave/lo-specfun.cc --- a/liboctave/lo-specfun.cc Tue Nov 23 03:11:32 2010 -0500 +++ b/liboctave/lo-specfun.cc Tue Nov 23 14:51:42 2010 +0100 @@ -281,9 +281,6 @@ double xgamma (double x) { -#if defined (HAVE_TGAMMA) - return tgamma (x); -#else double result; if (xisnan (x)) @@ -291,10 +288,12 @@ else if ((x <= 0 && D_NINT (x) == x) || xisinf (x)) result = octave_Inf; else +#if defined (HAVE_TGAMMA) + return tgamma (x); +#else F77_XFCN (xdgamma, XDGAMMA, (x, result)); - +#endif return result; -#endif } double diff -r 202bd0f1863d -r 8959861ef557 src/ChangeLog --- a/src/ChangeLog Tue Nov 23 03:11:32 2010 -0500 +++ b/src/ChangeLog Tue Nov 23 14:51:42 2010 +0100 @@ -3,6 +3,11 @@ * defun.cc (defun_isargout): Cast nout to octave_idx_type in call to std::min. +2010-11-21 Marco Atzeri + + * mappers.cc : amend test expectation for gamma(-1) + + 2010-11-21 Kai Habel * DLD-FUNCTIONS/fltk-backend.cc (__fltk_uigetfile__): New function diff -r 202bd0f1863d -r 8959861ef557 src/mappers.cc --- a/src/mappers.cc Tue Nov 23 03:11:32 2010 -0500 +++ b/src/mappers.cc Tue Nov 23 14:51:42 2010 +0100 @@ -918,7 +918,7 @@ %!test %! x = [-1, 0, 1, Inf]; -%! v = [NaN, Inf, 1, Inf]; +%! v = [Inf, Inf, 1, Inf]; %! assert (gamma(x), v); %! assert (gamma(single (x)), single (v));