pspp-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Pspp-cvs] pspp/src math/moments.c math/ChangeLog libpspp/...


From: Ben Pfaff
Subject: [Pspp-cvs] pspp/src math/moments.c math/ChangeLog libpspp/...
Date: Fri, 16 May 2008 05:35:15 +0000

CVSROOT:        /cvsroot/pspp
Module name:    pspp
Changes by:     Ben Pfaff <blp> 08/05/16 05:35:15

Modified files:
        src/math       : moments.c ChangeLog 
        src/libpspp    : misc.h hash.c ChangeLog 
        src/language/expressions: helpers.h evaluate.c ChangeLog 
        src/language/data-io: inpt-pgm.c ChangeLog 
        src/language/control: loop.c ChangeLog 
        src/data       : por-file-writer.c data-out.c ChangeLog 

Log message:
        Use gsl_isnan instead of isnan, gsl_isinf instead of isinf, and
        gsl_finite instead of finite, as a stopgap measure for portability
        until appropriate gnulib modules are available.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pspp/src/math/moments.c?cvsroot=pspp&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/pspp/src/math/ChangeLog?cvsroot=pspp&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/pspp/src/libpspp/misc.h?cvsroot=pspp&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/pspp/src/libpspp/hash.c?cvsroot=pspp&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/pspp/src/libpspp/ChangeLog?cvsroot=pspp&r1=1.90&r2=1.91
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/expressions/helpers.h?cvsroot=pspp&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/expressions/evaluate.c?cvsroot=pspp&r1=1.27&r2=1.28
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/expressions/ChangeLog?cvsroot=pspp&r1=1.13&r2=1.14
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/data-io/inpt-pgm.c?cvsroot=pspp&r1=1.30&r2=1.31
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/data-io/ChangeLog?cvsroot=pspp&r1=1.58&r2=1.59
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/control/loop.c?cvsroot=pspp&r1=1.18&r2=1.19
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/control/ChangeLog?cvsroot=pspp&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/pspp/src/data/por-file-writer.c?cvsroot=pspp&r1=1.23&r2=1.24
http://cvs.savannah.gnu.org/viewcvs/pspp/src/data/data-out.c?cvsroot=pspp&r1=1.24&r2=1.25
http://cvs.savannah.gnu.org/viewcvs/pspp/src/data/ChangeLog?cvsroot=pspp&r1=1.194&r2=1.195

Patches:
Index: math/moments.c
===================================================================
RCS file: /cvsroot/pspp/pspp/src/math/moments.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- math/moments.c      11 Nov 2007 05:51:44 -0000      1.9
+++ math/moments.c      16 May 2008 05:35:09 -0000      1.10
@@ -17,6 +17,7 @@
 #include <config.h>
 #include "moments.h"
 #include <assert.h>
+#include <gsl/gsl_math.h>
 #include <math.h>
 #include <stdlib.h>
 #include <libpspp/misc.h>
@@ -55,7 +56,7 @@
             {
               double s3 = s2 * sqrt (s2);
               double g1 = (w * d3) / ((w - 1.0) * (w - 2.0) * s3);
-              if (finite (g1))
+              if (gsl_finite (g1))
                 *skewness = g1;
             }
           if (max_moment >= MOMENT_KURTOSIS && kurtosis != NULL && w > 3.)
@@ -63,7 +64,7 @@
               double den = (w - 2.) * (w - 3.) * pow2 (s2);
               double g2 = (w * (w + 1) * d4 / (w - 1.) / den
                            - 3. * pow2 (d2) / den);
-              if (finite (g2))
+              if (gsl_finite (g2))
                 *kurtosis = g2;
             }
         }

Index: math/ChangeLog
===================================================================
RCS file: /cvsroot/pspp/pspp/src/math/ChangeLog,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- math/ChangeLog      11 Mar 2008 03:28:48 -0000      1.17
+++ math/ChangeLog      16 May 2008 05:35:09 -0000      1.18
@@ -1,3 +1,11 @@
+2008-05-15  Ben Pfaff  <address@hidden>
+
+       Patch #6512.
+
+       * moments.c (calc_moments): Use gsl_finite instead of finite, as a
+       stopgap measure for portability until appropriate gnulib modules
+       are available.
+
 2008-03-10  Jason Stover  <address@hidden>
 
        * coefficient.c (pspp_linreg_get_coeff): Removed use of

