gsl 1.14.7 → 1.15.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/ChangeLog +139 -134
- data/Rakefile +4 -3
- data/VERSION +1 -1
- data/ext/array.c +0 -24
- data/ext/array_complex.c +11 -10
- data/ext/blas1.c +9 -6
- data/ext/block_source.c +4 -3
- data/ext/dirac.c +0 -6
- data/ext/error.c +1 -2
- data/ext/extconf.rb +9 -4
- data/ext/fft.c +22 -12
- data/ext/function.c +2 -2
- data/ext/graph.c +2 -0
- data/ext/gsl_narray.c +1 -7
- data/ext/histogram.c +0 -8
- data/ext/ieee.c +3 -1
- data/ext/integration.c +5 -3
- data/ext/linalg.c +11 -16
- data/ext/linalg_complex.c +1 -3
- data/ext/matrix_complex.c +10 -5
- data/ext/matrix_int.c +10 -10
- data/ext/matrix_source.c +3 -2
- data/ext/multifit.c +21 -29
- data/ext/multimin.c +1 -3
- data/ext/odeiv.c +9 -6
- data/ext/poly_source.c +82 -52
- data/ext/sf_bessel.c +8 -4
- data/ext/sf_coulomb.c +8 -8
- data/ext/sf_coupling.c +9 -6
- data/ext/sf_dilog.c +3 -2
- data/ext/sf_elementary.c +6 -4
- data/ext/sf_elljac.c +3 -2
- data/ext/sf_exp.c +15 -10
- data/ext/sf_gamma.c +9 -6
- data/ext/sf_gegenbauer.c +3 -2
- data/ext/sf_hyperg.c +18 -12
- data/ext/sf_laguerre.c +3 -2
- data/ext/sf_legendre.c +3 -2
- data/ext/sf_log.c +3 -2
- data/ext/sf_power.c +3 -2
- data/ext/sf_trigonometric.c +9 -6
- data/ext/signal.c +1 -3
- data/ext/siman.c +1 -2
- data/ext/stats.c +1 -0
- data/ext/vector_complex.c +5 -2
- data/ext/vector_double.c +13 -8
- data/ext/vector_source.c +6 -5
- data/ext/wavelet.c +16 -8
- data/include/rb_gsl_common.h +5 -6
- data/include/rb_gsl_config.h +62 -0
- data/include/rb_gsl_with_narray.h +6 -1
- data/lib/gsl.rb +3 -0
- data/lib/rbgsl.rb +3 -0
- data/rdoc/fit.rdoc +5 -5
- data/rdoc/ndlinear.rdoc +5 -2
- data/tests/gsl_test2.rb +3 -0
- data/tests/matrix/matrix_complex_test.rb +36 -0
- data/tests/narray/blas_dnrm2.rb +20 -0
- data/tests/poly/poly.rb +48 -0
- data/tests/sf/test_mode.rb +19 -0
- data/tests/stats_mt.rb +16 -0
- metadata +15 -11
- data/ext/MANIFEST +0 -119
    
        data/ext/sf_dilog.c
    CHANGED
    
    | @@ -26,11 +26,12 @@ static VALUE rb_gsl_sf_complex_dilog_e(VALUE obj, VALUE r, VALUE theta) | |
| 26 26 | 
             
            {
         | 
| 27 27 | 
             
              gsl_sf_result *re, *im;
         | 
| 28 28 | 
             
              VALUE vre, vim;
         | 
| 29 | 
            -
               | 
| 29 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 30 | 
            +
              //int status;
         | 
| 30 31 | 
             
              Need_Float(r); Need_Float(theta);
         | 
| 31 32 | 
             
              vre = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, re);
         | 
| 32 33 | 
             
              vim = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, im);
         | 
| 33 | 
            -
              status  | 
| 34 | 
            +
              /*status =*/ gsl_sf_complex_dilog_e(NUM2DBL(r), NUM2DBL(theta), re, im);
         | 
| 34 35 | 
             
              return rb_ary_new3(2, vre, vim);
         | 
| 35 36 | 
             
            }
         | 
| 36 37 |  | 
    
        data/ext/sf_elementary.c
    CHANGED
    
    | @@ -16,10 +16,11 @@ static VALUE rb_gsl_sf_multiply_e(VALUE obj, VALUE x, VALUE y) | |
