Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r56261 - in sandbox/numeric_bindings/boost/numeric/bindings/blas: detail level1 level2 level3
From: rutger_at_[hidden]
Date: 2009-09-17 03:47:50


Author: rutger
Date: 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
New Revision: 56261
URL: http://svn.boost.org/trac/boost/changeset/56261

Log:
Added const qualifier to functions that are detected to be of input type

Text files modified:
   sandbox/numeric_bindings/boost/numeric/bindings/blas/detail/blas.h | 824 ++++++++++++++++++++--------------------
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/asum.hpp | 10
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/axpy.hpp | 27
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/copy.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dot.hpp | 12
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dotc.hpp | 16
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dotu.hpp | 16
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/drot.hpp | 18
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/nrm2.hpp | 10
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rot.hpp | 19
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotg.hpp | 5
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotm.hpp | 16
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotmg.hpp | 19
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/scal.hpp | 22
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/sdot.hpp | 12
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/srot.hpp | 18
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/swap.hpp | 20
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gbmv.hpp | 57 +-
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gemv.hpp | 47 +-
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/ger.hpp | 22
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gerc.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/geru.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hbmv.hpp | 31
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hemv.hpp | 31
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/her.hpp | 20
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/her2.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpmv.hpp | 30
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpr.hpp | 16
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpr2.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/sbmv.hpp | 31
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spmv.hpp | 26
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spr.hpp | 16
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spr2.hpp | 22
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/symv.hpp | 27
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/syr.hpp | 18
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/syr2.hpp | 22
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tbmv.hpp | 32
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tbsv.hpp | 32
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tpmv.hpp | 29
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tpsv.hpp | 29
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/trmv.hpp | 30
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/trsv.hpp | 30
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/gemm.hpp | 57 +-
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/hemm.hpp | 33
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/her2k.hpp | 35
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/herk.hpp | 29
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/symm.hpp | 49 +-
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/syr2k.hpp | 53 +-
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/syrk.hpp | 48 +-
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/trmm.hpp | 43 +-
   sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/trsm.hpp | 43 +-
   51 files changed, 1120 insertions(+), 1052 deletions(-)

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/detail/blas.h
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/detail/blas.h (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/detail/blas.h 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -24,63 +24,63 @@
 //
 
 // Value-type variants of asum
-float BLAS_SASUM( integer_t const* n, float const* x, integer_t const* incx );
-double BLAS_DASUM( integer_t const* n, double const* x,
- integer_t const* incx );
+float BLAS_SASUM( const integer_t* n, const float* x, const integer_t* incx );
+double BLAS_DASUM( const integer_t* n, const double* x,
+ const integer_t* incx );
 
 // Value-type variants of axpy
-void BLAS_SAXPY( integer_t const* n, float const* a, float const* x,
- integer_t const* incx, float* y, integer_t const* incy );
-void BLAS_DAXPY( integer_t const* n, double const* a, double const* x,
- integer_t const* incx, double* y, integer_t const* incy );
-void BLAS_CAXPY( integer_t const* n, fcomplex_t const* a, fcomplex_t const* x,
- integer_t const* incx, fcomplex_t* y, integer_t const* incy );
-void BLAS_ZAXPY( integer_t const* n, dcomplex_t const* a, dcomplex_t const* x,
- integer_t const* incx, dcomplex_t* y, integer_t const* incy );
+void BLAS_SAXPY( const integer_t* n, const float* a, const float* x,
+ const integer_t* incx, float* y, const integer_t* incy );
+void BLAS_DAXPY( const integer_t* n, const double* a, const double* x,
+ const integer_t* incx, double* y, const integer_t* incy );
+void BLAS_CAXPY( const integer_t* n, const fcomplex_t* a, const fcomplex_t* x,
+ const integer_t* incx, fcomplex_t* y, const integer_t* incy );
+void BLAS_ZAXPY( const integer_t* n, const dcomplex_t* a, const dcomplex_t* x,
+ const integer_t* incx, dcomplex_t* y, const integer_t* incy );
 
 // Value-type variants of copy
-void BLAS_SCOPY( integer_t const* n, float const* x, integer_t const* incx,
- float const* y, integer_t const* incy );
-void BLAS_DCOPY( integer_t const* n, double const* x, integer_t const* incx,
- double const* y, integer_t const* incy );
-void BLAS_CCOPY( integer_t const* n, fcomplex_t const* x,
- integer_t const* incx, fcomplex_t const* y, integer_t const* incy );
-void BLAS_ZCOPY( integer_t const* n, dcomplex_t const* x,
- integer_t const* incx, dcomplex_t const* y, integer_t const* incy );
+void BLAS_SCOPY( const integer_t* n, const float* x, const integer_t* incx,
+ const float* y, const integer_t* incy );
+void BLAS_DCOPY( const integer_t* n, const double* x, const integer_t* incx,
+ const double* y, const integer_t* incy );
+void BLAS_CCOPY( const integer_t* n, const fcomplex_t* x,
+ const integer_t* incx, const fcomplex_t* y, const integer_t* incy );
+void BLAS_ZCOPY( const integer_t* n, const dcomplex_t* x,
+ const integer_t* incx, const dcomplex_t* y, const integer_t* incy );
 
 // Value-type variants of dot
-float BLAS_SDOT( integer_t const* n, float const* x, integer_t const* incx,
- float const* y, integer_t const* incy );
-double BLAS_DDOT( integer_t const* n, double const* x, integer_t const* incx,
- double const* y, integer_t const* incy );
+float BLAS_SDOT( const integer_t* n, const float* x, const integer_t* incx,
+ const float* y, const integer_t* incy );
+double BLAS_DDOT( const integer_t* n, const double* x, const integer_t* incx,
+ const double* y, const integer_t* incy );
 
 // Value-type variants of dotc
-fcomplex_t BLAS_CDOTC( integer_t const* n, fcomplex_t const* x,
- integer_t const* incx, fcomplex_t const* y, integer_t const* incy );
-dcomplex_t BLAS_ZDOTC( integer_t const* n, dcomplex_t const* x,
- integer_t const* incx, dcomplex_t const* y, integer_t const* incy );
+fcomplex_t BLAS_CDOTC( const integer_t* n, const fcomplex_t* x,
+ const integer_t* incx, const fcomplex_t* y, const integer_t* incy );
+dcomplex_t BLAS_ZDOTC( const integer_t* n, const dcomplex_t* x,
+ const integer_t* incx, const dcomplex_t* y, const integer_t* incy );
 
 // Value-type variants of dotu
-fcomplex_t BLAS_CDOTU( integer_t const* n, fcomplex_t const* x,
- integer_t const* incx, fcomplex_t const* y, integer_t const* incy );
-dcomplex_t BLAS_ZDOTU( integer_t const* n, dcomplex_t const* x,
- integer_t const* incx, dcomplex_t const* y, integer_t const* incy );
+fcomplex_t BLAS_CDOTU( const integer_t* n, const fcomplex_t* x,
+ const integer_t* incx, const fcomplex_t* y, const integer_t* incy );
+dcomplex_t BLAS_ZDOTU( const integer_t* n, const dcomplex_t* x,
+ const integer_t* incx, const dcomplex_t* y, const integer_t* incy );
 
 // Value-type variants of drot
-void BLAS_ZDROT( integer_t const* n, dcomplex_t const* cx,
- integer_t const* incx, dcomplex_t const* cy, integer_t const* incy,
- double const* c, double const* s );
+void BLAS_ZDROT( const integer_t* n, const dcomplex_t* cx,
+ const integer_t* incx, const dcomplex_t* cy, const integer_t* incy,
+ const double* c, const double* s );
 
 // Value-type variants of nrm2
-float BLAS_SNRM2( integer_t const* n, float const* x, integer_t const* incx );
-double BLAS_DNRM2( integer_t const* n, double const* x,
- integer_t const* incx );
+float BLAS_SNRM2( const integer_t* n, const float* x, const integer_t* incx );
+double BLAS_DNRM2( const integer_t* n, const double* x,
+ const integer_t* incx );
 
 // Value-type variants of rot
-void BLAS_SROT( integer_t const* n, float const* x, integer_t const* incx,
- float* y, integer_t const* incy, float const* c, float const* s );
-void BLAS_DROT( integer_t const* n, double const* x, integer_t const* incx,
- double* y, integer_t const* incy, double const* c, double const* s );
+void BLAS_SROT( const integer_t* n, const float* x, const integer_t* incx,
+ float* y, const integer_t* incy, const float* c, const float* s );
+void BLAS_DROT( const integer_t* n, const double* x, const integer_t* incx,
+ double* y, const integer_t* incy, const double* c, const double* s );
 
 // Value-type variants of rotg
 void BLAS_SROTG( float* a, float* b, float* c, float* s );
@@ -89,465 +89,465 @@
 void BLAS_ZROTG( dcomplex_t* a, dcomplex_t* b, double* c, dcomplex_t* s );
 
 // Value-type variants of rotm
-void BLAS_SROTM( integer_t const* n, float* x, integer_t const* incx,
- float* y, integer_t const* incy, float* param );
-void BLAS_DROTM( integer_t const* n, double* x, integer_t const* incx,
- double* y, integer_t const* incy, double* param );
+void BLAS_SROTM( const integer_t* n, float* x, const integer_t* incx,
+ float* y, const integer_t* incy, float* param );
+void BLAS_DROTM( const integer_t* n, double* x, const integer_t* incx,
+ double* y, const integer_t* incy, double* param );
 
 // Value-type variants of rotmg
-void BLAS_SROTMG( float* d1, float* d2, float* x1, float const* y1,
+void BLAS_SROTMG( float* d1, float* d2, float* x1, const float* y1,
         float* sparam );
-void BLAS_DROTMG( double* d1, double* d2, double* x1, double const* y1,
+void BLAS_DROTMG( double* d1, double* d2, double* x1, const double* y1,
         double* dparam );
 
 // Value-type variants of scal
-void BLAS_SSCAL( integer_t const* n, float const* a, float const* x,
- integer_t const* incx );
-void BLAS_DSCAL( integer_t const* n, double const* a, double const* x,
- integer_t const* incx );
-void BLAS_CSCAL( integer_t const* n, fcomplex_t const* a, fcomplex_t const* x,
- integer_t const* incx );
-void BLAS_ZSCAL( integer_t const* n, dcomplex_t const* a, dcomplex_t const* x,
- integer_t const* incx );
+void BLAS_SSCAL( const integer_t* n, const float* a, const float* x,
+ const integer_t* incx );
+void BLAS_DSCAL( const integer_t* n, const double* a, const double* x,
+ const integer_t* incx );
+void BLAS_CSCAL( const integer_t* n, const fcomplex_t* a, const fcomplex_t* x,
+ const integer_t* incx );
+void BLAS_ZSCAL( const integer_t* n, const dcomplex_t* a, const dcomplex_t* x,
+ const integer_t* incx );
 
 // Value-type variants of sdot
-double BLAS_DSDOT( integer_t const* n, float const* sx, integer_t const* incx,
- float const* sy, integer_t const* incy );
+double BLAS_DSDOT( const integer_t* n, const float* sx, const integer_t* incx,
+ const float* sy, const integer_t* incy );
 
 // Value-type variants of srot
-void BLAS_CSROT( integer_t const* n, fcomplex_t const* cx,
- integer_t const* incx, fcomplex_t const* cy, integer_t const* incy,
- float const* c, float const* s );
+void BLAS_CSROT( const integer_t* n, const fcomplex_t* cx,
+ const integer_t* incx, const fcomplex_t* cy, const integer_t* incy,
+ const float* c, const float* s );
 
 // Value-type variants of swap
-void BLAS_SSWAP( integer_t const* n, float* x, integer_t const* incx,
- float* y, integer_t const* incy );
-void BLAS_DSWAP( integer_t const* n, double* x, integer_t const* incx,
- double* y, integer_t const* incy );
-void BLAS_CSWAP( integer_t const* n, fcomplex_t* x, integer_t const* incx,
- fcomplex_t* y, integer_t const* incy );
-void BLAS_ZSWAP( integer_t const* n, dcomplex_t* x, integer_t const* incx,
- dcomplex_t* y, integer_t const* incy );
+void BLAS_SSWAP( const integer_t* n, float* x, const integer_t* incx,
+ float* y, const integer_t* incy );
+void BLAS_DSWAP( const integer_t* n, double* x, const integer_t* incx,
+ double* y, const integer_t* incy );
+void BLAS_CSWAP( const integer_t* n, fcomplex_t* x, const integer_t* incx,
+ fcomplex_t* y, const integer_t* incy );
+void BLAS_ZSWAP( const integer_t* n, dcomplex_t* x, const integer_t* incx,
+ dcomplex_t* y, const integer_t* incy );
 
 //
 // BLAS level2 routines
 //
 
 // Value-type variants of gbmv
-void BLAS_SGBMV( char const* trans, integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, float const* alpha,
- float const* a, integer_t const* lda, float const* x,
- integer_t const* incx, float const* beta, float* y,
- integer_t const* incy );
-void BLAS_DGBMV( char const* trans, integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, double const* alpha,
- double const* a, integer_t const* lda, double const* x,
- integer_t const* incx, double const* beta, double* y,
- integer_t const* incy );
-void BLAS_CGBMV( char const* trans, integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, fcomplex_t const* alpha,
- fcomplex_t const* a, integer_t const* lda, fcomplex_t const* x,
- integer_t const* incx, fcomplex_t const* beta, fcomplex_t* y,
- integer_t const* incy );
-void BLAS_ZGBMV( char const* trans, integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, dcomplex_t const* alpha,
- dcomplex_t const* a, integer_t const* lda, dcomplex_t const* x,
- integer_t const* incx, dcomplex_t const* beta, dcomplex_t* y,
- integer_t const* incy );
+void BLAS_SGBMV( const char* trans, const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const float* alpha,
+ const float* a, const integer_t* lda, const float* x,
+ const integer_t* incx, const float* beta, float* y,
+ const integer_t* incy );
+void BLAS_DGBMV( const char* trans, const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const double* alpha,
+ const double* a, const integer_t* lda, const double* x,
+ const integer_t* incx, const double* beta, double* y,
+ const integer_t* incy );
+void BLAS_CGBMV( const char* trans, const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const fcomplex_t* alpha,
+ const fcomplex_t* a, const integer_t* lda, const fcomplex_t* x,
+ const integer_t* incx, const fcomplex_t* beta, fcomplex_t* y,
+ const integer_t* incy );
+void BLAS_ZGBMV( const char* trans, const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const dcomplex_t* alpha,
+ const dcomplex_t* a, const integer_t* lda, const dcomplex_t* x,
+ const integer_t* incx, const dcomplex_t* beta, dcomplex_t* y,
+ const integer_t* incy );
 
 // Value-type variants of gemv
-void BLAS_SGEMV( char const* trans, integer_t const* m, integer_t const* n,
- float const* alpha, float const* a, integer_t const* lda,
- float const* x, integer_t const* incx, float const* beta, float* y,
- integer_t const* incy );
-void BLAS_DGEMV( char const* trans, integer_t const* m, integer_t const* n,
- double const* alpha, double const* a, integer_t const* lda,
- double const* x, integer_t const* incx, double const* beta, double* y,
- integer_t const* incy );
-void BLAS_CGEMV( char const* trans, integer_t const* m, integer_t const* n,
- fcomplex_t const* alpha, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t const* x, integer_t const* incx, fcomplex_t const* beta,
- fcomplex_t* y, integer_t const* incy );
-void BLAS_ZGEMV( char const* trans, integer_t const* m, integer_t const* n,
- dcomplex_t const* alpha, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t const* x, integer_t const* incx, dcomplex_t const* beta,
- dcomplex_t* y, integer_t const* incy );
+void BLAS_SGEMV( const char* trans, const integer_t* m, const integer_t* n,
+ const float* alpha, const float* a, const integer_t* lda,
+ const float* x, const integer_t* incx, const float* beta, float* y,
+ const integer_t* incy );
+void BLAS_DGEMV( const char* trans, const integer_t* m, const integer_t* n,
+ const double* alpha, const double* a, const integer_t* lda,
+ const double* x, const integer_t* incx, const double* beta, double* y,
+ const integer_t* incy );
+void BLAS_CGEMV( const char* trans, const integer_t* m, const integer_t* n,
+ const fcomplex_t* alpha, const fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* x, const integer_t* incx, const fcomplex_t* beta,
+ fcomplex_t* y, const integer_t* incy );
+void BLAS_ZGEMV( const char* trans, const integer_t* m, const integer_t* n,
+ const dcomplex_t* alpha, const dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* x, const integer_t* incx, const dcomplex_t* beta,
+ dcomplex_t* y, const integer_t* incy );
 
 // Value-type variants of ger
-void BLAS_SGER( integer_t const* m, integer_t const* n, float const* alpha,
- float const* x, integer_t const* incx, float const* y,
- integer_t const* incy, float* a, integer_t const* lda );
-void BLAS_DGER( integer_t const* m, integer_t const* n, double const* alpha,
- double const* x, integer_t const* incx, double const* y,
- integer_t const* incy, double* a, integer_t const* lda );
+void BLAS_SGER( const integer_t* m, const integer_t* n, const float* alpha,
+ const float* x, const integer_t* incx, const float* y,
+ const integer_t* incy, float* a, const integer_t* lda );
+void BLAS_DGER( const integer_t* m, const integer_t* n, const double* alpha,
+ const double* x, const integer_t* incx, const double* y,
+ const integer_t* incy, double* a, const integer_t* lda );
 
 // Value-type variants of gerc
-void BLAS_CGERC( integer_t const* m, integer_t const* n,
- fcomplex_t const* alpha, fcomplex_t const* x, integer_t const* incx,
- fcomplex_t const* y, integer_t const* incy, fcomplex_t* a,
- integer_t const* lda );
-void BLAS_ZGERC( integer_t const* m, integer_t const* n,
- dcomplex_t const* alpha, dcomplex_t const* x, integer_t const* incx,
- dcomplex_t const* y, integer_t const* incy, dcomplex_t* a,
- integer_t const* lda );
+void BLAS_CGERC( const integer_t* m, const integer_t* n,
+ const fcomplex_t* alpha, const fcomplex_t* x, const integer_t* incx,
+ const fcomplex_t* y, const integer_t* incy, fcomplex_t* a,
+ const integer_t* lda );
+void BLAS_ZGERC( const integer_t* m, const integer_t* n,
+ const dcomplex_t* alpha, const dcomplex_t* x, const integer_t* incx,
+ const dcomplex_t* y, const integer_t* incy, dcomplex_t* a,
+ const integer_t* lda );
 
 // Value-type variants of geru
-void BLAS_CGERU( integer_t const* m, integer_t const* n,
- fcomplex_t const* alpha, fcomplex_t const* x, integer_t const* incx,
- fcomplex_t const* y, integer_t const* incy, fcomplex_t* a,
- integer_t const* lda );
-void BLAS_ZGERU( integer_t const* m, integer_t const* n,
- dcomplex_t const* alpha, dcomplex_t const* x, integer_t const* incx,
- dcomplex_t const* y, integer_t const* incy, dcomplex_t* a,
- integer_t const* lda );
+void BLAS_CGERU( const integer_t* m, const integer_t* n,
+ const fcomplex_t* alpha, const fcomplex_t* x, const integer_t* incx,
+ const fcomplex_t* y, const integer_t* incy, fcomplex_t* a,
+ const integer_t* lda );
+void BLAS_ZGERU( const integer_t* m, const integer_t* n,
+ const dcomplex_t* alpha, const dcomplex_t* x, const integer_t* incx,
+ const dcomplex_t* y, const integer_t* incy, dcomplex_t* a,
+ const integer_t* lda );
 
 // Value-type variants of hbmv
-void BLAS_CHBMV( char const* uplo, integer_t const* n, integer_t const* k,
- fcomplex_t const* alpha, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t const* x, integer_t const* incx, fcomplex_t const* beta,
- fcomplex_t* y, integer_t const* incy );
-void BLAS_ZHBMV( char const* uplo, integer_t const* n, integer_t const* k,
- dcomplex_t const* alpha, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t const* x, integer_t const* incx, dcomplex_t const* beta,
- dcomplex_t* y, integer_t const* incy );
+void BLAS_CHBMV( const char* uplo, const integer_t* n, const integer_t* k,
+ const fcomplex_t* alpha, const fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* x, const integer_t* incx, const fcomplex_t* beta,
+ fcomplex_t* y, const integer_t* incy );
+void BLAS_ZHBMV( const char* uplo, const integer_t* n, const integer_t* k,
+ const dcomplex_t* alpha, const dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* x, const integer_t* incx, const dcomplex_t* beta,
+ dcomplex_t* y, const integer_t* incy );
 
 // Value-type variants of hemv
-void BLAS_CHEMV( char const* uplo, integer_t const* n,
- fcomplex_t const* alpha, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t const* x, integer_t const* incx, fcomplex_t const* beta,
- fcomplex_t* y, integer_t const* incy );
-void BLAS_ZHEMV( char const* uplo, integer_t const* n,
- dcomplex_t const* alpha, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t const* x, integer_t const* incx, dcomplex_t const* beta,
- dcomplex_t* y, integer_t const* incy );
+void BLAS_CHEMV( const char* uplo, const integer_t* n,
+ const fcomplex_t* alpha, const fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* x, const integer_t* incx, const fcomplex_t* beta,
+ fcomplex_t* y, const integer_t* incy );
+void BLAS_ZHEMV( const char* uplo, const integer_t* n,
+ const dcomplex_t* alpha, const dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* x, const integer_t* incx, const dcomplex_t* beta,
+ dcomplex_t* y, const integer_t* incy );
 
 // Value-type variants of her
-void BLAS_CHER( char const* uplo, integer_t const* n, float const* alpha,
- fcomplex_t const* x, integer_t const* incx, fcomplex_t* a,
- integer_t const* lda );
-void BLAS_ZHER( char const* uplo, integer_t const* n, double const* alpha,
- dcomplex_t const* x, integer_t const* incx, dcomplex_t* a,
- integer_t const* lda );
+void BLAS_CHER( const char* uplo, const integer_t* n, const float* alpha,
+ const fcomplex_t* x, const integer_t* incx, fcomplex_t* a,
+ const integer_t* lda );
+void BLAS_ZHER( const char* uplo, const integer_t* n, const double* alpha,
+ const dcomplex_t* x, const integer_t* incx, dcomplex_t* a,
+ const integer_t* lda );
 
 // Value-type variants of her2
-void BLAS_CHER2( char const* uplo, integer_t const* n,
- fcomplex_t const* alpha, fcomplex_t const* x, integer_t const* incx,
- fcomplex_t const* y, integer_t const* incy, fcomplex_t* a,
- integer_t const* lda );
-void BLAS_ZHER2( char const* uplo, integer_t const* n,
- dcomplex_t const* alpha, dcomplex_t const* x, integer_t const* incx,
- dcomplex_t const* y, integer_t const* incy, dcomplex_t* a,
- integer_t const* lda );
+void BLAS_CHER2( const char* uplo, const integer_t* n,
+ const fcomplex_t* alpha, const fcomplex_t* x, const integer_t* incx,
+ const fcomplex_t* y, const integer_t* incy, fcomplex_t* a,
+ const integer_t* lda );
+void BLAS_ZHER2( const char* uplo, const integer_t* n,
+ const dcomplex_t* alpha, const dcomplex_t* x, const integer_t* incx,
+ const dcomplex_t* y, const integer_t* incy, dcomplex_t* a,
+ const integer_t* lda );
 
 // Value-type variants of hpmv
-void BLAS_CHPMV( char const* uplo, integer_t const* n,
- fcomplex_t const* alpha, fcomplex_t const* ap, fcomplex_t const* x,
- integer_t const* incx, fcomplex_t const* beta, fcomplex_t* y,
- integer_t const* incy );
-void BLAS_ZHPMV( char const* uplo, integer_t const* n,
- dcomplex_t const* alpha, dcomplex_t const* ap, dcomplex_t const* x,
- integer_t const* incx, dcomplex_t const* beta, dcomplex_t* y,
- integer_t const* incy );
+void BLAS_CHPMV( const char* uplo, const integer_t* n,
+ const fcomplex_t* alpha, const fcomplex_t* ap, const fcomplex_t* x,
+ const integer_t* incx, const fcomplex_t* beta, fcomplex_t* y,
+ const integer_t* incy );
+void BLAS_ZHPMV( const char* uplo, const integer_t* n,
+ const dcomplex_t* alpha, const dcomplex_t* ap, const dcomplex_t* x,
+ const integer_t* incx, const dcomplex_t* beta, dcomplex_t* y,
+ const integer_t* incy );
 
 // Value-type variants of hpr
-void BLAS_CHPR( char const* uplo, integer_t const* n, float const* alpha,
- fcomplex_t const* x, integer_t const* incx, fcomplex_t* ap );
-void BLAS_ZHPR( char const* uplo, integer_t const* n, double const* alpha,
- dcomplex_t const* x, integer_t const* incx, dcomplex_t* ap );
+void BLAS_CHPR( const char* uplo, const integer_t* n, const float* alpha,
+ const fcomplex_t* x, const integer_t* incx, fcomplex_t* ap );
+void BLAS_ZHPR( const char* uplo, const integer_t* n, const double* alpha,
+ const dcomplex_t* x, const integer_t* incx, dcomplex_t* ap );
 
 // Value-type variants of hpr2
-void BLAS_CHPR2( char const* uplo, integer_t const* n,
- fcomplex_t const* alpha, fcomplex_t const* x, integer_t const* incx,
- fcomplex_t const* y, integer_t const* incy, fcomplex_t* ap );
-void BLAS_ZHPR2( char const* uplo, integer_t const* n,
- dcomplex_t const* alpha, dcomplex_t const* x, integer_t const* incx,
- dcomplex_t const* y, integer_t const* incy, dcomplex_t* ap );
+void BLAS_CHPR2( const char* uplo, const integer_t* n,
+ const fcomplex_t* alpha, const fcomplex_t* x, const integer_t* incx,
+ const fcomplex_t* y, const integer_t* incy, fcomplex_t* ap );
+void BLAS_ZHPR2( const char* uplo, const integer_t* n,
+ const dcomplex_t* alpha, const dcomplex_t* x, const integer_t* incx,
+ const dcomplex_t* y, const integer_t* incy, dcomplex_t* ap );
 
 // Value-type variants of sbmv
-void BLAS_SSBMV( char const* uplo, integer_t const* n, integer_t const* k,
- float const* alpha, float const* a, integer_t const* lda,
- float const* x, integer_t const* incx, float const* beta, float* y,
- integer_t const* incy );
-void BLAS_DSBMV( char const* uplo, integer_t const* n, integer_t const* k,
- double const* alpha, double const* a, integer_t const* lda,
- double const* x, integer_t const* incx, double const* beta, double* y,
- integer_t const* incy );
+void BLAS_SSBMV( const char* uplo, const integer_t* n, const integer_t* k,
+ const float* alpha, const float* a, const integer_t* lda,
+ const float* x, const integer_t* incx, const float* beta, float* y,
+ const integer_t* incy );
+void BLAS_DSBMV( const char* uplo, const integer_t* n, const integer_t* k,
+ const double* alpha, const double* a, const integer_t* lda,
+ const double* x, const integer_t* incx, const double* beta, double* y,
+ const integer_t* incy );
 
 // Value-type variants of spmv
-void BLAS_SSPMV( char const* uplo, integer_t const* n, float const* alpha,
- float const* ap, float const* x, integer_t const* incx,
- float const* beta, float* y, integer_t const* incy );
-void BLAS_DSPMV( char const* uplo, integer_t const* n, double const* alpha,
- double const* ap, double const* x, integer_t const* incx,
- double const* beta, double* y, integer_t const* incy );
+void BLAS_SSPMV( const char* uplo, const integer_t* n, const float* alpha,
+ const float* ap, const float* x, const integer_t* incx,
+ const float* beta, float* y, const integer_t* incy );
+void BLAS_DSPMV( const char* uplo, const integer_t* n, const double* alpha,
+ const double* ap, const double* x, const integer_t* incx,
+ const double* beta, double* y, const integer_t* incy );
 
 // Value-type variants of spr
-void BLAS_SSPR( char const* uplo, integer_t const* n, float const* alpha,
- float const* x, integer_t const* incx, float* ap );
-void BLAS_DSPR( char const* uplo, integer_t const* n, double const* alpha,
- double const* x, integer_t const* incx, double* ap );
+void BLAS_SSPR( const char* uplo, const integer_t* n, const float* alpha,
+ const float* x, const integer_t* incx, float* ap );
+void BLAS_DSPR( const char* uplo, const integer_t* n, const double* alpha,
+ const double* x, const integer_t* incx, double* ap );
 
 // Value-type variants of spr2
-void BLAS_SSPR2( char const* uplo, integer_t const* n, float const* alpha,
- float const* x, integer_t const* incx, float const* y,
- integer_t const* incy, float* ap );
-void BLAS_DSPR2( char const* uplo, integer_t const* n, double const* alpha,
- double const* x, integer_t const* incx, double const* y,
- integer_t const* incy, double* ap );
+void BLAS_SSPR2( const char* uplo, const integer_t* n, const float* alpha,
+ const float* x, const integer_t* incx, const float* y,
+ const integer_t* incy, float* ap );
+void BLAS_DSPR2( const char* uplo, const integer_t* n, const double* alpha,
+ const double* x, const integer_t* incx, const double* y,
+ const integer_t* incy, double* ap );
 
 // Value-type variants of symv
-void BLAS_SSYMV( char const* uplo, integer_t const* n, float const* alpha,
- float const* a, integer_t const* lda, float const* x,
- integer_t const* incx, float const* beta, float* y,
- integer_t const* incy );
-void BLAS_DSYMV( char const* uplo, integer_t const* n, double const* alpha,
- double const* a, integer_t const* lda, double const* x,
- integer_t const* incx, double const* beta, double* y,
- integer_t const* incy );
+void BLAS_SSYMV( const char* uplo, const integer_t* n, const float* alpha,
+ const float* a, const integer_t* lda, const float* x,
+ const integer_t* incx, const float* beta, float* y,
+ const integer_t* incy );
+void BLAS_DSYMV( const char* uplo, const integer_t* n, const double* alpha,
+ const double* a, const integer_t* lda, const double* x,
+ const integer_t* incx, const double* beta, double* y,
+ const integer_t* incy );
 
 // Value-type variants of syr
-void BLAS_SSYR( char const* uplo, integer_t const* n, float const* alpha,
- float const* x, integer_t const* incx, float* a,
- integer_t const* lda );
-void BLAS_DSYR( char const* uplo, integer_t const* n, double const* alpha,
- double const* x, integer_t const* incx, double* a,
- integer_t const* lda );
+void BLAS_SSYR( const char* uplo, const integer_t* n, const float* alpha,
+ const float* x, const integer_t* incx, float* a,
+ const integer_t* lda );
+void BLAS_DSYR( const char* uplo, const integer_t* n, const double* alpha,
+ const double* x, const integer_t* incx, double* a,
+ const integer_t* lda );
 
 // Value-type variants of syr2
-void BLAS_SSYR2( char const* uplo, integer_t const* n, float const* alpha,
- float const* x, integer_t const* incx, float const* y,
- integer_t const* incy, float* a, integer_t const* lda );
-void BLAS_DSYR2( char const* uplo, integer_t const* n, double const* alpha,
- double const* x, integer_t const* incx, double const* y,
- integer_t const* incy, double* a, integer_t const* lda );
+void BLAS_SSYR2( const char* uplo, const integer_t* n, const float* alpha,
+ const float* x, const integer_t* incx, const float* y,
+ const integer_t* incy, float* a, const integer_t* lda );
+void BLAS_DSYR2( const char* uplo, const integer_t* n, const double* alpha,
+ const double* x, const integer_t* incx, const double* y,
+ const integer_t* incy, double* a, const integer_t* lda );
 
 // Value-type variants of tbmv
-void BLAS_STBMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* k, float const* a,
- integer_t const* lda, float* x, integer_t const* incx );
-void BLAS_DTBMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* k, double const* a,
- integer_t const* lda, double* x, integer_t const* incx );
-void BLAS_CTBMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* k, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t* x, integer_t const* incx );
-void BLAS_ZTBMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* k, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t* x, integer_t const* incx );
+void BLAS_STBMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* k, const float* a,
+ const integer_t* lda, float* x, const integer_t* incx );
+void BLAS_DTBMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* k, const double* a,
+ const integer_t* lda, double* x, const integer_t* incx );
+void BLAS_CTBMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* k, const fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* x, const integer_t* incx );
+void BLAS_ZTBMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* k, const dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* x, const integer_t* incx );
 
 // Value-type variants of tbsv
