# HG changeset patch # User jwe # Date 1159809799 0 # Node ID bda649f500bd5517da50fecf1d62701b6a12e431 # Parent b124a912d28bdd6d2d3d01d0b9dadc6d7a0c1daf [project @ 2006-10-02 17:23:18 by jwe] diff -r b124a912d28b -r bda649f500bd liboctave/ChangeLog --- a/liboctave/ChangeLog Mon Oct 02 14:58:18 2006 +0000 +++ b/liboctave/ChangeLog Mon Oct 02 17:23:19 2006 +0000 @@ -1,3 +1,8 @@ +2006-10-02 John W. Eaton + + * dbleDET.cc (DET::initialize2): Ensure arg to log10 is double. + * CmplxDET.cc (ComplexDET::initialize2): Likewise. + 2006-09-22 David Bateman * MatrixType.h (MatrixType::MatrixType(const SparseComplexMatrix&)): diff -r b124a912d28b -r bda649f500bd liboctave/CmplxDET.cc --- a/liboctave/CmplxDET.cc Mon Oct 02 14:58:18 2006 +0000 +++ b/liboctave/CmplxDET.cc Mon Oct 02 17:23:19 2006 +0000 @@ -66,7 +66,7 @@ { if (c10 != 0.0) { - double etmp = e10 / log10 (2); + double etmp = e10 / log10 (2.0); e2 = static_cast (xround (etmp)); etmp -= e2; c2 = c10 * xexp2 (etmp); diff -r b124a912d28b -r bda649f500bd liboctave/dbleDET.cc --- a/liboctave/dbleDET.cc Mon Oct 02 14:58:18 2006 +0000 +++ b/liboctave/dbleDET.cc Mon Oct 02 17:23:19 2006 +0000 @@ -64,7 +64,7 @@ { if (c10 != 0.0) { - double etmp = e10 / log10 (2); + double etmp = e10 / log10 (2.0); e2 = static_cast (xround (etmp)); etmp -= e2; c2 = c10 * xexp2 (etmp); diff -r b124a912d28b -r bda649f500bd src/ChangeLog --- a/src/ChangeLog Mon Oct 02 14:58:18 2006 +0000 +++ b/src/ChangeLog Mon Oct 02 17:23:19 2006 +0000 @@ -1,9 +1,18 @@ -2006-09-29 John W. Eaton +2006-10-02 John W. Eaton * version.h (OCTAVE_VERSION): Now 2.9.9. (OCTAVE_API_VERSION): Now api-v22. (OCTAVE_RELEASE_DATE): Now 2006-09-29. + * pr-output.cc (pr_plus_format): Use "inline" instead of "static + inline" for template functions to avoid problems when not + compiling with g++. + + * mex.cc (call_mex): Delete elements of argout. + From Kai Labusch . + +2006-09-29 John W. Eaton + * DLD-FUNCTIONS/spfind.cc (sparse_find_non_zero_elem_idx): Leading dimension is NR, not NC. diff -r b124a912d28b -r bda649f500bd src/mex.cc --- a/src/mex.cc Mon Oct 02 14:58:18 2006 +0000 +++ b/src/mex.cc Mon Oct 02 17:23:19 2006 +0000 @@ -2874,6 +2874,12 @@ retval(i) = mxArray::as_octave_value (argout[i]); } + // Is it always safe to do this? Are users required to use one of + // the mxCreateXYZ functions to create the values that are put in + // the output array? + for (int i = 0; i < nout; i++) + delete argout[i]; + // Clean up mex resources. unwind_protect::run_frame ("call_mex"); diff -r b124a912d28b -r bda649f500bd src/pr-output.cc --- a/src/pr-output.cc Mon Oct 02 14:58:18 2006 +0000 +++ b/src/pr-output.cc Mon Oct 02 17:23:19 2006 +0000 @@ -1379,7 +1379,7 @@ } template -static inline void +/* static */ inline void pr_plus_format (std::ostream& os, const T& val) { if (val > T (0)) @@ -1628,7 +1628,7 @@ } template <> -static inline void +/* static */ inline void pr_plus_format<> (std::ostream& os, const Complex& c) { double rp = c.real (); @@ -2141,7 +2141,7 @@ #undef PRINT_CONV template -static inline void +/* static */ inline void pr_int (std::ostream& os, const T& d, int fw = 0) { size_t sz = d.byte_size(); @@ -2206,13 +2206,13 @@ } template -static inline T +/* static */ inline T abs (T x) { return x; } -#define INSTANTIATE_ABS(T) template static inline T abs (T x) +#define INSTANTIATE_ABS(T) template /* static */ inline T abs (T x) INSTANTIATE_ABS (unsigned int); INSTANTIATE_ABS (unsigned short);