| 16 16 | 
             
            {
         | 
| 17 17 | 
             
              gsl_sf_result *r;
         | 
| 18 18 | 
             
              VALUE v;
         | 
| 19 | 
            -
               | 
| 19 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 20 | 
            +
              //int status;
         | 
| 20 21 | 
             
              Need_Float(x); Need_Float(y);
         | 
| 21 22 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, r);
         | 
| 22 | 
            -
              status  | 
| 23 | 
            +
              /*status =*/ gsl_sf_multiply_e(NUM2DBL(x), NUM2DBL(y), r);
         | 
| 23 24 | 
             
              return v;
         | 
| 24 25 | 
             
            }
         | 
| 25 26 |  | 
| @@ -28,11 +29,12 @@ static VALUE rb_gsl_sf_multiply_err_e(VALUE obj, VALUE x, VALUE dx, | |
| 28 29 | 
             
            {
         | 
| 29 30 | 
             
              gsl_sf_result *r;
         | 
| 30 31 | 
             
              VALUE v;
         | 
| 31 | 
            -
               | 
| 32 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 33 | 
            +
              //int status;
         | 
| 32 34 | 
             
              Need_Float(x); Need_Float(y);
         | 
| 33 35 | 
             
              Need_Float(dx); Need_Float(dy);
         | 
| 34 36 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, r);
         | 
| 35 | 
            -
              status  | 
| 37 | 
            +
              /*status =*/ gsl_sf_multiply_err_e(NUM2DBL(x), NUM2DBL(dx),
         | 
| 36 38 | 
             
            				 NUM2DBL(y), NUM2DBL(dy), r);
         | 
| 37 39 | 
             
              return v;
         | 
| 38 40 | 
             
            }
         | 
    
        data/ext/sf_elljac.c
    CHANGED
    
    | @@ -15,9 +15,10 @@ | |
| 15 15 | 
             
            static VALUE rb_gsl_sf_elljac_e(VALUE obj, VALUE n, VALUE m)
         | 
| 16 16 | 
             
            {
         | 
| 17 17 | 
             
              double sn, cn, dn;
         | 
| 18 | 
            -
               | 
| 18 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 19 | 
            +
              //int status;
         | 
| 19 20 | 
             
              Need_Float(n); Need_Float(m);
         | 
| 20 | 
            -
              status  | 
| 21 | 
            +
              /*status =*/ gsl_sf_elljac_e(NUM2DBL(n), NUM2DBL(m), &sn, &cn, &dn);
         | 
| 21 22 | 
             
              return rb_ary_new3(3, rb_float_new(sn), 
         | 
| 22 23 | 
             
            		     rb_float_new(cn), rb_float_new(dn));
         | 
| 23 24 | 
             
            }
         | 
    
        data/ext/sf_exp.c
    CHANGED
    
    | @@ -30,10 +30,11 @@ static VALUE rb_gsl_sf_exp_e10_e(VALUE obj, VALUE x) | |
| 30 30 | 
             
            {
         | 
| 31 31 | 
             
              gsl_sf_result_e10 *rslt = NULL;
         | 
| 32 32 | 
             
              VALUE v;
         | 
| 33 | 
            -
               | 
| 33 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 34 | 
            +
              //int status;
         | 
| 34 35 | 
             
              Need_Float(x);
         | 
| 35 36 | 
             
              v = Data_Make_Struct(cgsl_sf_result_e10, gsl_sf_result_e10, 0, free, rslt);
         | 
| 36 | 
            -
              status  | 
| 37 | 
            +
              /*status =*/ gsl_sf_exp_e10_e(NUM2DBL(x), rslt);
         | 
| 37 38 | 
             
              return v;
         | 
| 38 39 | 
             
            }
         | 
| 39 40 |  | 
| @@ -52,10 +53,11 @@ static VALUE rb_gsl_sf_exp_mult_e10_e(VALUE obj, VALUE x, VALUE y) | |
| 52 53 | 
             
            {
         | 
| 53 54 | 
             
              gsl_sf_result_e10 *rslt = NULL;
         | 
| 54 55 | 
             
              VALUE v;
         | 
| 55 | 
            -
               | 
| 56 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 57 | 
            +
              //int status;
         | 
| 56 58 | 
             
              Need_Float(x);   Need_Float(y);
         | 
| 57 59 | 
             
              v = Data_Make_Struct(cgsl_sf_result_e10, gsl_sf_result_e10, 0, free, rslt);
         | 
| 58 | 
            -
              status  | 
| 60 | 
            +
              /*status =*/ gsl_sf_exp_mult_e10_e(NUM2DBL(x), NUM2DBL(y), rslt);
         | 
| 59 61 | 
             
              return v;
         | 
| 60 62 | 
             
            }
         | 