-void BLAS_STBSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* k, float const* a,
- integer_t const* lda, float* x, integer_t const* incx );
-void BLAS_DTBSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* k, double const* a,
- integer_t const* lda, double* x, integer_t const* incx );
-void BLAS_CTBSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* k, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t* x, integer_t const* incx );
-void BLAS_ZTBSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* k, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t* x, integer_t const* incx );
+void BLAS_STBSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* k, const float* a,
+ const integer_t* lda, float* x, const integer_t* incx );
+void BLAS_DTBSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* k, const double* a,
+ const integer_t* lda, double* x, const integer_t* incx );
+void BLAS_CTBSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* k, const fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* x, const integer_t* incx );
+void BLAS_ZTBSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* k, const dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* x, const integer_t* incx );
 
 // Value-type variants of tpmv
-void BLAS_STPMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, float const* ap, float* x, integer_t const* incx );
-void BLAS_DTPMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, double const* ap, double* x,
- integer_t const* incx );
-void BLAS_CTPMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, fcomplex_t const* ap, fcomplex_t* x,
- integer_t const* incx );
-void BLAS_ZTPMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, dcomplex_t const* ap, dcomplex_t* x,
- integer_t const* incx );
+void BLAS_STPMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const float* ap, float* x, const integer_t* incx );
+void BLAS_DTPMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const double* ap, double* x,
+ const integer_t* incx );
+void BLAS_CTPMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const fcomplex_t* ap, fcomplex_t* x,
+ const integer_t* incx );
+void BLAS_ZTPMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const dcomplex_t* ap, dcomplex_t* x,
+ const integer_t* incx );
 
 // Value-type variants of tpsv
-void BLAS_STPSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, float const* ap, float* x, integer_t const* incx );
-void BLAS_DTPSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, double const* ap, double* x,
- integer_t const* incx );
-void BLAS_CTPSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, fcomplex_t const* ap, fcomplex_t* x,
- integer_t const* incx );
-void BLAS_ZTPSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, dcomplex_t const* ap, dcomplex_t* x,
- integer_t const* incx );
+void BLAS_STPSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const float* ap, float* x, const integer_t* incx );
+void BLAS_DTPSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const double* ap, double* x,
+ const integer_t* incx );
+void BLAS_CTPSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const fcomplex_t* ap, fcomplex_t* x,
+ const integer_t* incx );
+void BLAS_ZTPSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const dcomplex_t* ap, dcomplex_t* x,
+ const integer_t* incx );
 
 // Value-type variants of trmv
-void BLAS_STRMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, float const* a, integer_t const* lda, float* x,
- integer_t const* incx );
-void BLAS_DTRMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, double const* a, integer_t const* lda, double* x,
- integer_t const* incx );
-void BLAS_CTRMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t* x, integer_t const* incx );
-void BLAS_ZTRMV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t* x, integer_t const* incx );
+void BLAS_STRMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const float* a, const integer_t* lda, float* x,
+ const integer_t* incx );
+void BLAS_DTRMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const double* a, const integer_t* lda, double* x,
+ const integer_t* incx );
+void BLAS_CTRMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* x, const integer_t* incx );
+void BLAS_ZTRMV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* x, const integer_t* incx );
 
 // Value-type variants of trsv
-void BLAS_STRSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, float const* a, integer_t const* lda, float* x,
- integer_t const* incx );
-void BLAS_DTRSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, double const* a, integer_t const* lda, double* x,
- integer_t const* incx );
-void BLAS_CTRSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t* x, integer_t const* incx );
-void BLAS_ZTRSV( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t* x, integer_t const* incx );
+void BLAS_STRSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const float* a, const integer_t* lda, float* x,
+ const integer_t* incx );
+void BLAS_DTRSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const double* a, const integer_t* lda, double* x,
+ const integer_t* incx );
+void BLAS_CTRSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* x, const integer_t* incx );
+void BLAS_ZTRSV( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* x, const integer_t* incx );
 
 //
 // BLAS level3 routines
 //
 
 // Value-type variants of gemm
-void BLAS_SGEMM( char const* transa, char const* transb, integer_t const* m,
- integer_t const* n, integer_t const* k, float const* alpha,
- float const* a, integer_t const* lda, float const* b,
- integer_t const* ldb, float const* beta, float* c,
- integer_t const* ldc );
-void BLAS_DGEMM( char const* transa, char const* transb, integer_t const* m,
- integer_t const* n, integer_t const* k, double const* alpha,
- double const* a, integer_t const* lda, double const* b,
- integer_t const* ldb, double const* beta, double* c,
- integer_t const* ldc );
-void BLAS_CGEMM( char const* transa, char const* transb, integer_t const* m,
- integer_t const* n, integer_t const* k, fcomplex_t const* alpha,
- fcomplex_t const* a, integer_t const* lda, fcomplex_t const* b,
- integer_t const* ldb, fcomplex_t const* beta, fcomplex_t* c,
- integer_t const* ldc );
-void BLAS_ZGEMM( char const* transa, char const* transb, integer_t const* m,
- integer_t const* n, integer_t const* k, dcomplex_t const* alpha,
- dcomplex_t const* a, integer_t const* lda, dcomplex_t const* b,
- integer_t const* ldb, dcomplex_t const* beta, dcomplex_t* c,
- integer_t const* ldc );
+void BLAS_SGEMM( const char* transa, const char* transb, const integer_t* m,
+ const integer_t* n, const integer_t* k, const float* alpha,
+ const float* a, const integer_t* lda, const float* b,
+ const integer_t* ldb, const float* beta, float* c,
+ const integer_t* ldc );
+void BLAS_DGEMM( const char* transa, const char* transb, const integer_t* m,
+ const integer_t* n, const integer_t* k, const double* alpha,
+ const double* a, const integer_t* lda, const double* b,
+ const integer_t* ldb, const double* beta, double* c,
+ const integer_t* ldc );
+void BLAS_CGEMM( const char* transa, const char* transb, const integer_t* m,
+ const integer_t* n, const integer_t* k, const fcomplex_t* alpha,
+ const fcomplex_t* a, const integer_t* lda, const fcomplex_t* b,
+ const integer_t* ldb, const fcomplex_t* beta, fcomplex_t* c,
+ const integer_t* ldc );
+void BLAS_ZGEMM( const char* transa, const char* transb, const integer_t* m,
+ const integer_t* n, const integer_t* k, const dcomplex_t* alpha,
+ const dcomplex_t* a, const integer_t* lda, const dcomplex_t* b,
+ const integer_t* ldb, const dcomplex_t* beta, dcomplex_t* c,
+ const integer_t* ldc );
 
 // Value-type variants of hemm