Index: libpspp/misc.h
===================================================================
RCS file: /cvsroot/pspp/pspp/src/libpspp/misc.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- libpspp/misc.h      7 Jul 2007 06:14:21 -0000       1.8
+++ libpspp/misc.h      16 May 2008 05:35:10 -0000      1.9
@@ -22,24 +22,6 @@
 
 #define EPSILON (10 * DBL_EPSILON)
 
-/* HUGE_VAL is traditionally defined as positive infinity, or
-   alternatively, DBL_MAX. */
-#if !HAVE_ISINF && !defined isinf
-#define isinf(X) (fabs (X) == HUGE_VAL)
-#endif
-
-/* A Not a Number is not equal to itself. */
-#if !HAVE_ISNAN && !defined isnan
-#define isnan(X) ((X) != (X))
-#endif
-
-/* Finite numbers are not infinities or NaNs. */
-#if !HAVE_FINITE && !defined finite
-#define finite(X) (!isinf (X) && !isnan (X))
-#elif HAVE_IEEEFP_H
-#include <ieeefp.h>            /* Declares finite() under Solaris. */
-#endif
-
 /* Divides nonnegative X by positive Y, rounding up. */
 #define DIV_RND_UP(X, Y) (((X) + ((Y) - 1)) / (Y))
 

Index: libpspp/hash.c
===================================================================
RCS file: /cvsroot/pspp/pspp/src/libpspp/hash.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- libpspp/hash.c      25 Mar 2008 09:19:30 -0000      1.14
+++ libpspp/hash.c      16 May 2008 05:35:11 -0000      1.15
@@ -20,6 +20,7 @@
 #include "message.h"
 #include <assert.h>
 #include <ctype.h>
+#include <gsl/gsl_math.h>
 #include <limits.h>
 #include <stdbool.h>
 #include <stdlib.h>
@@ -133,7 +134,7 @@
 unsigned
 hsh_hash_double (double d)
 {
-  if (!isnan (d))
+  if (!gsl_isnan (d))
     return hsh_hash_bytes (&d, sizeof d);
   else
     return 0;

Index: libpspp/ChangeLog
===================================================================
RCS file: /cvsroot/pspp/pspp/src/libpspp/ChangeLog,v
retrieving revision 1.90
retrieving revision 1.91
diff -u -b -r1.90 -r1.91
--- libpspp/ChangeLog   5 Mar 2008 06:30:31 -0000       1.90
+++ libpspp/ChangeLog   16 May 2008 05:35:12 -0000      1.91
@@ -1,3 +1,15 @@
+2008-05-15  Ben Pfaff  <address@hidden>
+
+       Patch #6512.
+
+       * hash.c (hsh_hash_int): Use gsl_isnan instead of isnan, as a
+       stopgap measure for portability until appropriate gnulib modules
+       are available.
+
+       * misc.h (macro isinf): Remove implementations of isinf, isnan,
+       and finite, because they were not effective and we are now using
+       the equivalent GSL functions.
+
 2008-03-04  Ben Pfaff  <address@hidden>
 
        Patch #6427.  Reviewed by John Darrington.

Index: language/expressions/helpers.h
===================================================================
RCS file: /cvsroot/pspp/pspp/src/language/expressions/helpers.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- language/expressions/helpers.h      8 Jun 2007 04:53:52 -0000       1.10
+++ language/expressions/helpers.h      16 May 2008 05:35:12 -0000      1.11
@@ -4,6 +4,7 @@
 #include <ctype.h>
 #include <float.h>
 #include <gsl/gsl_cdf.h>
+#include <gsl/gsl_math.h>
 #include <gsl/gsl_randist.h>
 #include <gsl/gsl_sf.h>
 #include <limits.h>
@@ -68,7 +69,7 @@
 static inline bool
 is_valid (double d)
 {
-  return finite (d) && d != SYSMIS;
+  return gsl_finite (d) && d != SYSMIS;
 }
 
 size_t count_valid (double *, size_t);

Index: language/expressions/evaluate.c
===================================================================
RCS file: /cvsroot/pspp/pspp/src/language/expressions/evaluate.c,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -b -r1.27 -r1.28
--- language/expressions/evaluate.c     14 Mar 2008 11:10:15 -0000      1.27
+++ language/expressions/evaluate.c     16 May 2008 05:35:12 -0000      1.28
@@ -18,6 +18,7 @@
 #include "private.h"
 
 #include <ctype.h>
+#include <gsl/gsl_math.h>
 #include <libpspp/assertion.h>
 #include <libpspp/message.h>
 #include "helpers.h"
@@ -63,7 +64,7 @@
           break;
 
         case OP_return_number:
-          *(double *) result = finite (ns[-1]) ? ns[-1] : SYSMIS;
+          *(double *) result = gsl_finite (ns[-1]) ? ns[-1] : SYSMIS;
           return;
 
         case OP_return_string:

Index: language/expressions/ChangeLog
===================================================================
RCS file: /cvsroot/pspp/pspp/src/language/expressions/ChangeLog,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -b -r1.13 -r1.14
--- language/expressions/ChangeLog      13 Oct 2007 04:57:48 -0000      1.13
+++ language/expressions/ChangeLog      16 May 2008 05:35:12 -0000      1.14
@@ -1,3 +1,13 @@
+2008-05-15  Ben Pfaff  <address@hidden>
+
+       Patch #6512.
+
+       * evaluate.c (expr_evaluate): Use gsl_finite instead of finite, as
+       a stopgap measure for portability until appropriate gnulib modules
+       are available.
+
+       * helpers.h (copy_string): Ditto.
+
 2007-10-12  Ben Pfaff  <address@hidden>
 
        Patch #6224.

Index: language/data-io/inpt-pgm.c
===================================================================
RCS file: /cvsroot/pspp/pspp/src/language/data-io/inpt-pgm.c,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -b -r1.30 -r1.31
--- language/data-io/inpt-pgm.c 3 Nov 2007 22:00:05 -0000       1.30
+++ language/data-io/inpt-pgm.c 16 May 2008 05:35:13 -0000      1.31
@@ -19,6 +19,7 @@
 #include <language/data-io/inpt-pgm.h>
 
 #include <float.h>
+#include <gsl/gsl_math.h>
 #include <stdlib.h>
 
 #include <data/case.h>
@@ -332,7 +333,7 @@
   else
     {
       double column = expr_evaluate_num (t->column, c, case_num);
-      if (!finite (column) || column < 1)
+      if (!gsl_finite (column) || column < 1)
        {
          msg (SE, _("REREAD: Column numbers must be positive finite "
               "numbers.  Column set to 1."));

Index: language/data-io/ChangeLog
===================================================================
RCS file: /cvsroot/pspp/pspp/src/language/data-io/ChangeLog,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -b -r1.58 -r1.59
--- language/data-io/ChangeLog  6 Feb 2008 02:08:19 -0000       1.58
+++ language/data-io/ChangeLog  16 May 2008 05:35:13 -0000      1.59
@@ -1,3 +1,11 @@
+2008-05-15  Ben Pfaff  <address@hidden>
+
+       Patch #6512.
+
+       * inpt-pgm.c (reread_trns_proc): Use gsl_finite instead of finite,
+       as a stopgap measure for portability until appropriate gnulib
+       modules are available.
+
 2008-02-06 John Darrington <address@hidden>
 
        * get-data.c: Add a /BSIZE subcommand to PSQL reader.

Index: language/control/loop.c
===================================================================
RCS file: /cvsroot/pspp/pspp/src/language/control/loop.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -b -r1.18 -r1.19
--- language/control/loop.c     19 Jan 2008 06:58:05 -0000      1.18
+++ language/control/loop.c     16 May 2008 05:35:13 -0000      1.19
@@ -17,6 +17,9 @@
 #include <config.h>
 
 #include "control-stack.h"
+
+#include <gsl/gsl_math.h>
+
 #include <data/case.h>
 #include <data/dictionary.h>
 #include <data/procedure.h>
@@ -320,7 +323,8 @@
       case_data_rw (c, loop->index_var)->f = loop->cur;
 
       /* Throw out pathological cases. */
-      if (!finite (loop->cur) || !finite (loop->by) || !finite (loop->last)
+      if (!gsl_finite (loop->cur) || !gsl_finite (loop->by)
+          || !gsl_finite (loop->last)
           || loop->by == 0.0
           || (loop->by > 0.0 && loop->cur > loop->last)
           || (loop->by < 0.0 && loop->cur < loop->last))

Index: language/control/ChangeLog
===================================================================
RCS file: /cvsroot/pspp/pspp/src/language/control/ChangeLog,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- language/control/ChangeLog  23 Sep 2007 16:47:27 -0000      1.10
+++ language/control/ChangeLog  16 May 2008 05:35:14 -0000      1.11
@@ -1,3 +1,11 @@
+2008-05-15  Ben Pfaff  <address@hidden>
+
+       Patch #6512.
+       
+       * loop.c (loop_trns_proc): Use gsl_finite instead of finite, , as
+       a stopgap measure for portability until appropriate gnulib modules
+       are available.
+
 2007-09-23  Ben Pfaff  <address@hidden>
 
        Bug #21111.  Reviewed by John Darrington.

Index: data/por-file-writer.c
===================================================================
RCS file: /cvsroot/pspp/pspp/src/data/por-file-writer.c,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -b -r1.23 -r1.24
--- data/por-file-writer.c      21 Dec 2007 23:49:36 -0000      1.23
+++ data/por-file-writer.c      16 May 2008 05:35:14 -0000      1.24
@@ -20,6 +20,7 @@
 #include <ctype.h>
 #include <errno.h>
 #include <float.h>
+#include <gsl/gsl_math.h>
 #include <math.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -777,7 +778,7 @@
      0...30**6, an invariant of the loop below. */
   errno = 0;
   base_2_sig = frexp (value, &base_2_exp);
-  if (errno != 0 || !finite (base_2_sig))
+  if (errno != 0 || !gsl_finite (base_2_sig))
     goto missing_value;
   if (base_2_exp == 0 && base_2_sig == 0.)
     goto zero;

Index: data/data-out.c
===================================================================
RCS file: /cvsroot/pspp/pspp/src/data/data-out.c,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -b -r1.24 -r1.25
--- data/data-out.c     19 Jan 2008 06:58:04 -0000      1.24
+++ data/data-out.c     16 May 2008 05:35:14 -0000      1.25
@@ -20,6 +20,7 @@
 
 #include <ctype.h>
 #include <float.h>
+#include <gsl/gsl_math.h>
 #include <math.h>
 #include <stdint.h>
 #include <stdlib.h>
@@ -927,9 +928,9 @@
     {
       const char *s;
 
-      if (isnan (number))
+      if (gsl_isnan (number))
         s = "NaN";
-      else if (isinf (number))
+      else if (gsl_isinf (number))
         s = number > 0 ? "+Infinity" : "-Infinity";
       else
         s = "Unknown";

Index: data/ChangeLog
===================================================================
RCS file: /cvsroot/pspp/pspp/src/data/ChangeLog,v
retrieving revision 1.194
retrieving revision 1.195
diff -u -b -r1.194 -r1.195
--- data/ChangeLog      18 Mar 2008 08:08:12 -0000      1.194
+++ data/ChangeLog      16 May 2008 05:35:14 -0000      1.195
@@ -1,3 +1,14 @@
+2008-05-15  Ben Pfaff  <address@hidden>
+
+       Patch #6512.
+
+       * data-out.c (output_infinite): Use gsl_isnan instead of isnan,
+       and gsl_isinf instead of isinf, as a stopgap measure for
+       portability until appropriate gnulib modules are available.
+
+       * por-file-writer.c (format_trig_double): Similarly, use
+       gsl_finite instead of finite.
+
 2008-03-18  John Darrington <address@hidden>
 
        * data-in.c: If category is custom currency, then use




reply via email to

[Prev in Thread] Current Thread [Next in Thread]