| 61 63 |  | 
| @@ -108,10 +110,11 @@ static VALUE rb_gsl_sf_exp_err_e10_e(VALUE obj, VALUE x, VALUE dx) | |
| 108 110 | 
             
            {
         | 
| 109 111 | 
             
              gsl_sf_result_e10 *rslt = NULL;
         | 
| 110 112 | 
             
              VALUE v;
         | 
| 111 | 
            -
               | 
| 113 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 114 | 
            +
              //int status;
         | 
| 112 115 | 
             
              Need_Float(x);   Need_Float(dx);
         | 
| 113 116 | 
             
              v = Data_Make_Struct(cgsl_sf_result_e10, gsl_sf_result_e10, 0, free, rslt);
         | 
| 114 | 
            -
              status  | 
| 117 | 
            +
              /*status =*/ gsl_sf_exp_err_e10_e(NUM2DBL(x), NUM2DBL(dx), rslt);
         | 
| 115 118 | 
             
              return v;
         | 
| 116 119 | 
             
            }
         | 
| 117 120 |  | 
| @@ -120,11 +123,12 @@ static VALUE rb_gsl_sf_exp_mult_err_e(VALUE obj, VALUE x, VALUE dx, | |
| 120 123 | 
             
            {
         | 
| 121 124 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 122 125 | 
             
              VALUE v;
         | 
| 123 | 
            -
               | 
| 126 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 127 | 
            +
              //int status;
         | 
| 124 128 | 
             
              Need_Float(x);   Need_Float(y);
         | 
| 125 129 | 
             
              Need_Float(dx);   Need_Float(dy);
         | 
| 126 130 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 127 | 
            -
              status  | 
| 131 | 
            +
              /*status =*/ gsl_sf_exp_mult_err_e(NUM2DBL(x), NUM2DBL(dx), NUM2DBL(y), NUM2DBL(dy), rslt);
         | 
| 128 132 | 
             
              return v;
         | 
| 129 133 | 
             
            }
         | 
| 130 134 |  | 
| @@ -133,11 +137,12 @@ static VALUE rb_gsl_sf_exp_mult_err_e10_e(VALUE obj, VALUE x, VALUE dx, | |
| 133 137 | 
             
            {
         | 
| 134 138 | 
             
              gsl_sf_result_e10 *rslt = NULL;
         | 
| 135 139 | 
             
              VALUE v;
         | 
| 136 | 
            -
               | 
| 140 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 141 | 
            +
              //int status;
         | 
| 137 142 | 
             
              Need_Float(x);   Need_Float(y);
         | 
| 138 143 | 
             
              Need_Float(dx);   Need_Float(dy);
         | 
| 139 144 | 
             
              v = Data_Make_Struct(cgsl_sf_result_e10, gsl_sf_result_e10, 0, free, rslt);
         | 
| 140 | 
            -
              status  | 
| 145 | 
            +
              /*status =*/ gsl_sf_exp_mult_err_e10_e(NUM2DBL(x), NUM2DBL(dx), NUM2DBL(y), NUM2DBL(dy), rslt);
         | 
| 141 146 | 
             
              return v;
         | 
| 142 147 | 
             
            }
         | 
| 143 148 |  | 
    
        data/ext/sf_gamma.c
    CHANGED
    
    | @@ -35,11 +35,12 @@ static VALUE rb_gsl_sf_lngamma_sgn_e(VALUE obj, VALUE x) | |
| 35 35 | 
             
            {
         | 
| 36 36 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 37 37 | 
             
              VALUE v;
         | 
| 38 | 
            -
               | 
| 38 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 39 | 
            +
              //int status;
         | 
| 39 40 | 
             
              double sgn;
         | 
| 40 41 | 
             
              Need_Float(x);
         | 
| 41 42 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 42 | 
            -
              status  | 
| 43 | 
            +
              /*status =*/ gsl_sf_lngamma_sgn_e(NUM2DBL(x), rslt, &sgn);
         | 
| 43 44 | 
             
              return rb_ary_new3(2, v, rb_float_new(sgn));
         | 
| 44 45 | 
             
            }
         | 
| 45 46 |  | 
| @@ -165,10 +166,11 @@ static VALUE rb_gsl_sf_lnchoose_e(VALUE obj, VALUE n, VALUE m) | |
| 165 166 | 
             
            {
         | 
| 166 167 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 167 168 | 
             
              VALUE v;
         | 
| 168 | 
            -
               | 
| 169 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 170 | 
            +
              //int status;
         | 
| 169 171 | 
             
              CHECK_FIXNUM(n); CHECK_FIXNUM(m);
         | 
| 170 172 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 171 | 
            -
              status  | 
| 173 | 
            +
              /*status =*/ gsl_sf_lnchoose_e(FIX2INT(n), FIX2INT(m), rslt);
         | 
| 172 174 | 
             
              return v;
         | 
| 173 175 | 
             
            }
         | 
| 174 176 |  | 
| @@ -197,10 +199,11 @@ static VALUE rb_gsl_sf_lnpoch_sgn_e(VALUE obj, VALUE a, VALUE x) | |
| 197 199 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 198 200 | 
             
              VALUE v;
         | 
| 199 201 | 
             
              double sgn;
         | 
| 200 | 
            -
               | 
| 202 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 203 | 
            +
              //int status;
         | 
| 201 204 | 
             
              Need_Float(a); Need_Float(x);
         | 
| 202 205 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 203 | 
            -
              status  | 
| 206 | 
            +
              /*status =*/ gsl_sf_lnpoch_sgn_e(NUM2DBL(a), NUM2DBL(x), rslt, &sgn);
         | 
| 204 207 | 
             
              return rb_ary_new3(2, v, rb_float_new(sgn));
         | 
| 205 208 | 
             
            }
         | 
| 206 209 |  | 
    
        data/ext/sf_gegenbauer.c
    CHANGED
    
    | @@ -50,11 +50,12 @@ static VALUE rb_gsl_sf_gegenpoly_n_e(VALUE obj, VALUE n, VALUE lambda, VALUE x) | |
| 50 50 | 
             
            {
         | 
| 51 51 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 52 52 | 
             
              VALUE v;
         | 
| 53 | 
            -
               | 
| 53 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 54 | 
            +
              //int status;
         | 
| 54 55 | 
             
              CHECK_FIXNUM(n);
         | 
| 55 56 | 
             
              Need_Float(lambda); Need_Float(x);
         | 
| 56 57 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 57 | 
            -
              status  | 
| 58 | 
            +
              /*status =*/ gsl_sf_gegenpoly_n_e(FIX2INT(n), NUM2DBL(lambda), NUM2DBL(x), rslt);
         | 
| 58 59 |  | 
| 59 60 | 
             
              return v;
         | 
| 60 61 | 
             
            }
         | 
    
        data/ext/sf_hyperg.c
    CHANGED
    
    | @@ -31,10 +31,11 @@ static VALUE rb_gsl_sf_hyperg_1F1_int_e(VALUE obj, VALUE m, VALUE n, VALUE x) | |
| 31 31 | 
             
            {
         | 
| 32 32 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 33 33 | 
             
              VALUE v;
         | 
| 34 | 
            -
               | 
| 34 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 35 | 
            +
              //int status;
         | 
| 35 36 | 
             
              CHECK_FIXNUM(m); CHECK_FIXNUM(n); Need_Float(x);
         | 
| 36 37 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 37 | 
            -
              status  | 
| 38 | 
            +
              /*status =*/ gsl_sf_hyperg_1F1_int_e(FIX2INT(m), FIX2INT(n), NUM2DBL(x), rslt);
         | 
| 38 39 | 
             
              return v;
         | 
| 39 40 | 
             
            }
         | 
| 40 41 |  | 
| @@ -57,10 +58,11 @@ static VALUE rb_gsl_sf_hyperg_U_int_e(VALUE obj, VALUE m, VALUE n, VALUE x) | |
| 57 58 | 
             
            {
         | 
| 58 59 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 59 60 | 
             
              VALUE v;
         | 
| 60 | 
            -
               | 
| 61 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 62 | 
            +
              //int status;
         | 
| 61 63 | 
             
              CHECK_FIXNUM(m); CHECK_FIXNUM(n); Need_Float(x);
         | 
| 62 64 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 63 | 
            -
              status  | 
| 65 | 
            +
              /*status =*/ gsl_sf_hyperg_U_int_e(FIX2INT(m), FIX2INT(n), NUM2DBL(x), rslt);
         | 
| 64 66 | 
             
              return v;
         | 
| 65 67 | 
             
            }
         | 
| 66 68 |  | 
| @@ -68,10 +70,11 @@ static VALUE rb_gsl_sf_hyperg_U_int_e10_e(VALUE obj, VALUE m, VALUE n, VALUE x) | |
| 68 70 | 
             
            {
         | 
| 69 71 | 
             
              gsl_sf_result_e10 *rslt = NULL;
         | 
| 70 72 | 
             
              VALUE v;
         | 
| 71 | 
            -
               | 
| 73 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 74 | 
            +
              //int status;
         | 
| 72 75 | 
             
              CHECK_FIXNUM(m); CHECK_FIXNUM(n); Need_Float(x);
         | 
| 73 76 | 
             
              v = Data_Make_Struct(cgsl_sf_result_e10, gsl_sf_result_e10, 0, free, rslt);
         | 
| 74 | 
            -
              status  | 
| 77 | 
            +
              /*status =*/ gsl_sf_hyperg_U_int_e10_e(FIX2INT(m), FIX2INT(n), NUM2DBL(x), rslt);
         | 
| 75 78 | 
             
              return v;
         | 
| 76 79 | 
             
            }
         | 
| 77 80 |  | 
| @@ -121,10 +124,11 @@ static VALUE rb_gsl_sf_hyperg_2F1_conj_e(VALUE obj, VALUE aR, VALUE aI, VALUE c, | |
| 121 124 | 
             
            {
         | 
| 122 125 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 123 126 | 
             
              VALUE v;
         | 
| 124 | 
            -
               | 
| 127 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 128 | 
            +
              //int status;
         | 
| 125 129 | 
             
              Need_Float(aR); Need_Float(aI);  Need_Float(c); Need_Float(x);
         | 
| 126 130 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 127 | 
            -
              status  | 
| 131 | 
            +
              /*status =*/ gsl_sf_hyperg_2F1_conj_e(NUM2DBL(aR), NUM2DBL(aI), NUM2DBL(c), NUM2DBL(x), rslt);
         | 
| 128 132 | 
             
              return v;
         | 
| 129 133 | 
             
            }
         | 
| 130 134 |  | 
| @@ -137,10 +141,11 @@ static VALUE rb_gsl_sf_hyperg_2F1_renorm_e(VALUE obj, VALUE a, VALUE b, VALUE c, | |
| 137 141 | 
             
            {
         | 
| 138 142 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 139 143 | 
             
              VALUE v;
         | 
| 140 | 
            -
               | 
| 144 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 145 | 
            +
              //int status;
         | 
| 141 146 | 
             
              Need_Float(a); Need_Float(b);  Need_Float(c); Need_Float(x);
         | 
| 142 147 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 143 | 
            -
              status  | 
| 148 | 
            +
              /*status =*/ gsl_sf_hyperg_2F1_renorm_e(NUM2DBL(a), NUM2DBL(b), NUM2DBL(c), NUM2DBL(x), rslt);
         | 
| 144 149 | 
             
              return v;
         | 
| 145 150 | 
             
            }
         | 
| 146 151 |  | 
| @@ -153,10 +158,11 @@ static VALUE rb_gsl_sf_hyperg_2F1_conj_renorm_e(VALUE obj, VALUE aR, VALUE aI, V | |
| 153 158 | 
             
            {
         | 
| 154 159 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 155 160 | 
             
              VALUE v;
         | 
| 156 | 
            -
               | 
| 161 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 162 | 
            +
              //int status;
         | 
| 157 163 | 
             
              Need_Float(aR); Need_Float(aI);  Need_Float(c); Need_Float(x);
         | 
| 158 164 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 159 | 
            -
              status  | 
| 165 | 
            +
              /*status =*/ gsl_sf_hyperg_2F1_conj_renorm_e(NUM2DBL(aR), NUM2DBL(aI), NUM2DBL(c), NUM2DBL(x), rslt);
         | 
| 160 166 | 
             
              return v;
         | 
| 161 167 | 
             
            }
         | 
| 162 168 |  | 
    
        data/ext/sf_laguerre.c
    CHANGED
    
    | @@ -78,11 +78,12 @@ static VALUE rb_gsl_sf_laguerre_n_e(VALUE obj, VALUE n, VALUE a, VALUE x) | |
| 78 78 | 
             
            {
         | 
| 79 79 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 80 80 | 
             
              VALUE v;
         | 
| 81 | 
            -
               | 
| 81 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 82 | 
            +
              //int status;
         | 
| 82 83 | 
             
              CHECK_FIXNUM(n);
         | 
| 83 84 | 
             
              Need_Float(a); Need_Float(x);
         | 
| 84 85 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 85 | 
            -
              status  | 
| 86 | 
            +
              /*status =*/ gsl_sf_laguerre_n_e(FIX2INT(n), NUM2DBL(a), NUM2DBL(x), rslt);
         | 
| 86 87 | 
             
              return v;
         | 
| 87 88 | 
             
            }
         | 
| 88 89 |  | 
    
        data/ext/sf_legendre.c
    CHANGED
    
    | @@ -255,12 +255,13 @@ static VALUE rb_gsl_sf_legendre_H3d_e(VALUE obj,VALUE l,  VALUE lambda, VALUE et | |
| 255 255 | 
             
            {
         | 
| 256 256 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 257 257 | 
             
              VALUE v;
         | 
| 258 | 
            -
               | 
| 258 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 259 | 
            +
              //int status;
         | 
| 259 260 | 
             
              CHECK_FIXNUM(l);
         | 
| 260 261 | 
             
              Need_Float(lambda);
         | 
| 261 262 | 
             
              Need_Float(eta);
         | 
| 262 263 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 263 | 
            -
              status  | 
| 264 | 
            +
              /*status =*/ gsl_sf_legendre_H3d_e(FIX2INT(l), NUM2DBL(lambda), NUM2DBL(eta), rslt);
         | 
| 264 265 | 
             
              return v;
         | 
| 265 266 | 
             
            }
         | 
| 266 267 |  | 
    
        data/ext/sf_log.c
    CHANGED
    
    | @@ -47,7 +47,8 @@ static VALUE rb_gsl_sf_complex_log_e(int argc, VALUE *argv, VALUE obj) | |
| 47 47 | 
             
              gsl_complex *z = NULL;
         | 
| 48 48 | 
             
              VALUE vlnr, vtheta;
         | 
| 49 49 | 
             
              double re, im;
         | 
| 50 | 
            -
               | 
| 50 | 
            +
              // local variable "status" was defined and set, but never used
         | 
| 51 | 
            +
              //int status;
         | 
| 51 52 | 
             
              switch (argc) {
         | 
| 52 53 | 
             
              case 1:
         | 
| 53 54 | 
             
                CHECK_COMPLEX(argv[0]);
         | 
| @@ -65,7 +66,7 @@ static VALUE rb_gsl_sf_complex_log_e(int argc, VALUE *argv, VALUE obj) | |
| 65 66 | 
             
              }
         | 
| 66 67 | 
             
              vlnr = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt1);
         | 
| 67 68 | 
             
              vtheta = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt2);
         | 
| 68 | 
            -
              status  | 
| 69 | 
            +
              /*status =*/ gsl_sf_complex_log_e(re, im, rslt1, rslt2);
         | 
| 69 70 | 
             
              return rb_ary_new3(2, vlnr, vtheta);
         | 
| 70 71 | 
             
            }
         | 
| 71 72 |  | 
    
        data/ext/sf_power.c
    CHANGED
    
    | @@ -27,11 +27,12 @@ static VALUE rb_gsl_sf_pow_int_e(VALUE obj, VALUE x, VALUE n) | |
| 27 27 | 
             
            {
         | 
| 28 28 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 29 29 | 
             
              VALUE v;
         | 
| 30 | 
            -
               | 
| 30 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 31 | 
            +
              //int status;
         | 
| 31 32 | 
             
              Need_Float(x);
         | 
| 32 33 | 
             
              CHECK_FIXNUM(n);
         | 
| 33 34 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 34 | 
            -
              status  | 
| 35 | 
            +
              /*status =*/ gsl_sf_pow_int_e(NUM2DBL(x), FIX2INT(n), rslt);
         | 
| 35 36 | 
             
              return v;
         | 
| 36 37 | 
             
            }
         | 
| 37 38 |  | 
    
        data/ext/sf_trigonometric.c
    CHANGED
    
    | @@ -63,7 +63,8 @@ static VALUE rb_gsl_sf_complex_XXX_e(int argc, VALUE *argv, VALUE obj, | |
| 63 63 | 
             
              gsl_complex *z;
         | 
| 64 64 | 
             
              double re, im;
         | 
| 65 65 | 
             
              VALUE v1, v2;
         | 
| 66 | 
            -
               | 
| 66 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 67 | 
            +
              //int status;
         | 
| 67 68 | 
             
              switch (argc) {
         | 
| 68 69 | 
             
              case 1:
         | 
| 69 70 | 
             
                CHECK_COMPLEX(argv[0]);
         | 
| @@ -82,7 +83,7 @@ static VALUE rb_gsl_sf_complex_XXX_e(int argc, VALUE *argv, VALUE obj, | |
| 82 83 | 
             
              }
         | 
| 83 84 | 
             
              v1 = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, r1);
         | 
| 84 85 | 
             
              v2 = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, r2);
         | 
| 85 | 
            -
              status  | 
| 86 | 
            +
              /*status =*/ (*f)(re, im, r1, r2);
         | 
| 86 87 | 
             
              return rb_ary_new3(2, v1, v2);
         | 
| 87 88 | 
             
            }
         | 
| 88 89 |  | 
| @@ -157,11 +158,12 @@ static VALUE rb_gsl_sf_sin_err_e(VALUE obj, VALUE x, VALUE dx) | |
| 157 158 | 
             
            {
         | 
| 158 159 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 159 160 | 
             
              VALUE v;
         | 
| 160 | 
            -
               | 
| 161 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 162 | 
            +
              //int status;
         | 
| 161 163 | 
             
              Need_Float(x);
         | 
| 162 164 | 
             
              Need_Float(dx);
         | 
| 163 165 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 164 | 
            -
              status  | 
| 166 | 
            +
              /*status =*/ gsl_sf_sin_err_e(NUM2DBL(x), NUM2DBL(dx), rslt);
         | 
| 165 167 | 
             
              return v;
         | 
| 166 168 | 
             
            }
         | 
| 167 169 |  | 
| @@ -169,11 +171,12 @@ static VALUE rb_gsl_sf_cos_err_e(VALUE obj, VALUE x, VALUE dx) | |
| 169 171 | 
             
            {
         | 
| 170 172 | 
             
              gsl_sf_result *rslt = NULL;
         | 
| 171 173 | 
             
              VALUE v;
         | 
| 172 | 
            -
               | 
| 174 | 
            +
              // local variable "status" declared and set, but never used
         | 
| 175 | 
            +
              //int status;
         | 
| 173 176 | 
             
              Need_Float(x);
         | 
| 174 177 | 
             
              Need_Float(dx);
         | 
| 175 178 | 
             
              v = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, rslt);
         | 
| 176 | 
            -
              status  | 
| 179 | 
            +
              /*status =*/ gsl_sf_cos_err_e(NUM2DBL(x), NUM2DBL(dx), rslt);
         | 
| 177 180 | 
             
              return v;
         | 
| 178 181 | 
             
            }
         | 
| 179 182 |  | 
    
        data/ext/signal.c
    CHANGED
    
    | @@ -105,7 +105,7 @@ static VALUE rb_gsl_fft_conv_corr(int argc, VALUE *argv, VALUE obj, | |
| 105 105 | 
             
                    enum FFT_CONV_CORR flag2)
         | 
| 106 106 | 
             
            {
         | 
| 107 107 | 
             
              double *data1, *data2, *data3;
         | 
| 108 | 
            -
              size_t stride1, stride2,  | 
| 108 | 
            +
              size_t stride1, stride2, size1, size2;
         | 
| 109 109 | 
             
            #ifdef HAVE_NARRAY_H
         | 
| 110 110 | 
             
              int naflag1, naflag2, shape;
         | 
| 111 111 | 
             
            #else
         | 
| @@ -170,14 +170,12 @@ static VALUE rb_gsl_fft_conv_corr(int argc, VALUE *argv, VALUE obj, | |
| 170 170 | 
             
                  break;
         | 
| 171 171 | 
             
                }
         | 
| 172 172 | 
             
                data3 = v->data;
         | 
| 173 | 
            -
                stride3 = 1;
         | 
| 174 173 | 
             
                break;
         | 
| 175 174 | 
             
              case 1:
         | 
| 176 175 | 
             
            #ifdef HAVE_NARRAY_H
         | 
| 177 176 | 
             
                shape = (int) size1;
         | 
| 178 177 | 
             
                ary = na_make_object(NA_DFLOAT, 1, &shape, cNArray);
         | 
| 179 178 | 
             
                data3 = NA_PTR_TYPE(ary, double*);
         | 
| 180 | 
            -
                stride3 = 1;
         | 
| 181 179 | 
             
            #endif
         | 
| 182 180 | 
             
                break;
         | 
| 183 181 | 
             
              default:
         | 
    
        data/ext/siman.c
    CHANGED
    
    | @@ -569,7 +569,7 @@ static VALUE rb_gsl_siman_solver_solve(VALUE obj, VALUE rng, | |
| 569 569 | 
             
              siman_metric *metric = NULL;
         | 
| 570 570 | 
             
              siman_print *print = NULL;
         | 
| 571 571 | 
             
              gsl_vector *vtmp = NULL;
         | 
| 572 | 
            -
              gsl_siman_params_t *params = NULL | 
| 572 | 
            +
              gsl_siman_params_t *params = NULL;
         | 
| 573 573 | 
             
              int flag = 0;
         | 
| 574 574 | 
             
              /*  Data_Get_Struct(obj, siman_solver, ss);*/
         | 
| 575 575 | 
             
              CHECK_VECTOR(vx0p);
         | 
| @@ -622,7 +622,6 @@ static VALUE rb_gsl_siman_solver_solve(VALUE obj, VALUE rng, | |
| 622 622 | 
             
              ss->proc_metric  = metric->proc;
         | 
| 623 623 |  | 
| 624 624 | 
             
              gsl_vector_memcpy(ss->vx, vtmp);
         | 
| 625 | 
            -
              ppp = *params;
         | 
| 626 625 |  | 
| 627 626 | 
             
              if (NIL_P(vprint)) {
         | 
| 628 627 | 
             
                gsl_siman_solve(r, ss, rb_gsl_siman_Efunc_t, 
         | 
    
        data/ext/stats.c
    CHANGED
    
    | @@ -45,6 +45,7 @@ static VALUE rb_gsl_stats_XXX1(int argc, VALUE *argv, VALUE obj, | |
| 45 45 | 
             
            {
         | 
| 46 46 | 
             
              size_t stride, size;
         | 
| 47 47 | 
             
              double *data = NULL;
         | 
| 48 | 
            +
              if (argc < 1) rb_raise(rb_eArgError, "too few arguments");
         | 
| 48 49 | 
             
              data = get_vector_stats2(argc, argv, obj, &stride, &size);
         | 
| 49 50 | 
             
              return rb_float_new((*f)(data, stride, size, NUM2DBL(argv[argc-1])));
         | 
| 50 51 | 
             
            }
         | 
    
        data/ext/vector_complex.c
    CHANGED
    
    | @@ -1986,7 +1986,10 @@ static VALUE rb_gsl_vector_complex_zip(int argc, VALUE *argv, VALUE obj) | |
| 1986 1986 | 
             
              return ary;
         | 
| 1987 1987 | 
             
            }
         | 
| 1988 1988 |  | 
| 1989 | 
            -
             | 
| 1989 | 
            +
            // Starting with version 1.15, GSL provides a gsl_vector_complex_equal
         | 
| 1990 | 
            +
            // function, but it only determines absolute equality (i.e. is has no epsilon
         | 
| 1991 | 
            +
            // argument).
         | 
| 1992 | 
            +
            static int gsl_vector_complex_equal_eps(const gsl_vector_complex *v1,
         | 
| 1990 1993 | 
             
              const gsl_vector_complex *v2, double eps)
         | 
| 1991 1994 | 
             
            {
         | 
| 1992 1995 | 
             
              gsl_complex z1, z2;
         | 
| @@ -2019,7 +2022,7 @@ static VALUE rb_gsl_vector_complex_equal(int argc, VALUE *argv, VALUE obj) | |
| 2019 2022 | 
             
              Data_Get_Struct(obj, gsl_vector_complex, v1);
         | 
| 2020 2023 | 
             
              CHECK_VECTOR_COMPLEX(argv[0]);
         | 
| 2021 2024 | 
             
              Data_Get_Struct(argv[0], gsl_vector_complex, v2);
         | 
| 2022 | 
            -
              ret =  | 
| 2025 | 
            +
              ret = gsl_vector_complex_equal_eps(v1, v2, eps);
         | 
| 2023 2026 | 
             
              if (ret == 1) return Qtrue;
         | 
| 2024 2027 | 
             
              else return Qfalse;
         | 
| 2025 2028 | 
             
            }
         |