-void BLAS_CHEMM( char const* side, char const* uplo, integer_t const* m,
- integer_t const* n, fcomplex_t const* alpha, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* b, integer_t const* ldb,
- fcomplex_t const* beta, fcomplex_t* c, integer_t const* ldc );
-void BLAS_ZHEMM( char const* side, char const* uplo, integer_t const* m,
- integer_t const* n, dcomplex_t const* alpha, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* b, integer_t const* ldb,
- dcomplex_t const* beta, dcomplex_t* c, integer_t const* ldc );
+void BLAS_CHEMM( const char* side, const char* uplo, const integer_t* m,
+ const integer_t* n, const fcomplex_t* alpha, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* b, const integer_t* ldb,
+ const fcomplex_t* beta, fcomplex_t* c, const integer_t* ldc );
+void BLAS_ZHEMM( const char* side, const char* uplo, const integer_t* m,
+ const integer_t* n, const dcomplex_t* alpha, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* b, const integer_t* ldb,
+ const dcomplex_t* beta, dcomplex_t* c, const integer_t* ldc );
 
 // Value-type variants of her2k
-void BLAS_CHER2K( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, fcomplex_t const* alpha, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* b, integer_t const* ldb,
- float const* beta, fcomplex_t* c, integer_t const* ldc );
-void BLAS_ZHER2K( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, dcomplex_t const* alpha, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* b, integer_t const* ldb,
- double const* beta, dcomplex_t* c, integer_t const* ldc );
+void BLAS_CHER2K( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const fcomplex_t* alpha, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* b, const integer_t* ldb,
+ const float* beta, fcomplex_t* c, const integer_t* ldc );
+void BLAS_ZHER2K( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const dcomplex_t* alpha, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* b, const integer_t* ldb,
+ const double* beta, dcomplex_t* c, const integer_t* ldc );
 
 // Value-type variants of herk
-void BLAS_CHERK( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, float const* alpha, fcomplex_t const* a,
- integer_t const* lda, float const* beta, fcomplex_t* c,
- integer_t const* ldc );
-void BLAS_ZHERK( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, double const* alpha, dcomplex_t const* a,
- integer_t const* lda, double const* beta, dcomplex_t* c,
- integer_t const* ldc );
+void BLAS_CHERK( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const float* alpha, const fcomplex_t* a,
+ const integer_t* lda, const float* beta, fcomplex_t* c,
+ const integer_t* ldc );
+void BLAS_ZHERK( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const double* alpha, const dcomplex_t* a,
+ const integer_t* lda, const double* beta, dcomplex_t* c,
+ const integer_t* ldc );
 
 // Value-type variants of symm
-void BLAS_SSYMM( char const* side, char const* uplo, integer_t const* m,
- integer_t const* n, float const* alpha, float const* a,
- integer_t const* lda, float const* b, integer_t const* ldb,
- float const* beta, float* c, integer_t const* ldc );
-void BLAS_DSYMM( char const* side, char const* uplo, integer_t const* m,
- integer_t const* n, double const* alpha, double const* a,
- integer_t const* lda, double const* b, integer_t const* ldb,
- double const* beta, double* c, integer_t const* ldc );
-void BLAS_CSYMM( char const* side, char const* uplo, integer_t const* m,
- integer_t const* n, fcomplex_t const* alpha, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* b, integer_t const* ldb,
- fcomplex_t const* beta, fcomplex_t* c, integer_t const* ldc );
-void BLAS_ZSYMM( char const* side, char const* uplo, integer_t const* m,
- integer_t const* n, dcomplex_t const* alpha, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* b, integer_t const* ldb,
- dcomplex_t const* beta, dcomplex_t* c, integer_t const* ldc );
+void BLAS_SSYMM( const char* side, const char* uplo, const integer_t* m,
+ const integer_t* n, const float* alpha, const float* a,
+ const integer_t* lda, const float* b, const integer_t* ldb,
+ const float* beta, float* c, const integer_t* ldc );
+void BLAS_DSYMM( const char* side, const char* uplo, const integer_t* m,
+ const integer_t* n, const double* alpha, const double* a,
+ const integer_t* lda, const double* b, const integer_t* ldb,
+ const double* beta, double* c, const integer_t* ldc );
+void BLAS_CSYMM( const char* side, const char* uplo, const integer_t* m,
+ const integer_t* n, const fcomplex_t* alpha, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* b, const integer_t* ldb,
+ const fcomplex_t* beta, fcomplex_t* c, const integer_t* ldc );
+void BLAS_ZSYMM( const char* side, const char* uplo, const integer_t* m,
+ const integer_t* n, const dcomplex_t* alpha, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* b, const integer_t* ldb,
+ const dcomplex_t* beta, dcomplex_t* c, const integer_t* ldc );
 
 // Value-type variants of syr2k
-void BLAS_SSYR2K( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, float const* alpha, float const* a,
- integer_t const* lda, float const* b, integer_t const* ldb,
- float const* beta, float* c, integer_t const* ldc );
-void BLAS_DSYR2K( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, double const* alpha, double const* a,
- integer_t const* lda, double const* b, integer_t const* ldb,
- double const* beta, double* c, integer_t const* ldc );
-void BLAS_CSYR2K( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, fcomplex_t const* alpha, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* b, integer_t const* ldb,
- fcomplex_t const* beta, fcomplex_t* c, integer_t const* ldc );
-void BLAS_ZSYR2K( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, dcomplex_t const* alpha, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* b, integer_t const* ldb,
- dcomplex_t const* beta, dcomplex_t* c, integer_t const* ldc );
+void BLAS_SSYR2K( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const float* alpha, const float* a,
+ const integer_t* lda, const float* b, const integer_t* ldb,
+ const float* beta, float* c, const integer_t* ldc );
+void BLAS_DSYR2K( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const double* alpha, const double* a,
+ const integer_t* lda, const double* b, const integer_t* ldb,
+ const double* beta, double* c, const integer_t* ldc );
+void BLAS_CSYR2K( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const fcomplex_t* alpha, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* b, const integer_t* ldb,
+ const fcomplex_t* beta, fcomplex_t* c, const integer_t* ldc );
+void BLAS_ZSYR2K( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const dcomplex_t* alpha, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* b, const integer_t* ldb,
+ const dcomplex_t* beta, dcomplex_t* c, const integer_t* ldc );
 
 // Value-type variants of syrk
-void BLAS_SSYRK( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, float const* alpha, float const* a,
- integer_t const* lda, float const* beta, float* c,
- integer_t const* ldc );
-void BLAS_DSYRK( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, double const* alpha, double const* a,
- integer_t const* lda, double const* beta, double* c,
- integer_t const* ldc );
-void BLAS_CSYRK( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, fcomplex_t const* alpha, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* beta, fcomplex_t* c,
- integer_t const* ldc );
-void BLAS_ZSYRK( char const* uplo, char const* trans, integer_t const* n,
- integer_t const* k, dcomplex_t const* alpha, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* beta, dcomplex_t* c,
- integer_t const* ldc );
+void BLAS_SSYRK( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const float* alpha, const float* a,
+ const integer_t* lda, const float* beta, float* c,
+ const integer_t* ldc );
+void BLAS_DSYRK( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const double* alpha, const double* a,
+ const integer_t* lda, const double* beta, double* c,
+ const integer_t* ldc );
+void BLAS_CSYRK( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const fcomplex_t* alpha, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* beta, fcomplex_t* c,
+ const integer_t* ldc );
+void BLAS_ZSYRK( const char* uplo, const char* trans, const integer_t* n,
+ const integer_t* k, const dcomplex_t* alpha, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* beta, dcomplex_t* c,
+ const integer_t* ldc );
 
 // Value-type variants of trmm
-void BLAS_STRMM( char const* side, char const* uplo, char const* transa,
- char const* diag, integer_t const* m, integer_t const* n,
- float const* alpha, float const* a, integer_t const* lda, float* b,
- integer_t const* ldb );
-void BLAS_DTRMM( char const* side, char const* uplo, char const* transa,
- char const* diag, integer_t const* m, integer_t const* n,
- double const* alpha, double const* a, integer_t const* lda, double* b,
- integer_t const* ldb );
-void BLAS_CTRMM( char const* side, char const* uplo, char const* transa,
- char const* diag, integer_t const* m, integer_t const* n,
- fcomplex_t const* alpha, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb );
-void BLAS_ZTRMM( char const* side, char const* uplo, char const* transa,
- char const* diag, integer_t const* m, integer_t const* n,
- dcomplex_t const* alpha, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb );
+void BLAS_STRMM( const char* side, const char* uplo, const char* transa,
+ const char* diag, const integer_t* m, const integer_t* n,
+ const float* alpha, const float* a, const integer_t* lda, float* b,
+ const integer_t* ldb );
+void BLAS_DTRMM( const char* side, const char* uplo, const char* transa,
+ const char* diag, const integer_t* m, const integer_t* n,
+ const double* alpha, const double* a, const integer_t* lda, double* b,
+ const integer_t* ldb );
+void BLAS_CTRMM( const char* side, const char* uplo, const char* transa,
+ const char* diag, const integer_t* m, const integer_t* n,
+ const fcomplex_t* alpha, const fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb );
+void BLAS_ZTRMM( const char* side, const char* uplo, const char* transa,
+ const char* diag, const integer_t* m, const integer_t* n,
+ const dcomplex_t* alpha, const dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb );
 
 // Value-type variants of trsm
-void BLAS_STRSM( char const* side, char const* uplo, char const* transa,
- char const* diag, integer_t const* m, integer_t const* n,
- float const* alpha, float const* a, integer_t const* lda, float* b,
- integer_t const* ldb );
-void BLAS_DTRSM( char const* side, char const* uplo, char const* transa,
- char const* diag, integer_t const* m, integer_t const* n,
- double const* alpha, double const* a, integer_t const* lda, double* b,
- integer_t const* ldb );
-void BLAS_CTRSM( char const* side, char const* uplo, char const* transa,
- char const* diag, integer_t const* m, integer_t const* n,
- fcomplex_t const* alpha, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb );
-void BLAS_ZTRSM( char const* side, char const* uplo, char const* transa,
- char const* diag, integer_t const* m, integer_t const* n,
- dcomplex_t const* alpha, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb );
+void BLAS_STRSM( const char* side, const char* uplo, const char* transa,
+ const char* diag, const integer_t* m, const integer_t* n,
+ const float* alpha, const float* a, const integer_t* lda, float* b,
+ const integer_t* ldb );
+void BLAS_DTRSM( const char* side, const char* uplo, const char* transa,
+ const char* diag, const integer_t* m, const integer_t* n,
+ const double* alpha, const double* a, const integer_t* lda, double* b,
+ const integer_t* ldb );
+void BLAS_CTRSM( const char* side, const char* uplo, const char* transa,
+ const char* diag, const integer_t* m, const integer_t* n,
+ const fcomplex_t* alpha, const fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb );
+void BLAS_ZTRSM( const char* side, const char* uplo, const char* transa,
+ const char* diag, const integer_t* m, const integer_t* n,
+ const dcomplex_t* alpha, const dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb );
 
 }
 

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/asum.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/asum.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/asum.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,10 +29,12 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline float asum( integer_t const n, float* x, integer_t const incx ) {
+ inline float asum( const integer_t n, float const* x,
+ const integer_t incx ) {
         return BLAS_SASUM( &n, x, &incx );
     }
- inline double asum( integer_t const n, double* x, integer_t const incx ) {
+ inline double asum( const integer_t n, double const* x,
+ const integer_t incx ) {
         return BLAS_DASUM( &n, x, &incx );
     }
 }
@@ -47,7 +49,7 @@
 
     // templated specialization
     template< typename VectorX >
- static return_type invoke( VectorX& x ) {
+ static return_type invoke( const VectorX& x ) {
         return detail::asum( traits::vector_size(x),
                 traits::vector_storage(x), traits::vector_stride(x) );
     }
@@ -57,7 +59,7 @@
 template< typename VectorX >
 inline typename asum_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-asum( VectorX& x ) {
+asum( const VectorX& x ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     return asum_impl< value_type >::invoke( x );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/axpy.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/axpy.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/axpy.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,23 +29,23 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void axpy( integer_t const n, float const a, float* x,
- integer_t const incx, float* y, integer_t const incy ) {
+ inline void axpy( const integer_t n, const float a, float const* x,
+ const integer_t incx, float* y, const integer_t incy ) {
         BLAS_SAXPY( &n, &a, x, &incx, y, &incy );
     }
- inline void axpy( integer_t const n, double const a, double* x,
- integer_t const incx, double* y, integer_t const incy ) {
+ inline void axpy( const integer_t n, const double a, double const* x,
+ const integer_t incx, double* y, const integer_t incy ) {
         BLAS_DAXPY( &n, &a, x, &incx, y, &incy );
     }
- inline void axpy( integer_t const n, traits::complex_f const a,
- traits::complex_f* x, integer_t const incx, traits::complex_f* y,
- integer_t const incy ) {
+ inline void axpy( const integer_t n, const traits::complex_f a,
+ traits::complex_f const* x, const integer_t incx,
+ traits::complex_f* y, const integer_t incy ) {
         BLAS_CAXPY( &n, traits::complex_ptr(&a), traits::complex_ptr(x),
                 &incx, traits::complex_ptr(y), &incy );
     }
- inline void axpy( integer_t const n, traits::complex_d const a,
- traits::complex_d* x, integer_t const incx, traits::complex_d* y,
- integer_t const incy ) {
+ inline void axpy( const integer_t n, const traits::complex_d a,
+ traits::complex_d const* x, const integer_t incx,
+ traits::complex_d* y, const integer_t incy ) {
         BLAS_ZAXPY( &n, traits::complex_ptr(&a), traits::complex_ptr(x),
                 &incx, traits::complex_ptr(y), &incy );
     }
@@ -61,7 +61,8 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY >
- static return_type invoke( value_type const a, VectorX& x, VectorY& y ) {
+ static return_type invoke( const value_type a, const VectorX& x,
+ VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -75,8 +76,8 @@
 template< typename VectorX, typename VectorY >
 inline typename axpy_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-axpy( typename traits::vector_traits< VectorX >::value_type const a,
- VectorX& x, VectorY& y ) {
+axpy( const typename traits::vector_traits< VectorX >::value_type a,
+ const VectorX& x, VectorY& y ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     axpy_impl< value_type >::invoke( a, x, y );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/copy.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/copy.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/copy.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,23 +29,23 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void copy( integer_t const n, float* x, integer_t const incx,
- float* y, integer_t const incy ) {
+ inline void copy( const integer_t n, float const* x, const integer_t incx,
+ float const* y, const integer_t incy ) {
         BLAS_SCOPY( &n, x, &incx, y, &incy );
     }
- inline void copy( integer_t const n, double* x, integer_t const incx,
- double* y, integer_t const incy ) {
+ inline void copy( const integer_t n, double const* x,
+ const integer_t incx, double const* y, const integer_t incy ) {
         BLAS_DCOPY( &n, x, &incx, y, &incy );
     }
- inline void copy( integer_t const n, traits::complex_f* x,
- integer_t const incx, traits::complex_f* y,
- integer_t const incy ) {
+ inline void copy( const integer_t n, traits::complex_f const* x,
+ const integer_t incx, traits::complex_f const* y,
+ const integer_t incy ) {
         BLAS_CCOPY( &n, traits::complex_ptr(x), &incx, traits::complex_ptr(y),
                 &incy );
     }
- inline void copy( integer_t const n, traits::complex_d* x,
- integer_t const incx, traits::complex_d* y,
- integer_t const incy ) {
+ inline void copy( const integer_t n, traits::complex_d const* x,
+ const integer_t incx, traits::complex_d const* y,
+ const integer_t incy ) {
         BLAS_ZCOPY( &n, traits::complex_ptr(x), &incx, traits::complex_ptr(y),
                 &incy );
     }
@@ -61,7 +61,7 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY >
- static return_type invoke( VectorX& x, VectorY& y ) {
+ static return_type invoke( const VectorX& x, const VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -75,7 +75,7 @@
 template< typename VectorX, typename VectorY >
 inline typename copy_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-copy( VectorX& x, VectorY& y ) {
+copy( const VectorX& x, const VectorY& y ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     copy_impl< value_type >::invoke( x, y );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dot.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dot.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dot.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,12 +29,12 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline float dot( integer_t const n, float* x, integer_t const incx,
- float* y, integer_t const incy ) {
+ inline float dot( const integer_t n, float const* x, const integer_t incx,
+ float const* y, const integer_t incy ) {
         return BLAS_SDOT( &n, x, &incx, y, &incy );
     }
- inline double dot( integer_t const n, double* x, integer_t const incx,
- double* y, integer_t const incy ) {
+ inline double dot( const integer_t n, double const* x,
+ const integer_t incx, double const* y, const integer_t incy ) {
         return BLAS_DDOT( &n, x, &incx, y, &incy );
     }
 }
@@ -49,7 +49,7 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY >
- static return_type invoke( VectorX& x, VectorY& y ) {
+ static return_type invoke( const VectorX& x, const VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -63,7 +63,7 @@
 template< typename VectorX, typename VectorY >
 inline typename dot_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-dot( VectorX& x, VectorY& y ) {
+dot( const VectorX& x, const VectorY& y ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     return dot_impl< value_type >::invoke( x, y );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dotc.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dotc.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dotc.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,15 +29,15 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline fcomplex_t dotc( integer_t const n, traits::complex_f* x,
- integer_t const incx, traits::complex_f* y,
- integer_t const incy ) {
+ inline fcomplex_t dotc( const integer_t n, traits::complex_f const* x,
+ const integer_t incx, traits::complex_f const* y,
+ const integer_t incy ) {
         return BLAS_CDOTC( &n, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(y), &incy );
     }
- inline dcomplex_t dotc( integer_t const n, traits::complex_d* x,
- integer_t const incx, traits::complex_d* y,
- integer_t const incy ) {
+ inline dcomplex_t dotc( const integer_t n, traits::complex_d const* x,
+ const integer_t incx, traits::complex_d const* y,
+ const integer_t incy ) {
         return BLAS_ZDOTC( &n, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(y), &incy );
     }
@@ -53,7 +53,7 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY >
- static return_type invoke( VectorX& x, VectorY& y ) {
+ static return_type invoke( const VectorX& x, const VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -67,7 +67,7 @@
 template< typename VectorX, typename VectorY >
 inline typename dotc_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-dotc( VectorX& x, VectorY& y ) {
+dotc( const VectorX& x, const VectorY& y ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     return dotc_impl< value_type >::invoke( x, y );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dotu.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dotu.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/dotu.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,15 +29,15 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline fcomplex_t dotu( integer_t const n, traits::complex_f* x,
- integer_t const incx, traits::complex_f* y,
- integer_t const incy ) {
+ inline fcomplex_t dotu( const integer_t n, traits::complex_f const* x,
+ const integer_t incx, traits::complex_f const* y,
+ const integer_t incy ) {
         return BLAS_CDOTU( &n, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(y), &incy );
     }
- inline dcomplex_t dotu( integer_t const n, traits::complex_d* x,
- integer_t const incx, traits::complex_d* y,
- integer_t const incy ) {
+ inline dcomplex_t dotu( const integer_t n, traits::complex_d const* x,
+ const integer_t incx, traits::complex_d const* y,
+ const integer_t incy ) {
         return BLAS_ZDOTU( &n, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(y), &incy );
     }
@@ -53,7 +53,7 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY >
- static return_type invoke( VectorX& x, VectorY& y ) {
+ static return_type invoke( const VectorX& x, const VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -67,7 +67,7 @@
 template< typename VectorX, typename VectorY >
 inline typename dotu_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-dotu( VectorX& x, VectorY& y ) {
+dotu( const VectorX& x, const VectorY& y ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     return dotu_impl< value_type >::invoke( x, y );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/drot.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/drot.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/drot.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,9 +29,9 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void drot( integer_t const n, traits::complex_d* cx,
- integer_t const incx, traits::complex_d* cy, integer_t const incy,
- double const c, double const s ) {
+ inline void drot( const integer_t n, traits::complex_d const* cx,
+ const integer_t incx, traits::complex_d const* cy,
+ const integer_t incy, const double c, const double s ) {
         BLAS_ZDROT( &n, traits::complex_ptr(cx), &incx,
                 traits::complex_ptr(cy), &incy, &c, &s );
     }
@@ -47,8 +47,8 @@
 
     // templated specialization
     template< typename VectorCX, typename VectorCY >
- static return_type invoke( integer_t const n, VectorCX& cx, VectorCY& cy,
- real_type const c, real_type const s ) {
+ static return_type invoke( const integer_t n, const VectorCX& cx,
+ const VectorCY& cy, const real_type c, const real_type s ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorCX >::value_type, typename traits::vector_traits<
                 VectorCY >::value_type >::value) );
@@ -62,9 +62,11 @@
 template< typename VectorCX, typename VectorCY >
 inline typename drot_impl< typename traits::vector_traits<
         VectorCX >::value_type >::return_type
-drot( integer_t const n, VectorCX& cx, VectorCY& cy,
- typename traits::vector_traits< VectorCX >::value_type const c,
- typename traits::vector_traits< VectorCX >::value_type const s ) {
+drot( const integer_t n, const VectorCX& cx, const VectorCY& cy,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorCX >::value_type >::real_type c,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorCX >::value_type >::real_type s ) {
     typedef typename traits::vector_traits< VectorCX >::value_type value_type;
     drot_impl< value_type >::invoke( n, cx, cy, c, s );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/nrm2.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/nrm2.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/nrm2.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,10 +29,12 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline float nrm2( integer_t const n, float* x, integer_t const incx ) {
+ inline float nrm2( const integer_t n, float const* x,
+ const integer_t incx ) {
         return BLAS_SNRM2( &n, x, &incx );
     }
- inline double nrm2( integer_t const n, double* x, integer_t const incx ) {
+ inline double nrm2( const integer_t n, double const* x,
+ const integer_t incx ) {
         return BLAS_DNRM2( &n, x, &incx );
     }
 }
@@ -47,7 +49,7 @@
 
     // templated specialization
     template< typename VectorX >
- static return_type invoke( VectorX& x ) {
+ static return_type invoke( const VectorX& x ) {
         return detail::nrm2( traits::vector_size(x),
                 traits::vector_storage(x), traits::vector_stride(x) );
     }
@@ -57,7 +59,7 @@
 template< typename VectorX >
 inline typename nrm2_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-nrm2( VectorX& x ) {
+nrm2( const VectorX& x ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     return nrm2_impl< value_type >::invoke( x );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rot.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rot.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rot.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,12 +29,12 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void rot( integer_t const n, float* x, integer_t const incx,
- float* y, integer_t const incy, float const c, float const s ) {
+ inline void rot( const integer_t n, float const* x, const integer_t incx,
+ float* y, const integer_t incy, const float c, const float s ) {
         BLAS_SROT( &n, x, &incx, y, &incy, &c, &s );
     }
- inline void rot( integer_t const n, double* x, integer_t const incx,
- double* y, integer_t const incy, double const c, double const s ) {
+ inline void rot( const integer_t n, double const* x, const integer_t incx,
+ double* y, const integer_t incy, const double c, const double s ) {
         BLAS_DROT( &n, x, &incx, y, &incy, &c, &s );
     }
 }
@@ -49,8 +49,8 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY >
- static return_type invoke( VectorX& x, VectorY& y, real_type const c,
- real_type const s ) {
+ static return_type invoke( const VectorX& x, VectorY& y,
+ const real_type c, const real_type s ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -64,9 +64,10 @@
 template< typename VectorX, typename VectorY >
 inline typename rot_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-rot( VectorX& x, VectorY& y, typename traits::vector_traits<
- VectorX >::value_type const c, typename traits::vector_traits<
- VectorX >::value_type const s ) {
+rot( const VectorX& x, VectorY& y, const typename traits::type_traits<
+ typename traits::vector_traits< VectorX >::value_type >::real_type c,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorX >::value_type >::real_type s ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     rot_impl< value_type >::invoke( x, y, c, s );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotg.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotg.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotg.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -69,8 +69,9 @@
         TODO >::value_type >::return_type
 rotg( typename traits::TODO_traits< TODO >::value_type& a,
         typename traits::TODO_traits< TODO >::value_type& b,
- typename traits::TODO_traits< TODO >::value_type& c,
- typename traits::TODO_traits< TODO >::value_type& s ) {
+ typename traits::type_traits< typename traits::TODO_traits<
+ TODO >::value_type >::real_type& c, typename traits::TODO_traits<
+ TODO >::value_type& s ) {
     typedef typename traits::TODO_traits< TODO >::value_type value_type;
     rotg_impl< value_type >::invoke( a, b, c, s );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotm.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotm.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotm.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,12 +29,12 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void rotm( integer_t const n, float* x, integer_t const incx,
- float* y, integer_t const incy, float* param ) {
+ inline void rotm( const integer_t n, float* x, const integer_t incx,
+ float* y, const integer_t incy, float* param ) {
         BLAS_SROTM( &n, x, &incx, y, &incy, param );
     }
- inline void rotm( integer_t const n, double* x, integer_t const incx,
- double* y, integer_t const incy, double* param ) {
+ inline void rotm( const integer_t n, double* x, const integer_t incx,
+ double* y, const integer_t incy, double* param ) {
         BLAS_DROTM( &n, x, &incx, y, &incy, param );
     }
 }
@@ -49,8 +49,8 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY, typename VectorPARAM >
- static return_type invoke( integer_t const n, VectorX& x,
- integer_t const incx, VectorY& y, integer_t const incy,
+ static return_type invoke( const integer_t n, VectorX& x,
+ const integer_t incx, VectorY& y, const integer_t incy,
             VectorPARAM& param ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
@@ -68,8 +68,8 @@
 template< typename VectorX, typename VectorY, typename VectorPARAM >
 inline typename rotm_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-rotm( integer_t const n, VectorX& x, integer_t const incx, VectorY& y,
- integer_t const incy, VectorPARAM& param ) {
+rotm( const integer_t n, VectorX& x, const integer_t incx, VectorY& y,
+ const integer_t incy, VectorPARAM& param ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     rotm_impl< value_type >::invoke( n, x, incx, y, incy, param );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotmg.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotmg.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/rotmg.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,11 +29,11 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void rotmg( float& d1, float& d2, float& x1, float const y1,
+ inline void rotmg( float& d1, float& d2, float& x1, const float y1,
             float* sparam ) {
         BLAS_SROTMG( &d1, &d2, &x1, &y1, sparam );
     }
- inline void rotmg( double& d1, double& d2, double& x1, double const y1,
+ inline void rotmg( double& d1, double& d2, double& x1, const double y1,
             double* dparam ) {
         BLAS_DROTMG( &d1, &d2, &x1, &y1, dparam );
     }
@@ -50,7 +50,7 @@
     // templated specialization
     template< typename VectorDPARAM >
     static return_type invoke( real_type& d1, real_type& d2, real_type& x1,
- real_type const y1, VectorDPARAM& dparam ) {
+ const real_type y1, VectorDPARAM& dparam ) {
         detail::rotmg( d1, d2, x1, y1, traits::vector_storage(dparam) );
     }
 };
@@ -59,11 +59,14 @@
 template< typename VectorDPARAM >
 inline typename rotmg_impl< typename traits::vector_traits<
         VectorDPARAM >::value_type >::return_type
-rotmg( typename traits::vector_traits< VectorDPARAM >::value_type& d1,
- typename traits::vector_traits< VectorDPARAM >::value_type& d2,
- typename traits::vector_traits< VectorDPARAM >::value_type& x1,
- typename traits::vector_traits< VectorDPARAM >::value_type const y1,
- VectorDPARAM& dparam ) {
+rotmg( typename traits::type_traits< typename traits::vector_traits<
+ VectorDPARAM >::value_type >::real_type& d1,
+ typename traits::type_traits< typename traits::vector_traits<
+ VectorDPARAM >::value_type >::real_type& d2,
+ typename traits::type_traits< typename traits::vector_traits<
+ VectorDPARAM >::value_type >::real_type& x1,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorDPARAM >::value_type >::real_type y1, VectorDPARAM& dparam ) {
     typedef typename traits::vector_traits<
             VectorDPARAM >::value_type value_type;
     rotmg_impl< value_type >::invoke( d1, d2, x1, y1, dparam );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/scal.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/scal.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/scal.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,21 +29,21 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void scal( integer_t const n, float const a, float* x,
- integer_t const incx ) {
+ inline void scal( const integer_t n, const float a, float const* x,
+ const integer_t incx ) {
         BLAS_SSCAL( &n, &a, x, &incx );
     }
- inline void scal( integer_t const n, double const a, double* x,
- integer_t const incx ) {
+ inline void scal( const integer_t n, const double a, double const* x,
+ const integer_t incx ) {
         BLAS_DSCAL( &n, &a, x, &incx );
     }
- inline void scal( integer_t const n, traits::complex_f const a,
- traits::complex_f* x, integer_t const incx ) {
+ inline void scal( const integer_t n, const traits::complex_f a,
+ traits::complex_f const* x, const integer_t incx ) {
         BLAS_CSCAL( &n, traits::complex_ptr(&a), traits::complex_ptr(x),
                 &incx );
     }
- inline void scal( integer_t const n, traits::complex_d const a,
- traits::complex_d* x, integer_t const incx ) {
+ inline void scal( const integer_t n, const traits::complex_d a,
+ traits::complex_d const* x, const integer_t incx ) {
         BLAS_ZSCAL( &n, traits::complex_ptr(&a), traits::complex_ptr(x),
                 &incx );
     }
@@ -59,7 +59,7 @@
 
     // templated specialization
     template< typename VectorX >
- static return_type invoke( value_type const a, VectorX& x ) {
+ static return_type invoke( const value_type a, const VectorX& x ) {
         detail::scal( traits::vector_size(x), a,
                 traits::vector_storage(x), traits::vector_stride(x) );
     }
@@ -69,8 +69,8 @@
 template< typename VectorX >
 inline typename scal_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-scal( typename traits::vector_traits< VectorX >::value_type const a,
- VectorX& x ) {
+scal( const typename traits::vector_traits< VectorX >::value_type a,
+ const VectorX& x ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     scal_impl< value_type >::invoke( a, x );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/sdot.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/sdot.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/sdot.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,8 +29,8 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline double sdot( integer_t const n, float* sx, integer_t const incx,
- float* sy, integer_t const incy ) {
+ inline double sdot( const integer_t n, float const* sx,
+ const integer_t incx, float const* sy, const integer_t incy ) {
         return BLAS_DSDOT( &n, sx, &incx, sy, &incy );
     }
 }
@@ -45,8 +45,8 @@
 
     // templated specialization
     template< typename VectorSX, typename VectorSY >
- static return_type invoke( integer_t const n, VectorSX& sx,
- integer_t const incx, VectorSY& sy, integer_t const incy ) {
+ static return_type invoke( const integer_t n, const VectorSX& sx,
+ const integer_t incx, const VectorSY& sy, const integer_t incy ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorSX >::value_type, typename traits::vector_traits<
                 VectorSY >::value_type >::value) );
@@ -59,8 +59,8 @@
 template< typename VectorSX, typename VectorSY >
 inline typename sdot_impl< typename traits::vector_traits<
         VectorSX >::value_type >::return_type
-sdot( integer_t const n, VectorSX& sx, integer_t const incx,
- VectorSY& sy, integer_t const incy ) {
+sdot( const integer_t n, const VectorSX& sx, const integer_t incx,
+ const VectorSY& sy, const integer_t incy ) {
     typedef typename traits::vector_traits< VectorSX >::value_type value_type;
     return sdot_impl< value_type >::invoke( n, sx, incx, sy, incy );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/srot.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/srot.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/srot.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,9 +29,9 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void srot( integer_t const n, traits::complex_f* cx,
- integer_t const incx, traits::complex_f* cy, integer_t const incy,
- float const c, float const s ) {
+ inline void srot( const integer_t n, traits::complex_f const* cx,
+ const integer_t incx, traits::complex_f const* cy,
+ const integer_t incy, const float c, const float s ) {
         BLAS_CSROT( &n, traits::complex_ptr(cx), &incx,
                 traits::complex_ptr(cy), &incy, &c, &s );
     }
@@ -47,8 +47,8 @@
 
     // templated specialization
     template< typename VectorCX, typename VectorCY >
- static return_type invoke( integer_t const n, VectorCX& cx, VectorCY& cy,
- real_type const c, real_type const s ) {
+ static return_type invoke( const integer_t n, const VectorCX& cx,
+ const VectorCY& cy, const real_type c, const real_type s ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorCX >::value_type, typename traits::vector_traits<
                 VectorCY >::value_type >::value) );
@@ -62,9 +62,11 @@
 template< typename VectorCX, typename VectorCY >
 inline typename srot_impl< typename traits::vector_traits<
         VectorCX >::value_type >::return_type
-srot( integer_t const n, VectorCX& cx, VectorCY& cy,
- typename traits::vector_traits< VectorCX >::value_type const c,
- typename traits::vector_traits< VectorCX >::value_type const s ) {
+srot( const integer_t n, const VectorCX& cx, const VectorCY& cy,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorCX >::value_type >::real_type c,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorCX >::value_type >::real_type s ) {
     typedef typename traits::vector_traits< VectorCX >::value_type value_type;
     srot_impl< value_type >::invoke( n, cx, cy, c, s );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/swap.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/swap.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level1/swap.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,23 +29,23 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void swap( integer_t const n, float* x, integer_t const incx,
- float* y, integer_t const incy ) {
+ inline void swap( const integer_t n, float* x, const integer_t incx,
+ float* y, const integer_t incy ) {
         BLAS_SSWAP( &n, x, &incx, y, &incy );
     }
- inline void swap( integer_t const n, double* x, integer_t const incx,
- double* y, integer_t const incy ) {
+ inline void swap( const integer_t n, double* x, const integer_t incx,
+ double* y, const integer_t incy ) {
         BLAS_DSWAP( &n, x, &incx, y, &incy );
     }
- inline void swap( integer_t const n, traits::complex_f* x,
- integer_t const incx, traits::complex_f* y,
- integer_t const incy ) {
+ inline void swap( const integer_t n, traits::complex_f* x,
+ const integer_t incx, traits::complex_f* y,
+ const integer_t incy ) {
         BLAS_CSWAP( &n, traits::complex_ptr(x), &incx, traits::complex_ptr(y),
                 &incy );
     }
- inline void swap( integer_t const n, traits::complex_d* x,
- integer_t const incx, traits::complex_d* y,
- integer_t const incy ) {
+ inline void swap( const integer_t n, traits::complex_d* x,
+ const integer_t incx, traits::complex_d* y,
+ const integer_t incy ) {
         BLAS_ZSWAP( &n, traits::complex_ptr(x), &incx, traits::complex_ptr(y),
                 &incy );
     }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gbmv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gbmv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gbmv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,36 +29,38 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void gbmv( char const trans, integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, float const alpha,
- float* a, integer_t const lda, float* x, integer_t const incx,
- float const beta, float* y, integer_t const incy ) {
+ inline void gbmv( const char trans, const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, const float alpha,
+ float const* a, const integer_t lda, float const* x,
+ const integer_t incx, const float beta, float* y,
+ const integer_t incy ) {
         BLAS_SGBMV( &trans, &m, &n, &kl, &ku, &alpha, a, &lda, x, &incx,
                 &beta, y, &incy );
     }
- inline void gbmv( char const trans, integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, double const alpha,
- double* a, integer_t const lda, double* x, integer_t const incx,
- double const beta, double* y, integer_t const incy ) {
+ inline void gbmv( const char trans, const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, const double alpha,
+ double const* a, const integer_t lda, double const* x,
+ const integer_t incx, const double beta, double* y,
+ const integer_t incy ) {
         BLAS_DGBMV( &trans, &m, &n, &kl, &ku, &alpha, a, &lda, x, &incx,
                 &beta, y, &incy );
     }
- inline void gbmv( char const trans, integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku,
- traits::complex_f const alpha, traits::complex_f* a,
- integer_t const lda, traits::complex_f* x, integer_t const incx,
- traits::complex_f const beta, traits::complex_f* y,
- integer_t const incy ) {
+ inline void gbmv( const char trans, const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku,
+ const traits::complex_f alpha, traits::complex_f const* a,
+ const integer_t lda, traits::complex_f const* x,
+ const integer_t incx, const traits::complex_f beta,
+ traits::complex_f* y, const integer_t incy ) {
         BLAS_CGBMV( &trans, &m, &n, &kl, &ku, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(&beta), traits::complex_ptr(y), &incy );
     }
- inline void gbmv( char const trans, integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku,
- traits::complex_d const alpha, traits::complex_d* a,
- integer_t const lda, traits::complex_d* x, integer_t const incx,
- traits::complex_d const beta, traits::complex_d* y,
- integer_t const incy ) {
+ inline void gbmv( const char trans, const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku,
+ const traits::complex_d alpha, traits::complex_d const* a,
+ const integer_t lda, traits::complex_d const* x,
+ const integer_t incx, const traits::complex_d beta,
+ traits::complex_d* y, const integer_t incy ) {
         BLAS_ZGBMV( &trans, &m, &n, &kl, &ku, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(&beta), traits::complex_ptr(y), &incy );
@@ -75,9 +77,9 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX, typename VectorY >
- static return_type invoke( char const trans, integer_t const kl,
- integer_t const ku, value_type const alpha, MatrixA& a,
- VectorX& x, value_type const beta, VectorY& y ) {
+ static return_type invoke( const char trans, const integer_t kl,
+ const integer_t ku, const value_type alpha, const MatrixA& a,
+ const VectorX& x, const value_type beta, VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -96,10 +98,11 @@
 template< typename MatrixA, typename VectorX, typename VectorY >
 inline typename gbmv_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-gbmv( char const trans, integer_t const kl, integer_t const ku,
- typename traits::matrix_traits< MatrixA >::value_type const alpha,
- MatrixA& a, VectorX& x, typename traits::matrix_traits<
- MatrixA >::value_type const beta, VectorY& y ) {
+gbmv( const char trans, const integer_t kl, const integer_t ku,
+ const typename traits::matrix_traits< MatrixA >::value_type alpha,
+ const MatrixA& a, const VectorX& x,
+ const typename traits::matrix_traits< MatrixA >::value_type beta,
+ VectorY& y ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     gbmv_impl< value_type >::invoke( trans, kl, ku, alpha, a, x, beta,
             y );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gemv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gemv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gemv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,34 +29,34 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void gemv( char const trans, integer_t const m, integer_t const n,
- float const alpha, float* a, integer_t const lda, float* x,
- integer_t const incx, float const beta, float* y,
- integer_t const incy ) {
+ inline void gemv( const char trans, const integer_t m, const integer_t n,
+ const float alpha, float const* a, const integer_t lda,
+ float const* x, const integer_t incx, const float beta, float* y,
+ const integer_t incy ) {
         BLAS_SGEMV( &trans, &m, &n, &alpha, a, &lda, x, &incx, &beta, y,
                 &incy );
     }
- inline void gemv( char const trans, integer_t const m, integer_t const n,
- double const alpha, double* a, integer_t const lda, double* x,
- integer_t const incx, double const beta, double* y,
- integer_t const incy ) {
+ inline void gemv( const char trans, const integer_t m, const integer_t n,
+ const double alpha, double const* a, const integer_t lda,
+ double const* x, const integer_t incx, const double beta,
+ double* y, const integer_t incy ) {
         BLAS_DGEMV( &trans, &m, &n, &alpha, a, &lda, x, &incx, &beta, y,
                 &incy );
     }
- inline void gemv( char const trans, integer_t const m, integer_t const n,
- traits::complex_f const alpha, traits::complex_f* a,
- integer_t const lda, traits::complex_f* x, integer_t const incx,
- traits::complex_f const beta, traits::complex_f* y,
- integer_t const incy ) {
+ inline void gemv( const char trans, const integer_t m, const integer_t n,
+ const traits::complex_f alpha, traits::complex_f const* a,
+ const integer_t lda, traits::complex_f const* x,
+ const integer_t incx, const traits::complex_f beta,
+ traits::complex_f* y, const integer_t incy ) {
         BLAS_CGEMV( &trans, &m, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(&beta), traits::complex_ptr(y), &incy );
     }
- inline void gemv( char const trans, integer_t const m, integer_t const n,
- traits::complex_d const alpha, traits::complex_d* a,
- integer_t const lda, traits::complex_d* x, integer_t const incx,
- traits::complex_d const beta, traits::complex_d* y,
- integer_t const incy ) {
+ inline void gemv( const char trans, const integer_t m, const integer_t n,
+ const traits::complex_d alpha, traits::complex_d const* a,
+ const integer_t lda, traits::complex_d const* x,
+ const integer_t incx, const traits::complex_d beta,
+ traits::complex_d* y, const integer_t incy ) {
         BLAS_ZGEMV( &trans, &m, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(&beta), traits::complex_ptr(y), &incy );
@@ -80,8 +80,9 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX, typename VectorY >
- static return_type invoke( char const trans, value_type const alpha,
- MatrixA& a, VectorX& x, value_type const beta, VectorY& y ) {
+ static return_type invoke( const char trans, const value_type alpha,
+ const MatrixA& a, const VectorX& x, const value_type beta,
+ VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -100,9 +101,9 @@
 template< typename MatrixA, typename VectorX, typename VectorY >
 inline typename gemv_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-gemv( char const trans, typename traits::matrix_traits<
- MatrixA >::value_type const alpha, MatrixA& a, VectorX& x,
- typename traits::matrix_traits< MatrixA >::value_type const beta,
+gemv( const char trans, const typename traits::matrix_traits<
+ MatrixA >::value_type alpha, const MatrixA& a, const VectorX& x,
+ const typename traits::matrix_traits< MatrixA >::value_type beta,
         VectorY& y ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     gemv_impl< value_type >::invoke( trans, alpha, a, x, beta, y );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/ger.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/ger.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/ger.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,14 +29,14 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void ger( integer_t const m, integer_t const n, float const alpha,
- float* x, integer_t const incx, float* y, integer_t const incy,
- float* a, integer_t const lda ) {
+ inline void ger( const integer_t m, const integer_t n, const float alpha,
+ float const* x, const integer_t incx, float const* y,
+ const integer_t incy, float* a, const integer_t lda ) {
         BLAS_SGER( &m, &n, &alpha, x, &incx, y, &incy, a, &lda );
     }
- inline void ger( integer_t const m, integer_t const n, double const alpha,
- double* x, integer_t const incx, double* y, integer_t const incy,
- double* a, integer_t const lda ) {
+ inline void ger( const integer_t m, const integer_t n, const double alpha,
+ double const* x, const integer_t incx, double const* y,
+ const integer_t incy, double* a, const integer_t lda ) {
         BLAS_DGER( &m, &n, &alpha, x, &incx, y, &incy, a, &lda );
     }
 }
@@ -51,8 +51,8 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY, typename MatrixA >
- static return_type invoke( real_type const alpha, VectorX& x, VectorY& y,
- MatrixA& a ) {
+ static return_type invoke( const real_type alpha, const VectorX& x,
+ const VectorY& y, MatrixA& a ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -71,8 +71,10 @@
 template< typename VectorX, typename VectorY, typename MatrixA >
 inline typename ger_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-ger( typename traits::vector_traits< VectorX >::value_type const alpha,
- VectorX& x, VectorY& y, MatrixA& a ) {
+ger( const typename traits::type_traits<
+ typename traits::vector_traits<
+ VectorX >::value_type >::real_type alpha, const VectorX& x,
+ const VectorY& y, MatrixA& a ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     ger_impl< value_type >::invoke( alpha, x, y, a );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gerc.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gerc.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/gerc.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,18 +29,18 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void gerc( integer_t const m, integer_t const n,
- traits::complex_f const alpha, traits::complex_f* x,
- integer_t const incx, traits::complex_f* y, integer_t const incy,
- traits::complex_f* a, integer_t const lda ) {
+ inline void gerc( const integer_t m, const integer_t n,
+ const traits::complex_f alpha, traits::complex_f const* x,
+ const integer_t incx, traits::complex_f const* y,
+ const integer_t incy, traits::complex_f* a, const integer_t lda ) {
         BLAS_CGERC( &m, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(x), &incx, traits::complex_ptr(y), &incy,
                 traits::complex_ptr(a), &lda );
     }
- inline void gerc( integer_t const m, integer_t const n,
- traits::complex_d const alpha, traits::complex_d* x,
- integer_t const incx, traits::complex_d* y, integer_t const incy,
- traits::complex_d* a, integer_t const lda ) {
+ inline void gerc( const integer_t m, const integer_t n,
+ const traits::complex_d alpha, traits::complex_d const* x,
+ const integer_t incx, traits::complex_d const* y,
+ const integer_t incy, traits::complex_d* a, const integer_t lda ) {
         BLAS_ZGERC( &m, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(x), &incx, traits::complex_ptr(y), &incy,
                 traits::complex_ptr(a), &lda );
@@ -57,8 +57,8 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY, typename MatrixA >
- static return_type invoke( value_type const alpha, VectorX& x, VectorY& y,
- MatrixA& a ) {
+ static return_type invoke( const value_type alpha, const VectorX& x,
+ const VectorY& y, MatrixA& a ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -77,8 +77,8 @@
 template< typename VectorX, typename VectorY, typename MatrixA >
 inline typename gerc_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-gerc( typename traits::vector_traits< VectorX >::value_type const alpha,
- VectorX& x, VectorY& y, MatrixA& a ) {
+gerc( const typename traits::vector_traits< VectorX >::value_type alpha,
+ const VectorX& x, const VectorY& y, MatrixA& a ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     gerc_impl< value_type >::invoke( alpha, x, y, a );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/geru.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/geru.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/geru.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,18 +29,18 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void geru( integer_t const m, integer_t const n,
- traits::complex_f const alpha, traits::complex_f* x,
- integer_t const incx, traits::complex_f* y, integer_t const incy,
- traits::complex_f* a, integer_t const lda ) {
+ inline void geru( const integer_t m, const integer_t n,
+ const traits::complex_f alpha, traits::complex_f const* x,
+ const integer_t incx, traits::complex_f const* y,
+ const integer_t incy, traits::complex_f* a, const integer_t lda ) {
         BLAS_CGERU( &m, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(x), &incx, traits::complex_ptr(y), &incy,
                 traits::complex_ptr(a), &lda );
     }
- inline void geru( integer_t const m, integer_t const n,
- traits::complex_d const alpha, traits::complex_d* x,
- integer_t const incx, traits::complex_d* y, integer_t const incy,
- traits::complex_d* a, integer_t const lda ) {
+ inline void geru( const integer_t m, const integer_t n,
+ const traits::complex_d alpha, traits::complex_d const* x,
+ const integer_t incx, traits::complex_d const* y,
+ const integer_t incy, traits::complex_d* a, const integer_t lda ) {
         BLAS_ZGERU( &m, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(x), &incx, traits::complex_ptr(y), &incy,
                 traits::complex_ptr(a), &lda );
@@ -57,8 +57,8 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY, typename MatrixA >
- static return_type invoke( value_type const alpha, VectorX& x, VectorY& y,
- MatrixA& a ) {
+ static return_type invoke( const value_type alpha, const VectorX& x,
+ const VectorY& y, MatrixA& a ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -77,8 +77,8 @@
 template< typename VectorX, typename VectorY, typename MatrixA >
 inline typename geru_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-geru( typename traits::vector_traits< VectorX >::value_type const alpha,
- VectorX& x, VectorY& y, MatrixA& a ) {
+geru( const typename traits::vector_traits< VectorX >::value_type alpha,
+ const VectorX& x, const VectorY& y, MatrixA& a ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     geru_impl< value_type >::invoke( alpha, x, y, a );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hbmv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hbmv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hbmv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,20 +29,20 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void hbmv( char const uplo, integer_t const n, integer_t const k,
- traits::complex_f const alpha, traits::complex_f* a,
- integer_t const lda, traits::complex_f* x, integer_t const incx,
- traits::complex_f const beta, traits::complex_f* y,
- integer_t const incy ) {
+ inline void hbmv( const char uplo, const integer_t n, const integer_t k,
+ const traits::complex_f alpha, traits::complex_f const* a,
+ const integer_t lda, traits::complex_f const* x,
+ const integer_t incx, const traits::complex_f beta,
+ traits::complex_f* y, const integer_t incy ) {
         BLAS_CHBMV( &uplo, &n, &k, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(&beta), traits::complex_ptr(y), &incy );
     }
- inline void hbmv( char const uplo, integer_t const n, integer_t const k,
- traits::complex_d const alpha, traits::complex_d* a,
- integer_t const lda, traits::complex_d* x, integer_t const incx,
- traits::complex_d const beta, traits::complex_d* y,
- integer_t const incy ) {
+ inline void hbmv( const char uplo, const integer_t n, const integer_t k,
+ const traits::complex_d alpha, traits::complex_d const* a,
+ const integer_t lda, traits::complex_d const* x,
+ const integer_t incx, const traits::complex_d beta,
+ traits::complex_d* y, const integer_t incy ) {
         BLAS_ZHBMV( &uplo, &n, &k, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(&beta), traits::complex_ptr(y), &incy );
@@ -59,8 +59,9 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX, typename VectorY >
- static return_type invoke( integer_t const k, value_type const alpha,
- MatrixA& a, VectorX& x, value_type const beta, VectorY& y ) {
+ static return_type invoke( const integer_t k, const value_type alpha,
+ const MatrixA& a, const VectorX& x, const value_type beta,
+ VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -79,9 +80,9 @@
 template< typename MatrixA, typename VectorX, typename VectorY >
 inline typename hbmv_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-hbmv( integer_t const k, typename traits::matrix_traits<
- MatrixA >::value_type const alpha, MatrixA& a, VectorX& x,
- typename traits::matrix_traits< MatrixA >::value_type const beta,
+hbmv( const integer_t k, const typename traits::matrix_traits<
+ MatrixA >::value_type alpha, const MatrixA& a, const VectorX& x,
+ const typename traits::matrix_traits< MatrixA >::value_type beta,
         VectorY& y ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     hbmv_impl< value_type >::invoke( k, alpha, a, x, beta, y );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hemv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hemv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hemv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,20 +29,20 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void hemv( char const uplo, integer_t const n,
- traits::complex_f const alpha, traits::complex_f* a,
- integer_t const lda, traits::complex_f* x, integer_t const incx,
- traits::complex_f const beta, traits::complex_f* y,
- integer_t const incy ) {
+ inline void hemv( const char uplo, const integer_t n,
+ const traits::complex_f alpha, traits::complex_f const* a,
+ const integer_t lda, traits::complex_f const* x,
+ const integer_t incx, const traits::complex_f beta,
+ traits::complex_f* y, const integer_t incy ) {
         BLAS_CHEMV( &uplo, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(&beta), traits::complex_ptr(y), &incy );
     }
- inline void hemv( char const uplo, integer_t const n,
- traits::complex_d const alpha, traits::complex_d* a,
- integer_t const lda, traits::complex_d* x, integer_t const incx,
- traits::complex_d const beta, traits::complex_d* y,
- integer_t const incy ) {
+ inline void hemv( const char uplo, const integer_t n,
+ const traits::complex_d alpha, traits::complex_d const* a,
+ const integer_t lda, traits::complex_d const* x,
+ const integer_t incx, const traits::complex_d beta,
+ traits::complex_d* y, const integer_t incy ) {
         BLAS_ZHEMV( &uplo, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(&beta), traits::complex_ptr(y), &incy );
@@ -59,8 +59,8 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX, typename VectorY >
- static return_type invoke( value_type const alpha, MatrixA& a, VectorX& x,
- value_type const beta, VectorY& y ) {
+ static return_type invoke( const value_type alpha, const MatrixA& a,
+ const VectorX& x, const value_type beta, VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -79,9 +79,10 @@
 template< typename MatrixA, typename VectorX, typename VectorY >
 inline typename hemv_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-hemv( typename traits::matrix_traits< MatrixA >::value_type const alpha,
- MatrixA& a, VectorX& x, typename traits::matrix_traits<
- MatrixA >::value_type const beta, VectorY& y ) {
+hemv( const typename traits::matrix_traits< MatrixA >::value_type alpha,
+ const MatrixA& a, const VectorX& x,
+ const typename traits::matrix_traits< MatrixA >::value_type beta,
+ VectorY& y ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     hemv_impl< value_type >::invoke( alpha, a, x, beta, y );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/her.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/her.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/her.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,15 +29,15 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void her( char const uplo, integer_t const n, float const alpha,
- traits::complex_f* x, integer_t const incx, traits::complex_f* a,
- integer_t const lda ) {
+ inline void her( const char uplo, const integer_t n, const float alpha,
+ traits::complex_f const* x, const integer_t incx,
+ traits::complex_f* a, const integer_t lda ) {
         BLAS_CHER( &uplo, &n, &alpha, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(a), &lda );
     }
- inline void her( char const uplo, integer_t const n, double const alpha,
- traits::complex_d* x, integer_t const incx, traits::complex_d* a,
- integer_t const lda ) {
+ inline void her( const char uplo, const integer_t n, const double alpha,
+ traits::complex_d const* x, const integer_t incx,
+ traits::complex_d* a, const integer_t lda ) {
         BLAS_ZHER( &uplo, &n, &alpha, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(a), &lda );
     }
@@ -53,7 +53,7 @@
 
     // templated specialization
     template< typename VectorX, typename MatrixA >
- static return_type invoke( real_type const alpha, VectorX& x,
+ static return_type invoke( const real_type alpha, const VectorX& x,
             MatrixA& a ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::matrix_traits<
@@ -69,8 +69,10 @@
 template< typename VectorX, typename MatrixA >
 inline typename her_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-her( typename traits::vector_traits< VectorX >::value_type const alpha,
- VectorX& x, MatrixA& a ) {
+her( const typename traits::type_traits<
+ typename traits::vector_traits<
+ VectorX >::value_type >::real_type alpha, const VectorX& x,
+ MatrixA& a ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     her_impl< value_type >::invoke( alpha, x, a );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/her2.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/her2.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/her2.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,18 +29,18 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void her2( char const uplo, integer_t const n,
- traits::complex_f const alpha, traits::complex_f* x,
- integer_t const incx, traits::complex_f* y, integer_t const incy,
- traits::complex_f* a, integer_t const lda ) {
+ inline void her2( const char uplo, const integer_t n,
+ const traits::complex_f alpha, traits::complex_f const* x,
+ const integer_t incx, traits::complex_f const* y,
+ const integer_t incy, traits::complex_f* a, const integer_t lda ) {
         BLAS_CHER2( &uplo, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(x), &incx, traits::complex_ptr(y), &incy,
                 traits::complex_ptr(a), &lda );
     }
- inline void her2( char const uplo, integer_t const n,
- traits::complex_d const alpha, traits::complex_d* x,
- integer_t const incx, traits::complex_d* y, integer_t const incy,
- traits::complex_d* a, integer_t const lda ) {
+ inline void her2( const char uplo, const integer_t n,
+ const traits::complex_d alpha, traits::complex_d const* x,
+ const integer_t incx, traits::complex_d const* y,
+ const integer_t incy, traits::complex_d* a, const integer_t lda ) {
         BLAS_ZHER2( &uplo, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(x), &incx, traits::complex_ptr(y), &incy,
                 traits::complex_ptr(a), &lda );
@@ -57,8 +57,8 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY, typename MatrixA >
- static return_type invoke( value_type const alpha, VectorX& x, VectorY& y,
- MatrixA& a ) {
+ static return_type invoke( const value_type alpha, const VectorX& x,
+ const VectorY& y, MatrixA& a ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -77,8 +77,8 @@
 template< typename VectorX, typename VectorY, typename MatrixA >
 inline typename her2_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-her2( typename traits::vector_traits< VectorX >::value_type const alpha,
- VectorX& x, VectorY& y, MatrixA& a ) {
+her2( const typename traits::vector_traits< VectorX >::value_type alpha,
+ const VectorX& x, const VectorY& y, MatrixA& a ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     her2_impl< value_type >::invoke( alpha, x, y, a );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpmv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpmv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpmv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,20 +29,20 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void hpmv( char const uplo, integer_t const n,
- traits::complex_f const alpha, traits::complex_f* ap,
- traits::complex_f* x, integer_t const incx,
- traits::complex_f const beta, traits::complex_f* y,
- integer_t const incy ) {
+ inline void hpmv( const char uplo, const integer_t n,
+ const traits::complex_f alpha, traits::complex_f const* ap,
+ traits::complex_f const* x, const integer_t incx,
+ const traits::complex_f beta, traits::complex_f* y,
+ const integer_t incy ) {
         BLAS_CHPMV( &uplo, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(ap), traits::complex_ptr(x), &incx,
                 traits::complex_ptr(&beta), traits::complex_ptr(y), &incy );
     }
- inline void hpmv( char const uplo, integer_t const n,
- traits::complex_d const alpha, traits::complex_d* ap,
- traits::complex_d* x, integer_t const incx,
- traits::complex_d const beta, traits::complex_d* y,
- integer_t const incy ) {
+ inline void hpmv( const char uplo, const integer_t n,
+ const traits::complex_d alpha, traits::complex_d const* ap,
+ traits::complex_d const* x, const integer_t incx,
+ const traits::complex_d beta, traits::complex_d* y,
+ const integer_t incy ) {
         BLAS_ZHPMV( &uplo, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(ap), traits::complex_ptr(x), &incx,
                 traits::complex_ptr(&beta), traits::complex_ptr(y), &incy );
@@ -59,8 +59,8 @@
 
     // templated specialization
     template< typename MatrixAP, typename VectorX, typename VectorY >
- static return_type invoke( value_type const alpha, MatrixAP& ap,
- VectorX& x, value_type const beta, VectorY& y ) {
+ static return_type invoke( const value_type alpha, const MatrixAP& ap,
+ const VectorX& x, const value_type beta, VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAP >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -79,9 +79,9 @@
 template< typename MatrixAP, typename VectorX, typename VectorY >
 inline typename hpmv_impl< typename traits::matrix_traits<
         MatrixAP >::value_type >::return_type
-hpmv( typename traits::matrix_traits<
- MatrixAP >::value_type const alpha, MatrixAP& ap, VectorX& x,
- typename traits::matrix_traits< MatrixAP >::value_type const beta,
+hpmv( const typename traits::matrix_traits<
+ MatrixAP >::value_type alpha, const MatrixAP& ap, const VectorX& x,
+ const typename traits::matrix_traits< MatrixAP >::value_type beta,
         VectorY& y ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     hpmv_impl< value_type >::invoke( alpha, ap, x, beta, y );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpr.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,14 +29,14 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void hpr( char const uplo, integer_t const n, float const alpha,
- traits::complex_f* x, integer_t const incx,
+ inline void hpr( const char uplo, const integer_t n, const float alpha,
+ traits::complex_f const* x, const integer_t incx,
             traits::complex_f* ap ) {
         BLAS_CHPR( &uplo, &n, &alpha, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(ap) );
     }
- inline void hpr( char const uplo, integer_t const n, double const alpha,
- traits::complex_d* x, integer_t const incx,
+ inline void hpr( const char uplo, const integer_t n, const double alpha,
+ traits::complex_d const* x, const integer_t incx,
             traits::complex_d* ap ) {
         BLAS_ZHPR( &uplo, &n, &alpha, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(ap) );
@@ -53,7 +53,7 @@
 
     // templated specialization
     template< typename VectorX, typename MatrixAP >
- static return_type invoke( real_type const alpha, VectorX& x,
+ static return_type invoke( const real_type alpha, const VectorX& x,
             MatrixAP& ap ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::matrix_traits<
@@ -69,8 +69,10 @@
 template< typename VectorX, typename MatrixAP >
 inline typename hpr_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-hpr( typename traits::vector_traits< VectorX >::value_type const alpha,
- VectorX& x, MatrixAP& ap ) {
+hpr( const typename traits::type_traits<
+ typename traits::vector_traits<
+ VectorX >::value_type >::real_type alpha, const VectorX& x,
+ MatrixAP& ap ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     hpr_impl< value_type >::invoke( alpha, x, ap );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpr2.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpr2.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/hpr2.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,18 +29,18 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void hpr2( char const uplo, integer_t const n,
- traits::complex_f const alpha, traits::complex_f* x,
- integer_t const incx, traits::complex_f* y, integer_t const incy,
- traits::complex_f* ap ) {
+ inline void hpr2( const char uplo, const integer_t n,
+ const traits::complex_f alpha, traits::complex_f const* x,
+ const integer_t incx, traits::complex_f const* y,
+ const integer_t incy, traits::complex_f* ap ) {
         BLAS_CHPR2( &uplo, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(x), &incx, traits::complex_ptr(y), &incy,
                 traits::complex_ptr(ap) );
     }
- inline void hpr2( char const uplo, integer_t const n,
- traits::complex_d const alpha, traits::complex_d* x,
- integer_t const incx, traits::complex_d* y, integer_t const incy,
- traits::complex_d* ap ) {
+ inline void hpr2( const char uplo, const integer_t n,
+ const traits::complex_d alpha, traits::complex_d const* x,
+ const integer_t incx, traits::complex_d const* y,
+ const integer_t incy, traits::complex_d* ap ) {
         BLAS_ZHPR2( &uplo, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(x), &incx, traits::complex_ptr(y), &incy,
                 traits::complex_ptr(ap) );
@@ -57,8 +57,8 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY, typename MatrixAP >
- static return_type invoke( value_type const alpha, VectorX& x, VectorY& y,
- MatrixAP& ap ) {
+ static return_type invoke( const value_type alpha, const VectorX& x,
+ const VectorY& y, MatrixAP& ap ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -77,8 +77,8 @@
 template< typename VectorX, typename VectorY, typename MatrixAP >
 inline typename hpr2_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-hpr2( typename traits::vector_traits< VectorX >::value_type const alpha,
- VectorX& x, VectorY& y, MatrixAP& ap ) {
+hpr2( const typename traits::vector_traits< VectorX >::value_type alpha,
+ const VectorX& x, const VectorY& y, MatrixAP& ap ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     hpr2_impl< value_type >::invoke( alpha, x, y, ap );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/sbmv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/sbmv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/sbmv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,17 +29,17 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void sbmv( char const uplo, integer_t const n, integer_t const k,
- float const alpha, float* a, integer_t const lda, float* x,
- integer_t const incx, float const beta, float* y,
- integer_t const incy ) {
+ inline void sbmv( const char uplo, const integer_t n, const integer_t k,
+ const float alpha, float const* a, const integer_t lda,
+ float const* x, const integer_t incx, const float beta, float* y,
+ const integer_t incy ) {
         BLAS_SSBMV( &uplo, &n, &k, &alpha, a, &lda, x, &incx, &beta, y,
                 &incy );
     }
- inline void sbmv( char const uplo, integer_t const n, integer_t const k,
- double const alpha, double* a, integer_t const lda, double* x,
- integer_t const incx, double const beta, double* y,
- integer_t const incy ) {
+ inline void sbmv( const char uplo, const integer_t n, const integer_t k,
+ const double alpha, double const* a, const integer_t lda,
+ double const* x, const integer_t incx, const double beta,
+ double* y, const integer_t incy ) {
         BLAS_DSBMV( &uplo, &n, &k, &alpha, a, &lda, x, &incx, &beta, y,
                 &incy );
     }
@@ -55,8 +55,9 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX, typename VectorY >
- static return_type invoke( integer_t const k, real_type const alpha,
- MatrixA& a, VectorX& x, real_type const beta, VectorY& y ) {
+ static return_type invoke( const integer_t k, const real_type alpha,
+ const MatrixA& a, const VectorX& x, const real_type beta,
+ VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -75,10 +76,12 @@
 template< typename MatrixA, typename VectorX, typename VectorY >
 inline typename sbmv_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-sbmv( integer_t const k, typename traits::matrix_traits<
- MatrixA >::value_type const alpha, MatrixA& a, VectorX& x,
- typename traits::matrix_traits< MatrixA >::value_type const beta,
- VectorY& y ) {
+sbmv( const integer_t k, const typename traits::type_traits<
+ typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type alpha, const MatrixA& a,
+ const VectorX& x, const typename traits::type_traits<
+ typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type beta, VectorY& y ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     sbmv_impl< value_type >::invoke( k, alpha, a, x, beta, y );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spmv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spmv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spmv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,14 +29,14 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void spmv( char const uplo, integer_t const n, float const alpha,
- float* ap, float* x, integer_t const incx, float const beta,
- float* y, integer_t const incy ) {
+ inline void spmv( const char uplo, const integer_t n, const float alpha,
+ float const* ap, float const* x, const integer_t incx,
+ const float beta, float* y, const integer_t incy ) {
         BLAS_SSPMV( &uplo, &n, &alpha, ap, x, &incx, &beta, y, &incy );
     }
- inline void spmv( char const uplo, integer_t const n, double const alpha,
- double* ap, double* x, integer_t const incx, double const beta,
- double* y, integer_t const incy ) {
+ inline void spmv( const char uplo, const integer_t n, const double alpha,
+ double const* ap, double const* x, const integer_t incx,
+ const double beta, double* y, const integer_t incy ) {
         BLAS_DSPMV( &uplo, &n, &alpha, ap, x, &incx, &beta, y, &incy );
     }
 }
@@ -51,8 +51,8 @@
 
     // templated specialization
     template< typename MatrixAP, typename VectorX, typename VectorY >
- static return_type invoke( real_type const alpha, MatrixAP& ap,
- VectorX& x, real_type const beta, VectorY& y ) {
+ static return_type invoke( const real_type alpha, const MatrixAP& ap,
+ const VectorX& x, const real_type beta, VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAP >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -71,10 +71,12 @@
 template< typename MatrixAP, typename VectorX, typename VectorY >
 inline typename spmv_impl< typename traits::matrix_traits<
         MatrixAP >::value_type >::return_type
-spmv( typename traits::matrix_traits<
- MatrixAP >::value_type const alpha, MatrixAP& ap, VectorX& x,
- typename traits::matrix_traits< MatrixAP >::value_type const beta,
- VectorY& y ) {
+spmv( const typename traits::type_traits<
+ typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type alpha, const MatrixAP& ap,
+ const VectorX& x, const typename traits::type_traits<
+ typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type beta, VectorY& y ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     spmv_impl< value_type >::invoke( alpha, ap, x, beta, y );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spr.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,12 +29,12 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void spr( char const uplo, integer_t const n, float const alpha,
- float* x, integer_t const incx, float* ap ) {
+ inline void spr( const char uplo, const integer_t n, const float alpha,
+ float const* x, const integer_t incx, float* ap ) {
         BLAS_SSPR( &uplo, &n, &alpha, x, &incx, ap );
     }
- inline void spr( char const uplo, integer_t const n, double const alpha,
- double* x, integer_t const incx, double* ap ) {
+ inline void spr( const char uplo, const integer_t n, const double alpha,
+ double const* x, const integer_t incx, double* ap ) {
         BLAS_DSPR( &uplo, &n, &alpha, x, &incx, ap );
     }
 }
@@ -49,7 +49,7 @@
 
     // templated specialization
     template< typename VectorX, typename MatrixAP >
- static return_type invoke( real_type const alpha, VectorX& x,
+ static return_type invoke( const real_type alpha, const VectorX& x,
             MatrixAP& ap ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::matrix_traits<
@@ -65,8 +65,10 @@
 template< typename VectorX, typename MatrixAP >
 inline typename spr_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-spr( typename traits::vector_traits< VectorX >::value_type const alpha,
- VectorX& x, MatrixAP& ap ) {
+spr( const typename traits::type_traits<
+ typename traits::vector_traits<
+ VectorX >::value_type >::real_type alpha, const VectorX& x,
+ MatrixAP& ap ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     spr_impl< value_type >::invoke( alpha, x, ap );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spr2.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spr2.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/spr2.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,14 +29,14 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void spr2( char const uplo, integer_t const n, float const alpha,
- float* x, integer_t const incx, float* y, integer_t const incy,
- float* ap ) {
+ inline void spr2( const char uplo, const integer_t n, const float alpha,
+ float const* x, const integer_t incx, float const* y,
+ const integer_t incy, float* ap ) {
         BLAS_SSPR2( &uplo, &n, &alpha, x, &incx, y, &incy, ap );
     }
- inline void spr2( char const uplo, integer_t const n, double const alpha,
- double* x, integer_t const incx, double* y, integer_t const incy,
- double* ap ) {
+ inline void spr2( const char uplo, const integer_t n, const double alpha,
+ double const* x, const integer_t incx, double const* y,
+ const integer_t incy, double* ap ) {
         BLAS_DSPR2( &uplo, &n, &alpha, x, &incx, y, &incy, ap );
     }
 }
@@ -51,8 +51,8 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY, typename MatrixAP >
- static return_type invoke( real_type const alpha, VectorX& x, VectorY& y,
- MatrixAP& ap ) {
+ static return_type invoke( const real_type alpha, const VectorX& x,
+ const VectorY& y, MatrixAP& ap ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -71,8 +71,10 @@
 template< typename VectorX, typename VectorY, typename MatrixAP >
 inline typename spr2_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-spr2( typename traits::vector_traits< VectorX >::value_type const alpha,
- VectorX& x, VectorY& y, MatrixAP& ap ) {
+spr2( const typename traits::type_traits<
+ typename traits::vector_traits<
+ VectorX >::value_type >::real_type alpha, const VectorX& x,
+ const VectorY& y, MatrixAP& ap ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     spr2_impl< value_type >::invoke( alpha, x, y, ap );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/symv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/symv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/symv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,14 +29,16 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void symv( char const uplo, integer_t const n, float const alpha,
- float* a, integer_t const lda, float* x, integer_t const incx,
- float const beta, float* y, integer_t const incy ) {
+ inline void symv( const char uplo, const integer_t n, const float alpha,
+ float const* a, const integer_t lda, float const* x,
+ const integer_t incx, const float beta, float* y,
+ const integer_t incy ) {
         BLAS_SSYMV( &uplo, &n, &alpha, a, &lda, x, &incx, &beta, y, &incy );
     }
- inline void symv( char const uplo, integer_t const n, double const alpha,
- double* a, integer_t const lda, double* x, integer_t const incx,
- double const beta, double* y, integer_t const incy ) {
+ inline void symv( const char uplo, const integer_t n, const double alpha,
+ double const* a, const integer_t lda, double const* x,
+ const integer_t incx, const double beta, double* y,
+ const integer_t incy ) {
         BLAS_DSYMV( &uplo, &n, &alpha, a, &lda, x, &incx, &beta, y, &incy );
     }
 }
@@ -51,8 +53,8 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX, typename VectorY >
- static return_type invoke( real_type const alpha, MatrixA& a, VectorX& x,
- real_type const beta, VectorY& y ) {
+ static return_type invoke( const real_type alpha, const MatrixA& a,
+ const VectorX& x, const real_type beta, VectorY& y ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -71,9 +73,12 @@
 template< typename MatrixA, typename VectorX, typename VectorY >
 inline typename symv_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-symv( typename traits::matrix_traits< MatrixA >::value_type const alpha,
- MatrixA& a, VectorX& x, typename traits::matrix_traits<
- MatrixA >::value_type const beta, VectorY& y ) {
+symv( const typename traits::type_traits<
+ typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type alpha, const MatrixA& a,
+ const VectorX& x, const typename traits::type_traits<
+ typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type beta, VectorY& y ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     symv_impl< value_type >::invoke( alpha, a, x, beta, y );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/syr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/syr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/syr.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,12 +29,14 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void syr( char const uplo, integer_t const n, float const alpha,
- float* x, integer_t const incx, float* a, integer_t const lda ) {
+ inline void syr( const char uplo, const integer_t n, const float alpha,
+ float const* x, const integer_t incx, float* a,
+ const integer_t lda ) {
         BLAS_SSYR( &uplo, &n, &alpha, x, &incx, a, &lda );
     }
- inline void syr( char const uplo, integer_t const n, double const alpha,
- double* x, integer_t const incx, double* a, integer_t const lda ) {
+ inline void syr( const char uplo, const integer_t n, const double alpha,
+ double const* x, const integer_t incx, double* a,
+ const integer_t lda ) {
         BLAS_DSYR( &uplo, &n, &alpha, x, &incx, a, &lda );
     }
 }
@@ -49,7 +51,7 @@
 
     // templated specialization
     template< typename VectorX, typename MatrixA >
- static return_type invoke( real_type const alpha, VectorX& x,
+ static return_type invoke( const real_type alpha, const VectorX& x,
             MatrixA& a ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::matrix_traits<
@@ -65,8 +67,10 @@
 template< typename VectorX, typename MatrixA >
 inline typename syr_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-syr( typename traits::vector_traits< VectorX >::value_type const alpha,
- VectorX& x, MatrixA& a ) {
+syr( const typename traits::type_traits<
+ typename traits::vector_traits<
+ VectorX >::value_type >::real_type alpha, const VectorX& x,
+ MatrixA& a ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     syr_impl< value_type >::invoke( alpha, x, a );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/syr2.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/syr2.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/syr2.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,14 +29,14 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void syr2( char const uplo, integer_t const n, float const alpha,
- float* x, integer_t const incx, float* y, integer_t const incy,
- float* a, integer_t const lda ) {
+ inline void syr2( const char uplo, const integer_t n, const float alpha,
+ float const* x, const integer_t incx, float const* y,
+ const integer_t incy, float* a, const integer_t lda ) {
         BLAS_SSYR2( &uplo, &n, &alpha, x, &incx, y, &incy, a, &lda );
     }
- inline void syr2( char const uplo, integer_t const n, double const alpha,
- double* x, integer_t const incx, double* y, integer_t const incy,
- double* a, integer_t const lda ) {
+ inline void syr2( const char uplo, const integer_t n, const double alpha,
+ double const* x, const integer_t incx, double const* y,
+ const integer_t incy, double* a, const integer_t lda ) {
         BLAS_DSYR2( &uplo, &n, &alpha, x, &incx, y, &incy, a, &lda );
     }
 }
@@ -51,8 +51,8 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY, typename MatrixA >
- static return_type invoke( real_type const alpha, VectorX& x, VectorY& y,
- MatrixA& a ) {
+ static return_type invoke( const real_type alpha, const VectorX& x,
+ const VectorY& y, MatrixA& a ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -71,8 +71,10 @@
 template< typename VectorX, typename VectorY, typename MatrixA >
 inline typename syr2_impl< typename traits::vector_traits<
         VectorX >::value_type >::return_type
-syr2( typename traits::vector_traits< VectorX >::value_type const alpha,
- VectorX& x, VectorY& y, MatrixA& a ) {
+syr2( const typename traits::type_traits<
+ typename traits::vector_traits<
+ VectorX >::value_type >::real_type alpha, const VectorX& x,
+ const VectorY& y, MatrixA& a ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     syr2_impl< value_type >::invoke( alpha, x, y, a );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tbmv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tbmv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tbmv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,25 +29,25 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void tbmv( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const k, float* a,
- integer_t const lda, float* x, integer_t const incx ) {
+ inline void tbmv( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t k, float const* a,
+ const integer_t lda, float* x, const integer_t incx ) {
         BLAS_STBMV( &uplo, &trans, &diag, &n, &k, a, &lda, x, &incx );
     }
- inline void tbmv( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const k, double* a,
- integer_t const lda, double* x, integer_t const incx ) {
+ inline void tbmv( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t k, double const* a,
+ const integer_t lda, double* x, const integer_t incx ) {
         BLAS_DTBMV( &uplo, &trans, &diag, &n, &k, a, &lda, x, &incx );
     }
- inline void tbmv( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const k, traits::complex_f* a,
- integer_t const lda, traits::complex_f* x, integer_t const incx ) {
+ inline void tbmv( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t k, traits::complex_f const* a,
+ const integer_t lda, traits::complex_f* x, const integer_t incx ) {
         BLAS_CTBMV( &uplo, &trans, &diag, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(x), &incx );
     }
- inline void tbmv( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const k, traits::complex_d* a,
- integer_t const lda, traits::complex_d* x, integer_t const incx ) {
+ inline void tbmv( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t k, traits::complex_d const* a,
+ const integer_t lda, traits::complex_d* x, const integer_t incx ) {
         BLAS_ZTBMV( &uplo, &trans, &diag, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(x), &incx );
     }
@@ -63,8 +63,8 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX >
- static return_type invoke( char const trans, char const diag,
- integer_t const k, MatrixA& a, VectorX& x ) {
+ static return_type invoke( const char trans, const char diag,
+ const integer_t k, const MatrixA& a, VectorX& x ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -79,8 +79,8 @@
 template< typename MatrixA, typename VectorX >
 inline typename tbmv_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-tbmv( char const trans, char const diag, integer_t const k, MatrixA& a,
- VectorX& x ) {
+tbmv( const char trans, const char diag, const integer_t k,
+ const MatrixA& a, VectorX& x ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     tbmv_impl< value_type >::invoke( trans, diag, k, a, x );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tbsv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tbsv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tbsv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,25 +29,25 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void tbsv( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const k, float* a,
- integer_t const lda, float* x, integer_t const incx ) {
+ inline void tbsv( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t k, float const* a,
+ const integer_t lda, float* x, const integer_t incx ) {
         BLAS_STBSV( &uplo, &trans, &diag, &n, &k, a, &lda, x, &incx );
     }
- inline void tbsv( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const k, double* a,
- integer_t const lda, double* x, integer_t const incx ) {
+ inline void tbsv( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t k, double const* a,
+ const integer_t lda, double* x, const integer_t incx ) {
         BLAS_DTBSV( &uplo, &trans, &diag, &n, &k, a, &lda, x, &incx );
     }
- inline void tbsv( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const k, traits::complex_f* a,
- integer_t const lda, traits::complex_f* x, integer_t const incx ) {
+ inline void tbsv( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t k, traits::complex_f const* a,
+ const integer_t lda, traits::complex_f* x, const integer_t incx ) {
         BLAS_CTBSV( &uplo, &trans, &diag, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(x), &incx );
     }
- inline void tbsv( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const k, traits::complex_d* a,
- integer_t const lda, traits::complex_d* x, integer_t const incx ) {
+ inline void tbsv( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t k, traits::complex_d const* a,
+ const integer_t lda, traits::complex_d* x, const integer_t incx ) {
         BLAS_ZTBSV( &uplo, &trans, &diag, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(x), &incx );
     }
@@ -63,8 +63,8 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX >
- static return_type invoke( char const trans, char const diag,
- integer_t const k, MatrixA& a, VectorX& x ) {
+ static return_type invoke( const char trans, const char diag,
+ const integer_t k, const MatrixA& a, VectorX& x ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -79,8 +79,8 @@
 template< typename MatrixA, typename VectorX >
 inline typename tbsv_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-tbsv( char const trans, char const diag, integer_t const k, MatrixA& a,
- VectorX& x ) {
+tbsv( const char trans, const char diag, const integer_t k,
+ const MatrixA& a, VectorX& x ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     tbsv_impl< value_type >::invoke( trans, diag, k, a, x );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tpmv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tpmv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tpmv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,23 +29,25 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void tpmv( char const uplo, char const trans, char const diag,
- integer_t const n, float* ap, float* x, integer_t const incx ) {
+ inline void tpmv( const char uplo, const char trans, const char diag,
+ const integer_t n, float const* ap, float* x,
+ const integer_t incx ) {
         BLAS_STPMV( &uplo, &trans, &diag, &n, ap, x, &incx );
     }
- inline void tpmv( char const uplo, char const trans, char const diag,
- integer_t const n, double* ap, double* x, integer_t const incx ) {
+ inline void tpmv( const char uplo, const char trans, const char diag,
+ const integer_t n, double const* ap, double* x,
+ const integer_t incx ) {
         BLAS_DTPMV( &uplo, &trans, &diag, &n, ap, x, &incx );
     }
- inline void tpmv( char const uplo, char const trans, char const diag,
- integer_t const n, traits::complex_f* ap, traits::complex_f* x,
- integer_t const incx ) {
+ inline void tpmv( const char uplo, const char trans, const char diag,
+ const integer_t n, traits::complex_f const* ap,
+ traits::complex_f* x, const integer_t incx ) {
         BLAS_CTPMV( &uplo, &trans, &diag, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(x), &incx );
     }
- inline void tpmv( char const uplo, char const trans, char const diag,
- integer_t const n, traits::complex_d* ap, traits::complex_d* x,
- integer_t const incx ) {
+ inline void tpmv( const char uplo, const char trans, const char diag,
+ const integer_t n, traits::complex_d const* ap,
+ traits::complex_d* x, const integer_t incx ) {
         BLAS_ZTPMV( &uplo, &trans, &diag, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(x), &incx );
     }
@@ -61,8 +63,8 @@
 
     // templated specialization
     template< typename MatrixAP, typename VectorX >
- static return_type invoke( char const trans, char const diag,
- MatrixAP& ap, VectorX& x ) {
+ static return_type invoke( const char trans, const char diag,
+ const MatrixAP& ap, VectorX& x ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAP >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -76,7 +78,8 @@
 template< typename MatrixAP, typename VectorX >
 inline typename tpmv_impl< typename traits::matrix_traits<
         MatrixAP >::value_type >::return_type
-tpmv( char const trans, char const diag, MatrixAP& ap, VectorX& x ) {
+tpmv( const char trans, const char diag, const MatrixAP& ap,
+ VectorX& x ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     tpmv_impl< value_type >::invoke( trans, diag, ap, x );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tpsv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tpsv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/tpsv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,23 +29,25 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void tpsv( char const uplo, char const trans, char const diag,
- integer_t const n, float* ap, float* x, integer_t const incx ) {
+ inline void tpsv( const char uplo, const char trans, const char diag,
+ const integer_t n, float const* ap, float* x,
+ const integer_t incx ) {
         BLAS_STPSV( &uplo, &trans, &diag, &n, ap, x, &incx );
     }
- inline void tpsv( char const uplo, char const trans, char const diag,
- integer_t const n, double* ap, double* x, integer_t const incx ) {
+ inline void tpsv( const char uplo, const char trans, const char diag,
+ const integer_t n, double const* ap, double* x,
+ const integer_t incx ) {
         BLAS_DTPSV( &uplo, &trans, &diag, &n, ap, x, &incx );
     }
- inline void tpsv( char const uplo, char const trans, char const diag,
- integer_t const n, traits::complex_f* ap, traits::complex_f* x,
- integer_t const incx ) {
+ inline void tpsv( const char uplo, const char trans, const char diag,
+ const integer_t n, traits::complex_f const* ap,
+ traits::complex_f* x, const integer_t incx ) {
         BLAS_CTPSV( &uplo, &trans, &diag, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(x), &incx );
     }
- inline void tpsv( char const uplo, char const trans, char const diag,
- integer_t const n, traits::complex_d* ap, traits::complex_d* x,
- integer_t const incx ) {
+ inline void tpsv( const char uplo, const char trans, const char diag,
+ const integer_t n, traits::complex_d const* ap,
+ traits::complex_d* x, const integer_t incx ) {
         BLAS_ZTPSV( &uplo, &trans, &diag, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(x), &incx );
     }
@@ -61,8 +63,8 @@
 
     // templated specialization
     template< typename MatrixAP, typename VectorX >
- static return_type invoke( char const trans, char const diag,
- MatrixAP& ap, VectorX& x ) {
+ static return_type invoke( const char trans, const char diag,
+ const MatrixAP& ap, VectorX& x ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAP >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -76,7 +78,8 @@
 template< typename MatrixAP, typename VectorX >
 inline typename tpsv_impl< typename traits::matrix_traits<
         MatrixAP >::value_type >::return_type
-tpsv( char const trans, char const diag, MatrixAP& ap, VectorX& x ) {
+tpsv( const char trans, const char diag, const MatrixAP& ap,
+ VectorX& x ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     tpsv_impl< value_type >::invoke( trans, diag, ap, x );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/trmv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/trmv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/trmv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,25 +29,25 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void trmv( char const uplo, char const trans, char const diag,
- integer_t const n, float* a, integer_t const lda, float* x,
- integer_t const incx ) {
+ inline void trmv( const char uplo, const char trans, const char diag,
+ const integer_t n, float const* a, const integer_t lda, float* x,
+ const integer_t incx ) {
         BLAS_STRMV( &uplo, &trans, &diag, &n, a, &lda, x, &incx );
     }
- inline void trmv( char const uplo, char const trans, char const diag,
- integer_t const n, double* a, integer_t const lda, double* x,
- integer_t const incx ) {
+ inline void trmv( const char uplo, const char trans, const char diag,
+ const integer_t n, double const* a, const integer_t lda,
+ double* x, const integer_t incx ) {
         BLAS_DTRMV( &uplo, &trans, &diag, &n, a, &lda, x, &incx );
     }
- inline void trmv( char const uplo, char const trans, char const diag,
- integer_t const n, traits::complex_f* a, integer_t const lda,
- traits::complex_f* x, integer_t const incx ) {
+ inline void trmv( const char uplo, const char trans, const char diag,
+ const integer_t n, traits::complex_f const* a,
+ const integer_t lda, traits::complex_f* x, const integer_t incx ) {
         BLAS_CTRMV( &uplo, &trans, &diag, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(x), &incx );
     }
- inline void trmv( char const uplo, char const trans, char const diag,
- integer_t const n, traits::complex_d* a, integer_t const lda,
- traits::complex_d* x, integer_t const incx ) {
+ inline void trmv( const char uplo, const char trans, const char diag,
+ const integer_t n, traits::complex_d const* a,
+ const integer_t lda, traits::complex_d* x, const integer_t incx ) {
         BLAS_ZTRMV( &uplo, &trans, &diag, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(x), &incx );
     }
@@ -63,8 +63,8 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX >
- static return_type invoke( char const trans, char const diag, MatrixA& a,
- VectorX& x ) {
+ static return_type invoke( const char trans, const char diag,
+ const MatrixA& a, VectorX& x ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -79,7 +79,7 @@
 template< typename MatrixA, typename VectorX >
 inline typename trmv_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-trmv( char const trans, char const diag, MatrixA& a, VectorX& x ) {
+trmv( const char trans, const char diag, const MatrixA& a, VectorX& x ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     trmv_impl< value_type >::invoke( trans, diag, a, x );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/trsv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/trsv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level2/trsv.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,25 +29,25 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void trsv( char const uplo, char const trans, char const diag,
- integer_t const n, float* a, integer_t const lda, float* x,
- integer_t const incx ) {
+ inline void trsv( const char uplo, const char trans, const char diag,
+ const integer_t n, float const* a, const integer_t lda, float* x,
+ const integer_t incx ) {
         BLAS_STRSV( &uplo, &trans, &diag, &n, a, &lda, x, &incx );
     }
- inline void trsv( char const uplo, char const trans, char const diag,
- integer_t const n, double* a, integer_t const lda, double* x,
- integer_t const incx ) {
+ inline void trsv( const char uplo, const char trans, const char diag,
+ const integer_t n, double const* a, const integer_t lda,
+ double* x, const integer_t incx ) {
         BLAS_DTRSV( &uplo, &trans, &diag, &n, a, &lda, x, &incx );
     }
- inline void trsv( char const uplo, char const trans, char const diag,
- integer_t const n, traits::complex_f* a, integer_t const lda,
- traits::complex_f* x, integer_t const incx ) {
+ inline void trsv( const char uplo, const char trans, const char diag,
+ const integer_t n, traits::complex_f const* a,
+ const integer_t lda, traits::complex_f* x, const integer_t incx ) {
         BLAS_CTRSV( &uplo, &trans, &diag, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(x), &incx );
     }
- inline void trsv( char const uplo, char const trans, char const diag,
- integer_t const n, traits::complex_d* a, integer_t const lda,
- traits::complex_d* x, integer_t const incx ) {
+ inline void trsv( const char uplo, const char trans, const char diag,
+ const integer_t n, traits::complex_d const* a,
+ const integer_t lda, traits::complex_d* x, const integer_t incx ) {
         BLAS_ZTRSV( &uplo, &trans, &diag, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(x), &incx );
     }
@@ -63,8 +63,8 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX >
- static return_type invoke( char const trans, char const diag, MatrixA& a,
- VectorX& x ) {
+ static return_type invoke( const char trans, const char diag,
+ const MatrixA& a, VectorX& x ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorX >::value_type >::value) );
@@ -79,7 +79,7 @@
 template< typename MatrixA, typename VectorX >
 inline typename trsv_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-trsv( char const trans, char const diag, MatrixA& a, VectorX& x ) {
+trsv( const char trans, const char diag, const MatrixA& a, VectorX& x ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     trsv_impl< value_type >::invoke( trans, diag, a, x );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/gemm.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/gemm.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/gemm.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,36 +29,38 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void gemm( char const transa, char const transb, integer_t const m,
- integer_t const n, integer_t const k, float const alpha, float* a,
- integer_t const lda, float* b, integer_t const ldb,
- float const beta, float* c, integer_t const ldc ) {
+ inline void gemm( const char transa, const char transb, const integer_t m,
+ const integer_t n, const integer_t k, const float alpha,
+ float const* a, const integer_t lda, float const* b,
+ const integer_t ldb, const float beta, float* c,
+ const integer_t ldc ) {
         BLAS_SGEMM( &transa, &transb, &m, &n, &k, &alpha, a, &lda, b, &ldb,
                 &beta, c, &ldc );
     }
- inline void gemm( char const transa, char const transb, integer_t const m,
- integer_t const n, integer_t const k, double const alpha,
- double* a, integer_t const lda, double* b, integer_t const ldb,
- double const beta, double* c, integer_t const ldc ) {
+ inline void gemm( const char transa, const char transb, const integer_t m,
+ const integer_t n, const integer_t k, const double alpha,
+ double const* a, const integer_t lda, double const* b,
+ const integer_t ldb, const double beta, double* c,
+ const integer_t ldc ) {
         BLAS_DGEMM( &transa, &transb, &m, &n, &k, &alpha, a, &lda, b, &ldb,
                 &beta, c, &ldc );
     }
- inline void gemm( char const transa, char const transb, integer_t const m,
- integer_t const n, integer_t const k,
- traits::complex_f const alpha, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb,
- traits::complex_f const beta, traits::complex_f* c,
- integer_t const ldc ) {
+ inline void gemm( const char transa, const char transb, const integer_t m,
+ const integer_t n, const integer_t k,
+ const traits::complex_f alpha, traits::complex_f const* a,
+ const integer_t lda, traits::complex_f const* b,
+ const integer_t ldb, const traits::complex_f beta,
+ traits::complex_f* c, const integer_t ldc ) {
         BLAS_CGEMM( &transa, &transb, &m, &n, &k, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(&beta), traits::complex_ptr(c), &ldc );
     }
- inline void gemm( char const transa, char const transb, integer_t const m,
- integer_t const n, integer_t const k,
- traits::complex_d const alpha, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb,
- traits::complex_d const beta, traits::complex_d* c,
- integer_t const ldc ) {
+ inline void gemm( const char transa, const char transb, const integer_t m,
+ const integer_t n, const integer_t k,
+ const traits::complex_d alpha, traits::complex_d const* a,
+ const integer_t lda, traits::complex_d const* b,
+ const integer_t ldb, const traits::complex_d beta,
+ traits::complex_d* c, const integer_t ldc ) {
         BLAS_ZGEMM( &transa, &transb, &m, &n, &k, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(&beta), traits::complex_ptr(c), &ldc );
@@ -75,9 +77,9 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB, typename MatrixC >
- static return_type invoke( char const transa, char const transb,
- integer_t const k, value_type const alpha, MatrixA& a, MatrixB& b,
- value_type const beta, MatrixC& c ) {
+ static return_type invoke( const char transa, const char transb,
+ const integer_t k, const value_type alpha, const MatrixA& a,
+ const MatrixB& b, const value_type beta, MatrixC& c ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -96,10 +98,11 @@
 template< typename MatrixA, typename MatrixB, typename MatrixC >
 inline typename gemm_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-gemm( char const transa, char const transb, integer_t const k,
- typename traits::matrix_traits< MatrixA >::value_type const alpha,
- MatrixA& a, MatrixB& b, typename traits::matrix_traits<
- MatrixA >::value_type const beta, MatrixC& c ) {
+gemm( const char transa, const char transb, const integer_t k,
+ const typename traits::matrix_traits< MatrixA >::value_type alpha,
+ const MatrixA& a, const MatrixB& b,
+ const typename traits::matrix_traits< MatrixA >::value_type beta,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     gemm_impl< value_type >::invoke( transa, transb, k, alpha, a, b,
             beta, c );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/hemm.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/hemm.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/hemm.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,20 +29,22 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void hemm( char const side, char const uplo, integer_t const m,
- integer_t const n, traits::complex_f const alpha,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, traits::complex_f const beta,
- traits::complex_f* c, integer_t const ldc ) {
+ inline void hemm( const char side, const char uplo, const integer_t m,
+ const integer_t n, const traits::complex_f alpha,
+ traits::complex_f const* a, const integer_t lda,
+ traits::complex_f const* b, const integer_t ldb,
+ const traits::complex_f beta, traits::complex_f* c,
+ const integer_t ldc ) {
         BLAS_CHEMM( &side, &uplo, &m, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(&beta), traits::complex_ptr(c), &ldc );
     }
- inline void hemm( char const side, char const uplo, integer_t const m,
- integer_t const n, traits::complex_d const alpha,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, traits::complex_d const beta,
- traits::complex_d* c, integer_t const ldc ) {
+ inline void hemm( const char side, const char uplo, const integer_t m,
+ const integer_t n, const traits::complex_d alpha,
+ traits::complex_d const* a, const integer_t lda,
+ traits::complex_d const* b, const integer_t ldb,
+ const traits::complex_d beta, traits::complex_d* c,
+ const integer_t ldc ) {
         BLAS_ZHEMM( &side, &uplo, &m, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(&beta), traits::complex_ptr(c), &ldc );
@@ -59,8 +61,9 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB, typename MatrixC >
- static return_type invoke( char const side, value_type const alpha,
- MatrixA& a, MatrixB& b, value_type const beta, MatrixC& c ) {
+ static return_type invoke( const char side, const value_type alpha,
+ const MatrixA& a, const MatrixB& b, const value_type beta,
+ MatrixC& c ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -80,9 +83,9 @@
 template< typename MatrixA, typename MatrixB, typename MatrixC >
 inline typename hemm_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-hemm( char const side, typename traits::matrix_traits<
- MatrixA >::value_type const alpha, MatrixA& a, MatrixB& b,
- typename traits::matrix_traits< MatrixA >::value_type const beta,
+hemm( const char side, const typename traits::matrix_traits<
+ MatrixA >::value_type alpha, const MatrixA& a, const MatrixB& b,
+ const typename traits::matrix_traits< MatrixA >::value_type beta,
         MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     hemm_impl< value_type >::invoke( side, alpha, a, b, beta, c );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/her2k.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/her2k.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/her2k.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,20 +29,20 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void her2k( char const uplo, char const trans, integer_t const n,
- integer_t const k, traits::complex_f const alpha,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, float const beta, traits::complex_f* c,
- integer_t const ldc ) {
+ inline void her2k( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const traits::complex_f alpha,
+ traits::complex_f const* a, const integer_t lda,
+ traits::complex_f const* b, const integer_t ldb, const float beta,
+ traits::complex_f* c, const integer_t ldc ) {
         BLAS_CHER2K( &uplo, &trans, &n, &k, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 &beta, traits::complex_ptr(c), &ldc );
     }
- inline void her2k( char const uplo, char const trans, integer_t const n,
- integer_t const k, traits::complex_d const alpha,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, double const beta, traits::complex_d* c,
- integer_t const ldc ) {
+ inline void her2k( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const traits::complex_d alpha,
+ traits::complex_d const* a, const integer_t lda,
+ traits::complex_d const* b, const integer_t ldb,
+ const double beta, traits::complex_d* c, const integer_t ldc ) {
         BLAS_ZHER2K( &uplo, &trans, &n, &k, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 &beta, traits::complex_ptr(c), &ldc );
@@ -59,9 +59,9 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB, typename MatrixC >
- static return_type invoke( char const trans, integer_t const k,
- value_type const alpha, MatrixA& a, MatrixB& b,
- real_type const beta, MatrixC& c ) {
+ static return_type invoke( const char trans, const integer_t k,
+ const value_type alpha, const MatrixA& a, const MatrixB& b,
+ const real_type beta, MatrixC& c ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -80,10 +80,11 @@
 template< typename MatrixA, typename MatrixB, typename MatrixC >
 inline typename her2k_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-her2k( char const trans, integer_t const k,
- typename traits::matrix_traits< MatrixA >::value_type const alpha,
- MatrixA& a, MatrixB& b, typename traits::matrix_traits<
- MatrixA >::value_type const beta, MatrixC& c ) {
+her2k( const char trans, const integer_t k,
+ const typename traits::matrix_traits< MatrixA >::value_type alpha,
+ const MatrixA& a, const MatrixB& b,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type beta, MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     her2k_impl< value_type >::invoke( trans, k, alpha, a, b, beta, c );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/herk.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/herk.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/herk.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,17 +29,17 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void herk( char const uplo, char const trans, integer_t const n,
- integer_t const k, float const alpha, traits::complex_f* a,
- integer_t const lda, float const beta, traits::complex_f* c,
- integer_t const ldc ) {
+ inline void herk( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const float alpha, traits::complex_f const* a,
+ const integer_t lda, const float beta, traits::complex_f* c,
+ const integer_t ldc ) {
         BLAS_CHERK( &uplo, &trans, &n, &k, &alpha, traits::complex_ptr(a),
                 &lda, &beta, traits::complex_ptr(c), &ldc );
     }
- inline void herk( char const uplo, char const trans, integer_t const n,
- integer_t const k, double const alpha, traits::complex_d* a,
- integer_t const lda, double const beta, traits::complex_d* c,
- integer_t const ldc ) {
+ inline void herk( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const double alpha, traits::complex_d const* a,
+ const integer_t lda, const double beta, traits::complex_d* c,
+ const integer_t ldc ) {
         BLAS_ZHERK( &uplo, &trans, &n, &k, &alpha, traits::complex_ptr(a),
                 &lda, &beta, traits::complex_ptr(c), &ldc );
     }
@@ -55,8 +55,8 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixC >
- static return_type invoke( char const trans, integer_t const k,
- real_type const alpha, MatrixA& a, real_type const beta,
+ static return_type invoke( const char trans, const integer_t k,
+ const real_type alpha, const MatrixA& a, const real_type beta,
             MatrixC& c ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -72,10 +72,11 @@
 template< typename MatrixA, typename MatrixC >
 inline typename herk_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-herk( char const trans, integer_t const k,
- typename traits::matrix_traits< MatrixA >::value_type const alpha,
- MatrixA& a, typename traits::matrix_traits<
- MatrixA >::value_type const beta, MatrixC& c ) {
+herk( const char trans, const integer_t k,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type alpha, const MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type beta, MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     herk_impl< value_type >::invoke( trans, k, alpha, a, beta, c );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/symm.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/symm.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/symm.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,34 +29,36 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void symm( char const side, char const uplo, integer_t const m,
- integer_t const n, float const alpha, float* a,
- integer_t const lda, float* b, integer_t const ldb,
- float const beta, float* c, integer_t const ldc ) {
+ inline void symm( const char side, const char uplo, const integer_t m,
+ const integer_t n, const float alpha, float const* a,
+ const integer_t lda, float const* b, const integer_t ldb,
+ const float beta, float* c, const integer_t ldc ) {
         BLAS_SSYMM( &side, &uplo, &m, &n, &alpha, a, &lda, b, &ldb, &beta, c,
                 &ldc );
     }
- inline void symm( char const side, char const uplo, integer_t const m,
- integer_t const n, double const alpha, double* a,
- integer_t const lda, double* b, integer_t const ldb,
- double const beta, double* c, integer_t const ldc ) {
+ inline void symm( const char side, const char uplo, const integer_t m,
+ const integer_t n, const double alpha, double const* a,
+ const integer_t lda, double const* b, const integer_t ldb,
+ const double beta, double* c, const integer_t ldc ) {
         BLAS_DSYMM( &side, &uplo, &m, &n, &alpha, a, &lda, b, &ldb, &beta, c,
                 &ldc );
     }
- inline void symm( char const side, char const uplo, integer_t const m,
- integer_t const n, traits::complex_f const alpha,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, traits::complex_f const beta,
- traits::complex_f* c, integer_t const ldc ) {
+ inline void symm( const char side, const char uplo, const integer_t m,
+ const integer_t n, const traits::complex_f alpha,
+ traits::complex_f const* a, const integer_t lda,
+ traits::complex_f const* b, const integer_t ldb,
+ const traits::complex_f beta, traits::complex_f* c,
+ const integer_t ldc ) {
         BLAS_CSYMM( &side, &uplo, &m, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(&beta), traits::complex_ptr(c), &ldc );
     }
- inline void symm( char const side, char const uplo, integer_t const m,
- integer_t const n, traits::complex_d const alpha,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, traits::complex_d const beta,
- traits::complex_d* c, integer_t const ldc ) {
+ inline void symm( const char side, const char uplo, const integer_t m,
+ const integer_t n, const traits::complex_d alpha,
+ traits::complex_d const* a, const integer_t lda,
+ traits::complex_d const* b, const integer_t ldb,
+ const traits::complex_d beta, traits::complex_d* c,
+ const integer_t ldc ) {
         BLAS_ZSYMM( &side, &uplo, &m, &n, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(&beta), traits::complex_ptr(c), &ldc );
@@ -73,8 +75,9 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB, typename MatrixC >
- static return_type invoke( char const side, value_type const alpha,
- MatrixA& a, MatrixB& b, value_type const beta, MatrixC& c ) {
+ static return_type invoke( const char side, const value_type alpha,
+ const MatrixA& a, const MatrixB& b, const value_type beta,
+ MatrixC& c ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -94,9 +97,9 @@
 template< typename MatrixA, typename MatrixB, typename MatrixC >
 inline typename symm_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-symm( char const side, typename traits::matrix_traits<
- MatrixA >::value_type const alpha, MatrixA& a, MatrixB& b,
- typename traits::matrix_traits< MatrixA >::value_type const beta,
+symm( const char side, const typename traits::matrix_traits<
+ MatrixA >::value_type alpha, const MatrixA& a, const MatrixB& b,
+ const typename traits::matrix_traits< MatrixA >::value_type beta,
         MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     symm_impl< value_type >::invoke( side, alpha, a, b, beta, c );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/syr2k.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/syr2k.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/syr2k.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,34 +29,36 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void syr2k( char const uplo, char const trans, integer_t const n,
- integer_t const k, float const alpha, float* a,
- integer_t const lda, float* b, integer_t const ldb,
- float const beta, float* c, integer_t const ldc ) {
+ inline void syr2k( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const float alpha, float const* a,
+ const integer_t lda, float const* b, const integer_t ldb,
+ const float beta, float* c, const integer_t ldc ) {
         BLAS_SSYR2K( &uplo, &trans, &n, &k, &alpha, a, &lda, b, &ldb, &beta,
                 c, &ldc );
     }
- inline void syr2k( char const uplo, char const trans, integer_t const n,
- integer_t const k, double const alpha, double* a,
- integer_t const lda, double* b, integer_t const ldb,
- double const beta, double* c, integer_t const ldc ) {
+ inline void syr2k( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const double alpha, double const* a,
+ const integer_t lda, double const* b, const integer_t ldb,
+ const double beta, double* c, const integer_t ldc ) {
         BLAS_DSYR2K( &uplo, &trans, &n, &k, &alpha, a, &lda, b, &ldb, &beta,
                 c, &ldc );
     }
- inline void syr2k( char const uplo, char const trans, integer_t const n,
- integer_t const k, traits::complex_f const alpha,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, traits::complex_f const beta,
- traits::complex_f* c, integer_t const ldc ) {
+ inline void syr2k( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const traits::complex_f alpha,
+ traits::complex_f const* a, const integer_t lda,
+ traits::complex_f const* b, const integer_t ldb,
+ const traits::complex_f beta, traits::complex_f* c,
+ const integer_t ldc ) {
         BLAS_CSYR2K( &uplo, &trans, &n, &k, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(&beta), traits::complex_ptr(c), &ldc );
     }
- inline void syr2k( char const uplo, char const trans, integer_t const n,
- integer_t const k, traits::complex_d const alpha,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, traits::complex_d const beta,
- traits::complex_d* c, integer_t const ldc ) {
+ inline void syr2k( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const traits::complex_d alpha,
+ traits::complex_d const* a, const integer_t lda,
+ traits::complex_d const* b, const integer_t ldb,
+ const traits::complex_d beta, traits::complex_d* c,
+ const integer_t ldc ) {
         BLAS_ZSYR2K( &uplo, &trans, &n, &k, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(&beta), traits::complex_ptr(c), &ldc );
@@ -73,9 +75,9 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB, typename MatrixC >
- static return_type invoke( char const trans, integer_t const k,
- value_type const alpha, MatrixA& a, MatrixB& b,
- value_type const beta, MatrixC& c ) {
+ static return_type invoke( const char trans, const integer_t k,
+ const value_type alpha, const MatrixA& a, const MatrixB& b,
+ const value_type beta, MatrixC& c ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -94,10 +96,11 @@
 template< typename MatrixA, typename MatrixB, typename MatrixC >
 inline typename syr2k_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-syr2k( char const trans, integer_t const k,
- typename traits::matrix_traits< MatrixA >::value_type const alpha,
- MatrixA& a, MatrixB& b, typename traits::matrix_traits<
- MatrixA >::value_type const beta, MatrixC& c ) {
+syr2k( const char trans, const integer_t k,
+ const typename traits::matrix_traits< MatrixA >::value_type alpha,
+ const MatrixA& a, const MatrixB& b,
+ const typename traits::matrix_traits< MatrixA >::value_type beta,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     syr2k_impl< value_type >::invoke( trans, k, alpha, a, b, beta, c );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/syrk.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/syrk.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/syrk.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,32 +29,32 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void syrk( char const uplo, char const trans, integer_t const n,
- integer_t const k, float const alpha, float* a,
- integer_t const lda, float const beta, float* c,
- integer_t const ldc ) {
+ inline void syrk( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const float alpha, float const* a,
+ const integer_t lda, const float beta, float* c,
+ const integer_t ldc ) {
         BLAS_SSYRK( &uplo, &trans, &n, &k, &alpha, a, &lda, &beta, c, &ldc );
     }
- inline void syrk( char const uplo, char const trans, integer_t const n,
- integer_t const k, double const alpha, double* a,
- integer_t const lda, double const beta, double* c,
- integer_t const ldc ) {
+ inline void syrk( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const double alpha, double const* a,
+ const integer_t lda, const double beta, double* c,
+ const integer_t ldc ) {
         BLAS_DSYRK( &uplo, &trans, &n, &k, &alpha, a, &lda, &beta, c, &ldc );
     }
- inline void syrk( char const uplo, char const trans, integer_t const n,
- integer_t const k, traits::complex_f const alpha,
- traits::complex_f* a, integer_t const lda,
- traits::complex_f const beta, traits::complex_f* c,
- integer_t const ldc ) {
+ inline void syrk( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const traits::complex_f alpha,
+ traits::complex_f const* a, const integer_t lda,
+ const traits::complex_f beta, traits::complex_f* c,
+ const integer_t ldc ) {
         BLAS_CSYRK( &uplo, &trans, &n, &k, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(&beta),
                 traits::complex_ptr(c), &ldc );
     }
- inline void syrk( char const uplo, char const trans, integer_t const n,
- integer_t const k, traits::complex_d const alpha,
- traits::complex_d* a, integer_t const lda,
- traits::complex_d const beta, traits::complex_d* c,
- integer_t const ldc ) {
+ inline void syrk( const char uplo, const char trans, const integer_t n,
+ const integer_t k, const traits::complex_d alpha,
+ traits::complex_d const* a, const integer_t lda,
+ const traits::complex_d beta, traits::complex_d* c,
+ const integer_t ldc ) {
         BLAS_ZSYRK( &uplo, &trans, &n, &k, traits::complex_ptr(&alpha),
                 traits::complex_ptr(a), &lda, traits::complex_ptr(&beta),
                 traits::complex_ptr(c), &ldc );
@@ -71,8 +71,8 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixC >
- static return_type invoke( char const trans, integer_t const k,
- value_type const alpha, MatrixA& a, value_type const beta,
+ static return_type invoke( const char trans, const integer_t k,
+ const value_type alpha, const MatrixA& a, const value_type beta,
             MatrixC& c ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -88,10 +88,10 @@
 template< typename MatrixA, typename MatrixC >
 inline typename syrk_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-syrk( char const trans, integer_t const k,
- typename traits::matrix_traits< MatrixA >::value_type const alpha,
- MatrixA& a, typename traits::matrix_traits<
- MatrixA >::value_type const beta, MatrixC& c ) {
+syrk( const char trans, const integer_t k,
+ const typename traits::matrix_traits< MatrixA >::value_type alpha,
+ const MatrixA& a, const typename traits::matrix_traits<
+ MatrixA >::value_type beta, MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     syrk_impl< value_type >::invoke( trans, k, alpha, a, beta, c );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/trmm.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/trmm.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/trmm.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,32 +29,32 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void trmm( char const side, char const uplo, char const transa,
- char const diag, integer_t const m, integer_t const n,
- float const alpha, float* a, integer_t const lda, float* b,
- integer_t const ldb ) {
+ inline void trmm( const char side, const char uplo, const char transa,
+ const char diag, const integer_t m, const integer_t n,
+ const float alpha, float const* a, const integer_t lda, float* b,
+ const integer_t ldb ) {
         BLAS_STRMM( &side, &uplo, &transa, &diag, &m, &n, &alpha, a, &lda, b,
                 &ldb );
     }
- inline void trmm( char const side, char const uplo, char const transa,
- char const diag, integer_t const m, integer_t const n,
- double const alpha, double* a, integer_t const lda, double* b,
- integer_t const ldb ) {
+ inline void trmm( const char side, const char uplo, const char transa,
+ const char diag, const integer_t m, const integer_t n,
+ const double alpha, double const* a, const integer_t lda,
+ double* b, const integer_t ldb ) {
         BLAS_DTRMM( &side, &uplo, &transa, &diag, &m, &n, &alpha, a, &lda, b,
                 &ldb );
     }
- inline void trmm( char const side, char const uplo, char const transa,
- char const diag, integer_t const m, integer_t const n,
- traits::complex_f const alpha, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb ) {
+ inline void trmm( const char side, const char uplo, const char transa,
+ const char diag, const integer_t m, const integer_t n,
+ const traits::complex_f alpha, traits::complex_f const* a,
+ const integer_t lda, traits::complex_f* b, const integer_t ldb ) {
         BLAS_CTRMM( &side, &uplo, &transa, &diag, &m, &n,
                 traits::complex_ptr(&alpha), traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb );
     }
- inline void trmm( char const side, char const uplo, char const transa,
- char const diag, integer_t const m, integer_t const n,
- traits::complex_d const alpha, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb ) {
+ inline void trmm( const char side, const char uplo, const char transa,
+ const char diag, const integer_t m, const integer_t n,
+ const traits::complex_d alpha, traits::complex_d const* a,
+ const integer_t lda, traits::complex_d* b, const integer_t ldb ) {
         BLAS_ZTRMM( &side, &uplo, &transa, &diag, &m, &n,
                 traits::complex_ptr(&alpha), traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb );
@@ -71,8 +71,9 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB >
- static return_type invoke( char const side, char const transa,
- char const diag, value_type const alpha, MatrixA& a, MatrixB& b ) {
+ static return_type invoke( const char side, const char transa,
+ const char diag, const value_type alpha, const MatrixA& a,
+ MatrixB& b ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -88,9 +89,9 @@
 template< typename MatrixA, typename MatrixB >
 inline typename trmm_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-trmm( char const side, char const transa, char const diag,
- typename traits::matrix_traits< MatrixA >::value_type const alpha,
- MatrixA& a, MatrixB& b ) {
+trmm( const char side, const char transa, const char diag,
+ const typename traits::matrix_traits< MatrixA >::value_type alpha,
+ const MatrixA& a, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     trmm_impl< value_type >::invoke( side, transa, diag, alpha, a, b );
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/trsm.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/trsm.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/blas/level3/trsm.hpp 2009-09-17 03:47:43 EDT (Thu, 17 Sep 2009)
@@ -29,32 +29,32 @@
 
 // overloaded functions to call blas
 namespace detail {
- inline void trsm( char const side, char const uplo, char const transa,
- char const diag, integer_t const m, integer_t const n,
- float const alpha, float* a, integer_t const lda, float* b,
- integer_t const ldb ) {
+ inline void trsm( const char side, const char uplo, const char transa,
+ const char diag, const integer_t m, const integer_t n,
+ const float alpha, float const* a, const integer_t lda, float* b,
+ const integer_t ldb ) {
         BLAS_STRSM( &side, &uplo, &transa, &diag, &m, &n, &alpha, a, &lda, b,
                 &ldb );
     }
- inline void trsm( char const side, char const uplo, char const transa,
- char const diag, integer_t const m, integer_t const n,
- double const alpha, double* a, integer_t const lda, double* b,
- integer_t const ldb ) {
+ inline void trsm( const char side, const char uplo, const char transa,
+ const char diag, const integer_t m, const integer_t n,
+ const double alpha, double const* a, const integer_t lda,
+ double* b, const integer_t ldb ) {
         BLAS_DTRSM( &side, &uplo, &transa, &diag, &m, &n, &alpha, a, &lda, b,
                 &ldb );
     }
- inline void trsm( char const side, char const uplo, char const transa,
- char const diag, integer_t const m, integer_t const n,
- traits::complex_f const alpha, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb ) {
+ inline void trsm( const char side, const char uplo, const char transa,
+ const char diag, const integer_t m, const integer_t n,
+ const traits::complex_f alpha, traits::complex_f const* a,
+ const integer_t lda, traits::complex_f* b, const integer_t ldb ) {
         BLAS_CTRSM( &side, &uplo, &transa, &diag, &m, &n,
                 traits::complex_ptr(&alpha), traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb );
     }
- inline void trsm( char const side, char const uplo, char const transa,
- char const diag, integer_t const m, integer_t const n,
- traits::complex_d const alpha, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb ) {
+ inline void trsm( const char side, const char uplo, const char transa,
+ const char diag, const integer_t m, const integer_t n,
+ const traits::complex_d alpha, traits::complex_d const* a,
+ const integer_t lda, traits::complex_d* b, const integer_t ldb ) {
         BLAS_ZTRSM( &side, &uplo, &transa, &diag, &m, &n,
                 traits::complex_ptr(&alpha), traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb );
@@ -71,8 +71,9 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB >
- static return_type invoke( char const side, char const transa,
- char const diag, value_type const alpha, MatrixA& a, MatrixB& b ) {
+ static return_type invoke( const char side, const char transa,
+ const char diag, const value_type alpha, const MatrixA& a,
+ MatrixB& b ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -88,9 +89,9 @@
 template< typename MatrixA, typename MatrixB >
 inline typename trsm_impl< typename traits::matrix_traits<
         MatrixA >::value_type >::return_type
-trsm( char const side, char const transa, char const diag,
- typename traits::matrix_traits< MatrixA >::value_type const alpha,
- MatrixA& a, MatrixB& b ) {
+trsm( const char side, const char transa, const char diag,
+ const typename traits::matrix_traits< MatrixA >::value_type alpha,
+ const MatrixA& a, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     trsm_impl< value_type >::invoke( side, transa, diag, alpha, a, b );
 }


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk