Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r56268 - in sandbox/numeric_bindings/boost/numeric/bindings/lapack: computational detail driver
From: rutger_at_[hidden]
Date: 2009-09-17 07:43:33


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

Log:
LAPACK bindings sync

Text files modified:
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/bdsdc.hpp | 30
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/bdsqr.hpp | 60
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbbrd.hpp | 78
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbcon.hpp | 94
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbequ.hpp | 52
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbrfs.hpp | 122
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbtrf.hpp | 32
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbtrs.hpp | 46
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebak.hpp | 36
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebal.hpp | 22
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebrd.hpp | 28
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gecon.hpp | 76
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geequ.hpp | 34
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gehrd.hpp | 40
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gelqf.hpp | 28
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqlf.hpp | 28
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqp3.hpp | 30
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqrf.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gerfs.hpp | 114
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gerqf.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getrf.hpp | 16
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getri.hpp | 41
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getrs.hpp | 37
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggbak.hpp | 50
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggbal.hpp | 36
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gghrd.hpp | 44
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggqrf.hpp | 32
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggrqf.hpp | 32
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggsvp.hpp | 130
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gtrfs.hpp | 113
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gttrs.hpp | 46
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hbgst.hpp | 52
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hbtrd.hpp | 34
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hecon.hpp | 50
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hegst.hpp | 22
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/herfs.hpp | 64
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrd.hpp | 12
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrf.hpp | 12
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetri.hpp | 23
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrs.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hgeqz.hpp | 90
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hprfs.hpp | 62
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hptrs.hpp | 23
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hsein.hpp | 139
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hseqr.hpp | 76
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/labrd.hpp | 26
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/lacon.hpp | 30
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/laebz.hpp | 110
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/larz.hpp | 93
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrd.hpp | 30
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrs.hpp | 36
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrz.hpp | 20
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/opgtr.hpp | 33
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/opmtr.hpp | 47
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgbr.hpp | 45
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orghr.hpp | 41
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orglq.hpp | 42
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgql.hpp | 42
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgqr.hpp | 42
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgrq.hpp | 42
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgtr.hpp | 27
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormbr.hpp | 53
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormhr.hpp | 54
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormlq.hpp | 49
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormql.hpp | 49
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormqr.hpp | 49
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormrq.hpp | 49
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormrz.hpp | 46
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormtr.hpp | 44
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbcon.hpp | 74
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbequ.hpp | 30
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbrfs.hpp | 108
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbstf.hpp | 20
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbtrf.hpp | 20
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbtrs.hpp | 35
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pftrs.hpp | 36
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pocon.hpp | 70
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/poequ.hpp | 21
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/porfs.hpp | 91
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potrf.hpp | 16
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potri.hpp | 16
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potrs.hpp | 30
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pprfs.hpp | 101
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pptrs.hpp | 29
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pteqr.hpp | 36
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ptrfs.hpp | 111
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pttrs.hpp | 38
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sbgst.hpp | 50
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sbtrd.hpp | 34
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sprfs.hpp | 108
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sptrs.hpp | 35
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stebz.hpp | 86
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stedc.hpp | 48
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stegr.hpp | 126
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stein.hpp | 96
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stemr.hpp | 128
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/steqr.hpp | 32
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sterf.hpp | 8
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sycon.hpp | 80
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sygst.hpp | 20
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/syrfs.hpp | 111
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrd.hpp | 12
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrf.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytri.hpp | 39
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrs.hpp | 37
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbcon.hpp | 74
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbrfs.hpp | 119
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbtrs.hpp | 44
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgevc.hpp | 117
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgexc.hpp | 78
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsen.hpp | 112
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsja.hpp | 120
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsna.hpp | 126
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsyl.hpp | 136
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tprfs.hpp | 106
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tptri.hpp | 12
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tptrs.hpp | 35
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trcon.hpp | 72
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trevc.hpp | 112
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trexc.hpp | 44
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trrfs.hpp | 102
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsen.hpp | 40
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsna.hpp | 118
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsyl.hpp | 60
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trtri.hpp | 20
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trtrs.hpp | 36
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tzrzf.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungbr.hpp | 47
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unghr.hpp | 43
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unglq.hpp | 44
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungql.hpp | 44
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungqr.hpp | 44
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungrq.hpp | 44
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungtr.hpp | 31
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmbr.hpp | 56
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmhr.hpp | 58
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmlq.hpp | 51
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmql.hpp | 51
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmqr.hpp | 51
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmrq.hpp | 51
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmrz.hpp | 49
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmtr.hpp | 46
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/upgtr.hpp | 37
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/upmtr.hpp | 45
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/detail/lapack.h | 5496 ++++++++++++++++++++--------------------
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/cgesv.hpp | 38
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/cposv.hpp | 35
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gbsv.hpp | 36
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gbsvx.hpp | 84
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gees.hpp | 60
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geesx.hpp | 96
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geev.hpp | 64
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geevx.hpp | 90
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gegv.hpp | 62
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gels.hpp | 52
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelsd.hpp | 114
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelss.hpp | 66
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelsy.hpp | 66
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesdd.hpp | 66
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesv.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesvd.hpp | 60
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesvx.hpp | 60
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gges.hpp | 82
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggesx.hpp | 112
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggev.hpp | 62
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggevx.hpp | 102
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggglm.hpp | 40
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gglse.hpp | 40
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggsvd.hpp | 78
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gtsv.hpp | 20
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gtsvx.hpp | 151
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbev.hpp | 36
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbevd.hpp | 46
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbevx.hpp | 90
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgv.hpp | 40
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgvd.hpp | 50
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgvx.hpp | 98
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heev.hpp | 26
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevd.hpp | 32
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevr.hpp | 84
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevx.hpp | 80
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegv.hpp | 40
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegvd.hpp | 50
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegvx.hpp | 94
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hesv.hpp | 16
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hesvx.hpp | 52
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpev.hpp | 22
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpevd.hpp | 32
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpevx.hpp | 76
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgv.hpp | 36
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgvd.hpp | 46
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgvx.hpp | 90
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpsv.hpp | 12
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpsvx.hpp | 69
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/lacgv.hpp | 14
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/lalsd.hpp | 96
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/largv.hpp | 40
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/pbsv.hpp | 28
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/pbsvx.hpp | 84
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/posv.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/posvx.hpp | 60
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ppsv.hpp | 20
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ppsvx.hpp | 56
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ptsv.hpp | 22
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ptsvx.hpp | 100
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbev.hpp | 34
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbevd.hpp | 50
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbevx.hpp | 88
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgv.hpp | 38
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgvd.hpp | 44
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgvx.hpp | 94
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sgesv.hpp | 30
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spev.hpp | 20
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spevd.hpp | 28
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spevx.hpp | 70
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgv.hpp | 34
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgvd.hpp | 40
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgvx.hpp | 84
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sposv.hpp | 30
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spsv.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spsvx.hpp | 86
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stev.hpp | 20
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevd.hpp | 26
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevr.hpp | 82
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevx.hpp | 74
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syev.hpp | 24
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevd.hpp | 26
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevr.hpp | 78
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevx.hpp | 76
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygv.hpp | 36
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygvd.hpp | 42
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygvx.hpp | 90
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sysv.hpp | 32
   sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sysvx.hpp | 91
   234 files changed, 9328 insertions(+), 8992 deletions(-)

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/bdsdc.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/bdsdc.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/bdsdc.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,16 +33,16 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void bdsdc( char const uplo, char const compq, integer_t const n,
- float* d, float* e, float* u, integer_t const ldu, float* vt,
- integer_t const ldvt, float* q, integer_t* iq, float* work,
+ inline void bdsdc( const char uplo, const char compq, const integer_t n,
+ float* d, float* e, float* u, const integer_t ldu, float* vt,
+ const integer_t ldvt, float* q, integer_t* iq, float* work,
             integer_t* iwork, integer_t& info ) {
         LAPACK_SBDSDC( &uplo, &compq, &n, d, e, u, &ldu, vt, &ldvt, q, iq,
                 work, iwork, &info );
     }
- inline void bdsdc( char const uplo, char const compq, integer_t const n,
- double* d, double* e, double* u, integer_t const ldu, double* vt,
- integer_t const ldvt, double* q, integer_t* iq, double* work,
+ inline void bdsdc( const char uplo, const char compq, const integer_t n,
+ double* d, double* e, double* u, const integer_t ldu, double* vt,
+ const integer_t ldvt, double* q, integer_t* iq, double* work,
             integer_t* iwork, integer_t& info ) {
         LAPACK_DBDSDC( &uplo, &compq, &n, d, e, u, &ldu, vt, &ldvt, q, iq,
                 work, iwork, &info );
@@ -60,7 +60,7 @@
     template< typename VectorD, typename VectorE, typename MatrixU,
             typename MatrixVT, typename VectorQ, typename VectorIQ,
             typename WORK, typename IWORK >
- static void invoke( char const uplo, char const compq, integer_t const n,
+ static void invoke( const char uplo, const char compq, const integer_t n,
             VectorD& d, VectorE& e, MatrixU& u, MatrixVT& vt, VectorQ& q,
             VectorIQ& iq, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
@@ -96,7 +96,7 @@
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixU,
             typename MatrixVT, typename VectorQ, typename VectorIQ >
- static void invoke( char const uplo, char const compq, integer_t const n,
+ static void invoke( const char uplo, const char compq, const integer_t n,
             VectorD& d, VectorE& e, MatrixU& u, MatrixVT& vt, VectorQ& q,
             VectorIQ& iq, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( compq,
@@ -109,14 +109,14 @@
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixU,
             typename MatrixVT, typename VectorQ, typename VectorIQ >
- static void invoke( char const uplo, char const compq, integer_t const n,
+ static void invoke( const char uplo, const char compq, const integer_t n,
             VectorD& d, VectorE& e, MatrixU& u, MatrixVT& vt, VectorQ& q,
             VectorIQ& iq, integer_t& info, optimal_workspace work ) {
         invoke( uplo, compq, n, d, e, u, vt, q, iq, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( char const compq, integer_t const n ) {
+ static integer_t min_size_work( const char compq, const integer_t n ) {
         switch ( compq ) {
             case 'N': return 4*n;
             case 'P': return 6*n;
@@ -124,7 +124,7 @@
         }
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 8*n;
     }
 };
@@ -134,8 +134,8 @@
 template< typename VectorD, typename VectorE, typename MatrixU,
         typename MatrixVT, typename VectorQ, typename VectorIQ,
         typename Workspace >
-inline integer_t bdsdc( char const uplo, char const compq,
- integer_t const n, VectorD& d, VectorE& e, MatrixU& u, MatrixVT& vt,
+inline integer_t bdsdc( const char uplo, const char compq,
+ const integer_t n, VectorD& d, VectorE& e, MatrixU& u, MatrixVT& vt,
         VectorQ& q, VectorIQ& iq, Workspace work ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);
@@ -147,8 +147,8 @@
 // template function to call bdsdc, default workspace type
 template< typename VectorD, typename VectorE, typename MatrixU,
         typename MatrixVT, typename VectorQ, typename VectorIQ >
-inline integer_t bdsdc( char const uplo, char const compq,
- integer_t const n, VectorD& d, VectorE& e, MatrixU& u, MatrixVT& vt,
+inline integer_t bdsdc( const char uplo, const char compq,
+ const integer_t n, VectorD& d, VectorE& e, MatrixU& u, MatrixVT& vt,
         VectorQ& q, VectorIQ& iq ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/bdsqr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/bdsqr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/bdsqr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,36 +36,36 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void bdsqr( char const uplo, integer_t const n,
- integer_t const ncvt, integer_t const nru, integer_t const ncc,
- float* d, float* e, float* vt, integer_t const ldvt, float* u,
- integer_t const ldu, float* c, integer_t const ldc, float* work,
+ inline void bdsqr( const char uplo, const integer_t n,
+ const integer_t ncvt, const integer_t nru, const integer_t ncc,
+ float* d, float* e, float* vt, const integer_t ldvt, float* u,
+ const integer_t ldu, float* c, const integer_t ldc, float* work,
             integer_t& info ) {
         LAPACK_SBDSQR( &uplo, &n, &ncvt, &nru, &ncc, d, e, vt, &ldvt, u, &ldu,
                 c, &ldc, work, &info );
     }
- inline void bdsqr( char const uplo, integer_t const n,
- integer_t const ncvt, integer_t const nru, integer_t const ncc,
- double* d, double* e, double* vt, integer_t const ldvt, double* u,
- integer_t const ldu, double* c, integer_t const ldc, double* work,
+ inline void bdsqr( const char uplo, const integer_t n,
+ const integer_t ncvt, const integer_t nru, const integer_t ncc,
+ double* d, double* e, double* vt, const integer_t ldvt, double* u,
+ const integer_t ldu, double* c, const integer_t ldc, double* work,
             integer_t& info ) {
         LAPACK_DBDSQR( &uplo, &n, &ncvt, &nru, &ncc, d, e, vt, &ldvt, u, &ldu,
                 c, &ldc, work, &info );
     }
- inline void bdsqr( char const uplo, integer_t const n,
- integer_t const ncvt, integer_t const nru, integer_t const ncc,
- float* d, float* e, traits::complex_f* vt, integer_t const ldvt,
- traits::complex_f* u, integer_t const ldu, traits::complex_f* c,
- integer_t const ldc, float* rwork, integer_t& info ) {
+ inline void bdsqr( const char uplo, const integer_t n,
+ const integer_t ncvt, const integer_t nru, const integer_t ncc,
+ float* d, float* e, traits::complex_f* vt, const integer_t ldvt,
+ traits::complex_f* u, const integer_t ldu, traits::complex_f* c,
+ const integer_t ldc, float* rwork, integer_t& info ) {
         LAPACK_CBDSQR( &uplo, &n, &ncvt, &nru, &ncc, d, e,
                 traits::complex_ptr(vt), &ldvt, traits::complex_ptr(u), &ldu,
                 traits::complex_ptr(c), &ldc, rwork, &info );
     }
- inline void bdsqr( char const uplo, integer_t const n,
- integer_t const ncvt, integer_t const nru, integer_t const ncc,
- double* d, double* e, traits::complex_d* vt, integer_t const ldvt,
- traits::complex_d* u, integer_t const ldu, traits::complex_d* c,
- integer_t const ldc, double* rwork, integer_t& info ) {
+ inline void bdsqr( const char uplo, const integer_t n,
+ const integer_t ncvt, const integer_t nru, const integer_t ncc,
+ double* d, double* e, traits::complex_d* vt, const integer_t ldvt,
+ traits::complex_d* u, const integer_t ldu, traits::complex_d* c,
+ const integer_t ldc, double* rwork, integer_t& info ) {
         LAPACK_ZBDSQR( &uplo, &n, &ncvt, &nru, &ncc, d, e,
                 traits::complex_ptr(vt), &ldvt, traits::complex_ptr(u), &ldu,
                 traits::complex_ptr(c), &ldc, rwork, &info );
@@ -86,7 +86,7 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixVT,
             typename MatrixU, typename MatrixC, typename WORK >
- static void invoke( char const uplo, integer_t const n, VectorD& d,
+ static void invoke( const char uplo, const integer_t n, VectorD& d,
             VectorE& e, MatrixVT& vt, MatrixU& u, MatrixC& c, integer_t& info,
             detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -123,7 +123,7 @@
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixVT,
             typename MatrixU, typename MatrixC >
- static void invoke( char const uplo, integer_t const n, VectorD& d,
+ static void invoke( const char uplo, const integer_t n, VectorD& d,
             VectorE& e, MatrixVT& vt, MatrixU& u, MatrixC& c, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n,
@@ -135,14 +135,14 @@
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixVT,
             typename MatrixU, typename MatrixC >
- static void invoke( char const uplo, integer_t const n, VectorD& d,
+ static void invoke( const char uplo, const integer_t n, VectorD& d,
             VectorE& e, MatrixVT& vt, MatrixU& u, MatrixC& c, integer_t& info,
             optimal_workspace work ) {
         invoke( uplo, n, d, e, vt, u, c, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n, integer_t const ncvt,
- integer_t const nru, integer_t const ncc ) {
+ static integer_t min_size_work( const integer_t n, const integer_t ncvt,
+ const integer_t nru, const integer_t ncc ) {
         if ( ncvt == 0 && nru == 0 && ncc == 0 )
             return 2*n;
         else
@@ -160,7 +160,7 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixVT,
             typename MatrixU, typename MatrixC, typename RWORK >
- static void invoke( char const uplo, integer_t const n, VectorD& d,
+ static void invoke( const char uplo, const integer_t n, VectorD& d,
             VectorE& e, MatrixVT& vt, MatrixU& u, MatrixC& c, integer_t& info,
             detail::workspace1< RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -194,7 +194,7 @@
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixVT,
             typename MatrixU, typename MatrixC >
- static void invoke( char const uplo, integer_t const n, VectorD& d,
+ static void invoke( const char uplo, const integer_t n, VectorD& d,
             VectorE& e, MatrixVT& vt, MatrixU& u, MatrixC& c, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n,
@@ -206,14 +206,14 @@
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixVT,
             typename MatrixU, typename MatrixC >
- static void invoke( char const uplo, integer_t const n, VectorD& d,
+ static void invoke( const char uplo, const integer_t n, VectorD& d,
             VectorE& e, MatrixVT& vt, MatrixU& u, MatrixC& c, integer_t& info,
             optimal_workspace work ) {
         invoke( uplo, n, d, e, vt, u, c, info, minimal_workspace() );
     }
 
- static integer_t min_size_rwork( integer_t const n, integer_t const ncvt,
- integer_t const nru, integer_t const ncc ) {
+ static integer_t min_size_rwork( const integer_t n, const integer_t ncvt,
+ const integer_t nru, const integer_t ncc ) {
         if ( ncvt == 0 && nru == 0 && ncc == 0 )
             return 2*n;
         else
@@ -225,7 +225,7 @@
 // template function to call bdsqr
 template< typename VectorD, typename VectorE, typename MatrixVT,
         typename MatrixU, typename MatrixC, typename Workspace >
-inline integer_t bdsqr( char const uplo, integer_t const n, VectorD& d,
+inline integer_t bdsqr( const char uplo, const integer_t n, VectorD& d,
         VectorE& e, MatrixVT& vt, MatrixU& u, MatrixC& c, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixVT >::value_type value_type;
     integer_t info(0);
@@ -237,7 +237,7 @@
 // template function to call bdsqr, default workspace type
 template< typename VectorD, typename VectorE, typename MatrixVT,
         typename MatrixU, typename MatrixC >
-inline integer_t bdsqr( char const uplo, integer_t const n, VectorD& d,
+inline integer_t bdsqr( const char uplo, const integer_t n, VectorD& d,
         VectorE& e, MatrixVT& vt, MatrixU& u, MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixVT >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbbrd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbbrd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbbrd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,38 +36,38 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gbbrd( char const vect, integer_t const m, integer_t const n,
- integer_t const ncc, integer_t const kl, integer_t const ku,
- float* ab, integer_t const ldab, float* d, float* e, float* q,
- integer_t const ldq, float* pt, integer_t const ldpt, float* c,
- integer_t const ldc, float* work, integer_t& info ) {
+ inline void gbbrd( const char vect, const integer_t m, const integer_t n,
+ const integer_t ncc, const integer_t kl, const integer_t ku,
+ float* ab, const integer_t ldab, float* d, float* e, float* q,
+ const integer_t ldq, float* pt, const integer_t ldpt, float* c,
+ const integer_t ldc, float* work, integer_t& info ) {
         LAPACK_SGBBRD( &vect, &m, &n, &ncc, &kl, &ku, ab, &ldab, d, e, q,
                 &ldq, pt, &ldpt, c, &ldc, work, &info );
     }
- inline void gbbrd( char const vect, integer_t const m, integer_t const n,
- integer_t const ncc, integer_t const kl, integer_t const ku,
- double* ab, integer_t const ldab, double* d, double* e, double* q,
- integer_t const ldq, double* pt, integer_t const ldpt, double* c,
- integer_t const ldc, double* work, integer_t& info ) {
+ inline void gbbrd( const char vect, const integer_t m, const integer_t n,
+ const integer_t ncc, const integer_t kl, const integer_t ku,
+ double* ab, const integer_t ldab, double* d, double* e, double* q,
+ const integer_t ldq, double* pt, const integer_t ldpt, double* c,
+ const integer_t ldc, double* work, integer_t& info ) {
         LAPACK_DGBBRD( &vect, &m, &n, &ncc, &kl, &ku, ab, &ldab, d, e, q,
                 &ldq, pt, &ldpt, c, &ldc, work, &info );
     }
- inline void gbbrd( char const vect, integer_t const m, integer_t const n,
- integer_t const ncc, integer_t const kl, integer_t const ku,
- traits::complex_f* ab, integer_t const ldab, float* d, float* e,
- traits::complex_f* q, integer_t const ldq, traits::complex_f* pt,
- integer_t const ldpt, traits::complex_f* c, integer_t const ldc,
+ inline void gbbrd( const char vect, const integer_t m, const integer_t n,
+ const integer_t ncc, const integer_t kl, const integer_t ku,
+ traits::complex_f* ab, const integer_t ldab, float* d, float* e,
+ traits::complex_f* q, const integer_t ldq, traits::complex_f* pt,
+ const integer_t ldpt, traits::complex_f* c, const integer_t ldc,
             traits::complex_f* work, float* rwork, integer_t& info ) {
         LAPACK_CGBBRD( &vect, &m, &n, &ncc, &kl, &ku, traits::complex_ptr(ab),
                 &ldab, d, e, traits::complex_ptr(q), &ldq,
                 traits::complex_ptr(pt), &ldpt, traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void gbbrd( char const vect, integer_t const m, integer_t const n,
- integer_t const ncc, integer_t const kl, integer_t const ku,
- traits::complex_d* ab, integer_t const ldab, double* d, double* e,
- traits::complex_d* q, integer_t const ldq, traits::complex_d* pt,
- integer_t const ldpt, traits::complex_d* c, integer_t const ldc,
+ inline void gbbrd( const char vect, const integer_t m, const integer_t n,
+ const integer_t ncc, const integer_t kl, const integer_t ku,
+ traits::complex_d* ab, const integer_t ldab, double* d, double* e,
+ traits::complex_d* q, const integer_t ldq, traits::complex_d* pt,
+ const integer_t ldpt, traits::complex_d* c, const integer_t ldc,
             traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZGBBRD( &vect, &m, &n, &ncc, &kl, &ku, traits::complex_ptr(ab),
                 &ldab, d, e, traits::complex_ptr(q), &ldq,
@@ -91,8 +91,8 @@
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ, typename MatrixPT, typename MatrixC,
             typename WORK >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab, VectorD& d,
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab, VectorD& d,
             VectorE& e, MatrixQ& q, MatrixPT& pt, MatrixC& c, integer_t& info,
             detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -134,8 +134,8 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ, typename MatrixPT, typename MatrixC >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab, VectorD& d,
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab, VectorD& d,
             VectorE& e, MatrixQ& q, MatrixPT& pt, MatrixC& c, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( m, n ) );
@@ -146,15 +146,15 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ, typename MatrixPT, typename MatrixC >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab, VectorD& d,
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab, VectorD& d,
             VectorE& e, MatrixQ& q, MatrixPT& pt, MatrixC& c, integer_t& info,
             optimal_workspace work ) {
         invoke( vect, m, n, kl, ku, ab, d, e, q, pt, c, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n ) {
         return 2*std::max(m,n);
     }
 };
@@ -170,8 +170,8 @@
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ, typename MatrixPT, typename MatrixC,
             typename WORK, typename RWORK >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab, VectorD& d,
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab, VectorD& d,
             VectorE& e, MatrixQ& q, MatrixPT& pt, MatrixC& c, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -213,8 +213,8 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ, typename MatrixPT, typename MatrixC >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab, VectorD& d,
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab, VectorD& d,
             VectorE& e, MatrixQ& q, MatrixPT& pt, MatrixC& c, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( m, n ) );
@@ -226,19 +226,19 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ, typename MatrixPT, typename MatrixC >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab, VectorD& d,
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab, VectorD& d,
             VectorE& e, MatrixQ& q, MatrixPT& pt, MatrixC& c, integer_t& info,
             optimal_workspace work ) {
         invoke( vect, m, n, kl, ku, ab, d, e, q, pt, c, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n ) {
         return std::max(m,n);
     }
 
- static integer_t min_size_rwork( integer_t const m, integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t m, const integer_t n ) {
         return std::max(m,n);
     }
 };
@@ -248,8 +248,8 @@
 template< typename MatrixAB, typename VectorD, typename VectorE,
         typename MatrixQ, typename MatrixPT, typename MatrixC,
         typename Workspace >
-inline integer_t gbbrd( char const vect, integer_t const m,
- integer_t const n, integer_t const kl, integer_t const ku,
+inline integer_t gbbrd( const char vect, const integer_t m,
+ const integer_t n, const integer_t kl, const integer_t ku,
         MatrixAB& ab, VectorD& d, VectorE& e, MatrixQ& q, MatrixPT& pt,
         MatrixC& c, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
@@ -262,8 +262,8 @@
 // template function to call gbbrd, default workspace type
 template< typename MatrixAB, typename VectorD, typename VectorE,
         typename MatrixQ, typename MatrixPT, typename MatrixC >
-inline integer_t gbbrd( char const vect, integer_t const m,
- integer_t const n, integer_t const kl, integer_t const ku,
+inline integer_t gbbrd( const char vect, const integer_t m,
+ const integer_t n, const integer_t kl, const integer_t ku,
         MatrixAB& ab, VectorD& d, VectorE& e, MatrixQ& q, MatrixPT& pt,
         MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbcon.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbcon.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbcon.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,32 +36,34 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gbcon( char const norm, integer_t const n, integer_t const kl,
- integer_t const ku, float* ab, integer_t const ldab,
- integer_t* ipiv, float const anorm, float& rcond, float* work,
- integer_t* iwork, integer_t& info ) {
+ inline void gbcon( const char norm, const integer_t n, const integer_t kl,
+ const integer_t ku, const float* ab, const integer_t ldab,
+ const integer_t* ipiv, const float anorm, float& rcond,
+ float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SGBCON( &norm, &n, &kl, &ku, ab, &ldab, ipiv, &anorm, &rcond,
                 work, iwork, &info );
     }
- inline void gbcon( char const norm, integer_t const n, integer_t const kl,
- integer_t const ku, double* ab, integer_t const ldab,
- integer_t* ipiv, double const anorm, double& rcond, double* work,
- integer_t* iwork, integer_t& info ) {
+ inline void gbcon( const char norm, const integer_t n, const integer_t kl,
+ const integer_t ku, const double* ab, const integer_t ldab,
+ const integer_t* ipiv, const double anorm, double& rcond,
+ double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DGBCON( &norm, &n, &kl, &ku, ab, &ldab, ipiv, &anorm, &rcond,
                 work, iwork, &info );
     }
- inline void gbcon( char const norm, integer_t const n, integer_t const kl,
- integer_t const ku, traits::complex_f* ab, integer_t const ldab,
- integer_t* ipiv, float const anorm, float& rcond,
- traits::complex_f* work, float* rwork, integer_t& info ) {
+ inline void gbcon( const char norm, const integer_t n, const integer_t kl,
+ const integer_t ku, const traits::complex_f* ab,
+ const integer_t ldab, const integer_t* ipiv, const float anorm,
+ float& rcond, traits::complex_f* work, float* rwork,
+ integer_t& info ) {
         LAPACK_CGBCON( &norm, &n, &kl, &ku, traits::complex_ptr(ab), &ldab,
                 ipiv, &anorm, &rcond, traits::complex_ptr(work), rwork,
                 &info );
     }
- inline void gbcon( char const norm, integer_t const n, integer_t const kl,
- integer_t const ku, traits::complex_d* ab, integer_t const ldab,
- integer_t* ipiv, double const anorm, double& rcond,
- traits::complex_d* work, double* rwork, integer_t& info ) {
+ inline void gbcon( const char norm, const integer_t n, const integer_t kl,
+ const integer_t ku, const traits::complex_d* ab,
+ const integer_t ldab, const integer_t* ipiv, const double anorm,
+ double& rcond, traits::complex_d* work, double* rwork,
+ integer_t& info ) {
         LAPACK_ZGBCON( &norm, &n, &kl, &ku, traits::complex_ptr(ab), &ldab,
                 ipiv, &anorm, &rcond, traits::complex_ptr(work), rwork,
                 &info );
@@ -82,9 +84,9 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename VectorIPIV, typename WORK,
             typename IWORK >
- static void invoke( char const norm, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- VectorIPIV& ipiv, real_type const anorm, real_type& rcond,
+ static void invoke( const char norm, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_ASSERT( norm == '1' || norm == 'O' || norm == 'I' );
         BOOST_ASSERT( n >= 0 );
@@ -105,9 +107,9 @@
 
     // minimal workspace specialization
     template< typename MatrixAB, typename VectorIPIV >
- static void invoke( char const norm, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- VectorIPIV& ipiv, real_type const anorm, real_type& rcond,
+ static void invoke( const char norm, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
@@ -117,19 +119,19 @@
 
     // optimal workspace specialization
     template< typename MatrixAB, typename VectorIPIV >
- static void invoke( char const norm, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- VectorIPIV& ipiv, real_type const anorm, real_type& rcond,
+ static void invoke( const char norm, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
             integer_t& info, optimal_workspace work ) {
         invoke( norm, n, kl, ku, ab, ipiv, anorm, rcond, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -144,9 +146,9 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename VectorIPIV, typename WORK,
             typename RWORK >
- static void invoke( char const norm, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- VectorIPIV& ipiv, real_type const anorm, real_type& rcond,
+ static void invoke( const char norm, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
             integer_t& info, detail::workspace2< WORK, RWORK > work ) {
         BOOST_ASSERT( norm == '1' || norm == 'O' || norm == 'I' );
         BOOST_ASSERT( n >= 0 );
@@ -167,9 +169,9 @@
 
     // minimal workspace specialization
     template< typename MatrixAB, typename VectorIPIV >
- static void invoke( char const norm, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- VectorIPIV& ipiv, real_type const anorm, real_type& rcond,
+ static void invoke( const char norm, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -179,19 +181,19 @@
 
     // optimal workspace specialization
     template< typename MatrixAB, typename VectorIPIV >
- static void invoke( char const norm, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- VectorIPIV& ipiv, real_type const anorm, real_type& rcond,
+ static void invoke( const char norm, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
             integer_t& info, optimal_workspace work ) {
         invoke( norm, n, kl, ku, ab, ipiv, anorm, rcond, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -199,11 +201,11 @@
 
 // template function to call gbcon
 template< typename MatrixAB, typename VectorIPIV, typename Workspace >
-inline integer_t gbcon( char const norm, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- VectorIPIV& ipiv, typename traits::type_traits<
+inline integer_t gbcon( const char norm, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const VectorIPIV& ipiv, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const anorm,
+ MatrixAB >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixAB >::value_type >::real_type& rcond, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
@@ -215,11 +217,11 @@
 
 // template function to call gbcon, default workspace type
 template< typename MatrixAB, typename VectorIPIV >
-inline integer_t gbcon( char const norm, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- VectorIPIV& ipiv, typename traits::type_traits<
+inline integer_t gbcon( const char norm, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const VectorIPIV& ipiv, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const anorm,
+ MatrixAB >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixAB >::value_type >::real_type& rcond ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbequ.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbequ.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbequ.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,31 +34,33 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gbequ( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, float* ab,
- integer_t const ldab, float* r, float* c, float& rowcnd,
+ inline void gbequ( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, const float* ab,
+ const integer_t ldab, float* r, float* c, float& rowcnd,
             float& colcnd, float& amax, integer_t& info ) {
         LAPACK_SGBEQU( &m, &n, &kl, &ku, ab, &ldab, r, c, &rowcnd, &colcnd,
                 &amax, &info );
     }
- inline void gbequ( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, double* ab,
- integer_t const ldab, double* r, double* c, double& rowcnd,
+ inline void gbequ( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, const double* ab,
+ const integer_t ldab, double* r, double* c, double& rowcnd,
             double& colcnd, double& amax, integer_t& info ) {
         LAPACK_DGBEQU( &m, &n, &kl, &ku, ab, &ldab, r, c, &rowcnd, &colcnd,
                 &amax, &info );
     }
- inline void gbequ( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, traits::complex_f* ab,
- integer_t const ldab, float* r, float* c, float& rowcnd,
- float& colcnd, float& amax, integer_t& info ) {
+ inline void gbequ( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku,
+ const traits::complex_f* ab, const integer_t ldab, float* r,
+ float* c, float& rowcnd, float& colcnd, float& amax,
+ integer_t& info ) {
         LAPACK_CGBEQU( &m, &n, &kl, &ku, traits::complex_ptr(ab), &ldab, r, c,
                 &rowcnd, &colcnd, &amax, &info );
     }
- inline void gbequ( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, traits::complex_d* ab,
- integer_t const ldab, double* r, double* c, double& rowcnd,
- double& colcnd, double& amax, integer_t& info ) {
+ inline void gbequ( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku,
+ const traits::complex_d* ab, const integer_t ldab, double* r,
+ double* c, double& rowcnd, double& colcnd, double& amax,
+ integer_t& info ) {
         LAPACK_ZGBEQU( &m, &n, &kl, &ku, traits::complex_ptr(ab), &ldab, r, c,
                 &rowcnd, &colcnd, &amax, &info );
     }
@@ -77,10 +79,10 @@
 
     // templated specialization
     template< typename MatrixAB, typename VectorR, typename VectorC >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab, VectorR& r,
- VectorC& c, real_type& rowcnd, real_type& colcnd, real_type& amax,
- integer_t& info ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ VectorR& r, VectorC& c, real_type& rowcnd, real_type& colcnd,
+ real_type& amax, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::vector_traits<
                 VectorR >::value_type >::value) );
@@ -107,10 +109,10 @@
 
     // templated specialization
     template< typename MatrixAB, typename VectorR, typename VectorC >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab, VectorR& r,
- VectorC& c, real_type& rowcnd, real_type& colcnd, real_type& amax,
- integer_t& info ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ VectorR& r, VectorC& c, real_type& rowcnd, real_type& colcnd,
+ real_type& amax, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorR >::value_type, typename traits::vector_traits<
                 VectorC >::value_type >::value) );
@@ -128,9 +130,9 @@
 
 // template function to call gbequ
 template< typename MatrixAB, typename VectorR, typename VectorC >
-inline integer_t gbequ( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab, VectorR& r,
- VectorC& c, typename traits::type_traits<
+inline integer_t gbequ( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ VectorR& r, VectorC& c, typename traits::type_traits<
         typename traits::matrix_traits<
         MatrixAB >::value_type >::real_type& rowcnd,
         typename traits::type_traits< typename traits::matrix_traits<

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbrfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbrfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbrfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,43 +36,45 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gbrfs( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- float* ab, integer_t const ldab, float* afb,
- integer_t const ldafb, integer_t* ipiv, float* b,
- integer_t const ldb, float* x, integer_t const ldx, float* ferr,
+ inline void gbrfs( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ const float* ab, const integer_t ldab, const float* afb,
+ const integer_t ldafb, const integer_t* ipiv, const float* b,
+ const integer_t ldb, float* x, const integer_t ldx, float* ferr,
             float* berr, float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SGBRFS( &trans, &n, &kl, &ku, &nrhs, ab, &ldab, afb, &ldafb,
                 ipiv, b, &ldb, x, &ldx, ferr, berr, work, iwork, &info );
     }
- inline void gbrfs( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- double* ab, integer_t const ldab, double* afb,
- integer_t const ldafb, integer_t* ipiv, double* b,
- integer_t const ldb, double* x, integer_t const ldx, double* ferr,
+ inline void gbrfs( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ const double* ab, const integer_t ldab, const double* afb,
+ const integer_t ldafb, const integer_t* ipiv, const double* b,
+ const integer_t ldb, double* x, const integer_t ldx, double* ferr,
             double* berr, double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DGBRFS( &trans, &n, &kl, &ku, &nrhs, ab, &ldab, afb, &ldafb,
                 ipiv, b, &ldb, x, &ldx, ferr, berr, work, iwork, &info );
     }
- inline void gbrfs( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- traits::complex_f* ab, integer_t const ldab,
- traits::complex_f* afb, integer_t const ldafb, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* x,
- integer_t const ldx, float* ferr, float* berr,
- traits::complex_f* work, float* rwork, integer_t& info ) {
+ inline void gbrfs( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ const traits::complex_f* ab, const integer_t ldab,
+ const traits::complex_f* afb, const integer_t ldafb,
+ const integer_t* ipiv, const traits::complex_f* b,
+ const integer_t ldb, traits::complex_f* x, const integer_t ldx,
+ float* ferr, float* berr, traits::complex_f* work, float* rwork,
+ integer_t& info ) {
         LAPACK_CGBRFS( &trans, &n, &kl, &ku, &nrhs, traits::complex_ptr(ab),
                 &ldab, traits::complex_ptr(afb), &ldafb, ipiv,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(x), &ldx,
                 ferr, berr, traits::complex_ptr(work), rwork, &info );
     }
- inline void gbrfs( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- traits::complex_d* ab, integer_t const ldab,
- traits::complex_d* afb, integer_t const ldafb, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, double* ferr, double* berr,
- traits::complex_d* work, double* rwork, integer_t& info ) {
+ inline void gbrfs( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ const traits::complex_d* ab, const integer_t ldab,
+ const traits::complex_d* afb, const integer_t ldafb,
+ const integer_t* ipiv, const traits::complex_d* b,
+ const integer_t ldb, traits::complex_d* x, const integer_t ldx,
+ double* ferr, double* berr, traits::complex_d* work,
+ double* rwork, integer_t& info ) {
         LAPACK_ZGBRFS( &trans, &n, &kl, &ku, &nrhs, traits::complex_ptr(ab),
                 &ldab, traits::complex_ptr(afb), &ldafb, ipiv,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(x), &ldx,
@@ -95,10 +97,10 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename IWORK >
- static void invoke( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- MatrixAFB& afb, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ static void invoke( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const MatrixAFB& afb, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
@@ -146,10 +148,10 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- MatrixAFB& afb, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ static void invoke( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const MatrixAFB& afb, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
@@ -161,20 +163,20 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- MatrixAFB& afb, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ static void invoke( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const MatrixAFB& afb, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
         invoke( trans, n, kl, ku, ab, afb, ipiv, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -190,10 +192,10 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- MatrixAFB& afb, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ static void invoke( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const MatrixAFB& afb, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
@@ -238,10 +240,10 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- MatrixAFB& afb, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ static void invoke( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const MatrixAFB& afb, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -253,20 +255,20 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- MatrixAFB& afb, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ static void invoke( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const MatrixAFB& afb, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
         invoke( trans, n, kl, ku, ab, afb, ipiv, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -276,10 +278,10 @@
 template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t gbrfs( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab, MatrixAFB& afb,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, Workspace work ) {
+inline integer_t gbrfs( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const MatrixAFB& afb, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     gbrfs_impl< value_type >::invoke( trans, n, kl, ku, ab, afb, ipiv, b,
@@ -291,10 +293,10 @@
 template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t gbrfs( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab, MatrixAFB& afb,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr ) {
+inline integer_t gbrfs( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const MatrixAFB& afb, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     gbrfs_impl< value_type >::invoke( trans, n, kl, ku, ab, afb, ipiv, b,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbtrf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbtrf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbtrf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,25 +31,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gbtrf( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, float* ab,
- integer_t const ldab, integer_t* ipiv, integer_t& info ) {
+ inline void gbtrf( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, float* ab,
+ const integer_t ldab, integer_t* ipiv, integer_t& info ) {
         LAPACK_SGBTRF( &m, &n, &kl, &ku, ab, &ldab, ipiv, &info );
     }
- inline void gbtrf( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, double* ab,
- integer_t const ldab, integer_t* ipiv, integer_t& info ) {
+ inline void gbtrf( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, double* ab,
+ const integer_t ldab, integer_t* ipiv, integer_t& info ) {
         LAPACK_DGBTRF( &m, &n, &kl, &ku, ab, &ldab, ipiv, &info );
     }
- inline void gbtrf( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, traits::complex_f* ab,
- integer_t const ldab, integer_t* ipiv, integer_t& info ) {
+ inline void gbtrf( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, traits::complex_f* ab,
+ const integer_t ldab, integer_t* ipiv, integer_t& info ) {
         LAPACK_CGBTRF( &m, &n, &kl, &ku, traits::complex_ptr(ab), &ldab, ipiv,
                 &info );
     }
- inline void gbtrf( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, traits::complex_d* ab,
- integer_t const ldab, integer_t* ipiv, integer_t& info ) {
+ inline void gbtrf( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, traits::complex_d* ab,
+ const integer_t ldab, integer_t* ipiv, integer_t& info ) {
         LAPACK_ZGBTRF( &m, &n, &kl, &ku, traits::complex_ptr(ab), &ldab, ipiv,
                 &info );
     }
@@ -64,8 +64,8 @@
 
     // templated specialization
     template< typename MatrixAB, typename VectorIPIV >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab,
             VectorIPIV& ipiv, integer_t& info ) {
         BOOST_ASSERT( m >= 0 );
         BOOST_ASSERT( n >= 0 );
@@ -82,8 +82,8 @@
 
 // template function to call gbtrf
 template< typename MatrixAB, typename VectorIPIV >
-inline integer_t gbtrf( integer_t const m, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
+inline integer_t gbtrf( const integer_t m, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab,
         VectorIPIV& ipiv ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbtrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbtrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gbtrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,31 +31,33 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gbtrs( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- float* ab, integer_t const ldab, integer_t* ipiv, float* b,
- integer_t const ldb, integer_t& info ) {
+ inline void gbtrs( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ const float* ab, const integer_t ldab, const integer_t* ipiv,
+ float* b, const integer_t ldb, integer_t& info ) {
         LAPACK_SGBTRS( &trans, &n, &kl, &ku, &nrhs, ab, &ldab, ipiv, b, &ldb,
                 &info );
     }
- inline void gbtrs( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- double* ab, integer_t const ldab, integer_t* ipiv, double* b,
- integer_t const ldb, integer_t& info ) {
+ inline void gbtrs( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ const double* ab, const integer_t ldab, const integer_t* ipiv,
+ double* b, const integer_t ldb, integer_t& info ) {
         LAPACK_DGBTRS( &trans, &n, &kl, &ku, &nrhs, ab, &ldab, ipiv, b, &ldb,
                 &info );
     }
- inline void gbtrs( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- traits::complex_f* ab, integer_t const ldab, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void gbtrs( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ const traits::complex_f* ab, const integer_t ldab,
+ const integer_t* ipiv, traits::complex_f* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_CGBTRS( &trans, &n, &kl, &ku, &nrhs, traits::complex_ptr(ab),
                 &ldab, ipiv, traits::complex_ptr(b), &ldb, &info );
     }
- inline void gbtrs( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- traits::complex_d* ab, integer_t const ldab, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void gbtrs( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ const traits::complex_d* ab, const integer_t ldab,
+ const integer_t* ipiv, traits::complex_d* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_ZGBTRS( &trans, &n, &kl, &ku, &nrhs, traits::complex_ptr(ab),
                 &ldab, ipiv, traits::complex_ptr(b), &ldb, &info );
     }
@@ -70,9 +72,9 @@
 
     // templated specialization
     template< typename MatrixAB, typename VectorIPIV, typename MatrixB >
- static void invoke( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- VectorIPIV& ipiv, MatrixB& b, integer_t& info ) {
+ static void invoke( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const VectorIPIV& ipiv, MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -94,9 +96,9 @@
 
 // template function to call gbtrs
 template< typename MatrixAB, typename VectorIPIV, typename MatrixB >
-inline integer_t gbtrs( char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
- VectorIPIV& ipiv, MatrixB& b ) {
+inline integer_t gbtrs( const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const MatrixAB& ab,
+ const VectorIPIV& ipiv, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     gbtrs_impl< value_type >::invoke( trans, n, kl, ku, ab, ipiv, b,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebak.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebak.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebak.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,30 +34,30 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gebak( char const job, char const side, integer_t const n,
- integer_t const ilo, integer_t const ihi, float* scale,
- integer_t const m, float* v, integer_t const ldv,
+ inline void gebak( const char job, const char side, const integer_t n,
+ const integer_t ilo, const integer_t ihi, const float* scale,
+ const integer_t m, float* v, const integer_t ldv,
             integer_t& info ) {
         LAPACK_SGEBAK( &job, &side, &n, &ilo, &ihi, scale, &m, v, &ldv,
                 &info );
     }
- inline void gebak( char const job, char const side, integer_t const n,
- integer_t const ilo, integer_t const ihi, double* scale,
- integer_t const m, double* v, integer_t const ldv,
+ inline void gebak( const char job, const char side, const integer_t n,
+ const integer_t ilo, const integer_t ihi, const double* scale,
+ const integer_t m, double* v, const integer_t ldv,
             integer_t& info ) {
         LAPACK_DGEBAK( &job, &side, &n, &ilo, &ihi, scale, &m, v, &ldv,
                 &info );
     }
- inline void gebak( char const job, char const side, integer_t const n,
- integer_t const ilo, integer_t const ihi, float* scale,
- integer_t const m, traits::complex_f* v, integer_t const ldv,
+ inline void gebak( const char job, const char side, const integer_t n,
+ const integer_t ilo, const integer_t ihi, const float* scale,
+ const integer_t m, traits::complex_f* v, const integer_t ldv,
             integer_t& info ) {
         LAPACK_CGEBAK( &job, &side, &n, &ilo, &ihi, scale, &m,
                 traits::complex_ptr(v), &ldv, &info );
     }
- inline void gebak( char const job, char const side, integer_t const n,
- integer_t const ilo, integer_t const ihi, double* scale,
- integer_t const m, traits::complex_d* v, integer_t const ldv,
+ inline void gebak( const char job, const char side, const integer_t n,
+ const integer_t ilo, const integer_t ihi, const double* scale,
+ const integer_t m, traits::complex_d* v, const integer_t ldv,
             integer_t& info ) {
         LAPACK_ZGEBAK( &job, &side, &n, &ilo, &ihi, scale, &m,
                 traits::complex_ptr(v), &ldv, &info );
@@ -77,8 +77,8 @@
 
     // templated specialization
     template< typename VectorSCALE, typename MatrixV >
- static void invoke( char const job, char const side, integer_t const ilo,
- integer_t const ihi, VectorSCALE& scale, MatrixV& v,
+ static void invoke( const char job, const char side, const integer_t ilo,
+ const integer_t ihi, const VectorSCALE& scale, MatrixV& v,
             integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorSCALE >::value_type, typename traits::matrix_traits<
@@ -107,8 +107,8 @@
 
     // templated specialization
     template< typename VectorSCALE, typename MatrixV >
- static void invoke( char const job, char const side, integer_t const ilo,
- integer_t const ihi, VectorSCALE& scale, MatrixV& v,
+ static void invoke( const char job, const char side, const integer_t ilo,
+ const integer_t ihi, const VectorSCALE& scale, MatrixV& v,
             integer_t& info ) {
         BOOST_ASSERT( job == 'N' || job == 'P' || job == 'S' || job == 'B' );
         BOOST_ASSERT( side == 'R' || side == 'L' );
@@ -128,8 +128,8 @@
 
 // template function to call gebak
 template< typename VectorSCALE, typename MatrixV >
-inline integer_t gebak( char const job, char const side,
- integer_t const ilo, integer_t const ihi, VectorSCALE& scale,
+inline integer_t gebak( const char job, const char side,
+ const integer_t ilo, const integer_t ihi, const VectorSCALE& scale,
         MatrixV& v ) {
     typedef typename traits::matrix_traits< MatrixV >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebal.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebal.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebal.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,24 +34,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gebal( char const job, integer_t const n, float* a,
- integer_t const lda, integer_t& ilo, integer_t& ihi, float* scale,
+ inline void gebal( const char job, const integer_t n, float* a,
+ const integer_t lda, integer_t& ilo, integer_t& ihi, float* scale,
             integer_t& info ) {
         LAPACK_SGEBAL( &job, &n, a, &lda, &ilo, &ihi, scale, &info );
     }
- inline void gebal( char const job, integer_t const n, double* a,
- integer_t const lda, integer_t& ilo, integer_t& ihi,
+ inline void gebal( const char job, const integer_t n, double* a,
+ const integer_t lda, integer_t& ilo, integer_t& ihi,
             double* scale, integer_t& info ) {
         LAPACK_DGEBAL( &job, &n, a, &lda, &ilo, &ihi, scale, &info );
     }
- inline void gebal( char const job, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t& ilo,
+ inline void gebal( const char job, const integer_t n,
+ traits::complex_f* a, const integer_t lda, integer_t& ilo,
             integer_t& ihi, float* scale, integer_t& info ) {
         LAPACK_CGEBAL( &job, &n, traits::complex_ptr(a), &lda, &ilo, &ihi,
                 scale, &info );
     }
- inline void gebal( char const job, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t& ilo,
+ inline void gebal( const char job, const integer_t n,
+ traits::complex_d* a, const integer_t lda, integer_t& ilo,
             integer_t& ihi, double* scale, integer_t& info ) {
         LAPACK_ZGEBAL( &job, &n, traits::complex_ptr(a), &lda, &ilo, &ihi,
                 scale, &info );
@@ -71,7 +71,7 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorSCALE >
- static void invoke( char const job, MatrixA& a, integer_t& ilo,
+ static void invoke( const char job, MatrixA& a, integer_t& ilo,
             integer_t& ihi, VectorSCALE& scale, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
@@ -95,7 +95,7 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorSCALE >
- static void invoke( char const job, MatrixA& a, integer_t& ilo,
+ static void invoke( const char job, MatrixA& a, integer_t& ilo,
             integer_t& ihi, VectorSCALE& scale, integer_t& info ) {
         BOOST_ASSERT( job == 'N' || job == 'P' || job == 'S' || job == 'B' );
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
@@ -110,7 +110,7 @@
 
 // template function to call gebal
 template< typename MatrixA, typename VectorSCALE >
-inline integer_t gebal( char const job, MatrixA& a, integer_t& ilo,
+inline integer_t gebal( const char job, MatrixA& a, integer_t& ilo,
         integer_t& ihi, VectorSCALE& scale ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebrd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebrd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gebrd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,31 +37,31 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gebrd( integer_t const m, integer_t const n, float* a,
- integer_t const lda, float* d, float* e, float* tauq, float* taup,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void gebrd( const integer_t m, const integer_t n, float* a,
+ const integer_t lda, float* d, float* e, float* tauq, float* taup,
+ float* work, const integer_t lwork, integer_t& info ) {
         LAPACK_SGEBRD( &m, &n, a, &lda, d, e, tauq, taup, work, &lwork,
                 &info );
     }
- inline void gebrd( integer_t const m, integer_t const n, double* a,
- integer_t const lda, double* d, double* e, double* tauq,
- double* taup, double* work, integer_t const lwork,
+ inline void gebrd( const integer_t m, const integer_t n, double* a,
+ const integer_t lda, double* d, double* e, double* tauq,
+ double* taup, double* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_DGEBRD( &m, &n, a, &lda, d, e, tauq, taup, work, &lwork,
                 &info );
     }
- inline void gebrd( integer_t const m, integer_t const n,
- traits::complex_f* a, integer_t const lda, float* d, float* e,
+ inline void gebrd( const integer_t m, const integer_t n,
+ traits::complex_f* a, const integer_t lda, float* d, float* e,
             traits::complex_f* tauq, traits::complex_f* taup,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CGEBRD( &m, &n, traits::complex_ptr(a), &lda, d, e,
                 traits::complex_ptr(tauq), traits::complex_ptr(taup),
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void gebrd( integer_t const m, integer_t const n,
- traits::complex_d* a, integer_t const lda, double* d, double* e,
+ inline void gebrd( const integer_t m, const integer_t n,
+ traits::complex_d* a, const integer_t lda, double* d, double* e,
             traits::complex_d* tauq, traits::complex_d* taup,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZGEBRD( &m, &n, traits::complex_ptr(a), &lda, d, e,
                 traits::complex_ptr(tauq), traits::complex_ptr(taup),
                 traits::complex_ptr(work), &lwork, &info );
@@ -148,7 +148,7 @@
         invoke( a, d, e, tauq, taup, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n ) {
         return std::max( 1, std::max( m, n ) );
     }
 };
@@ -226,7 +226,7 @@
         invoke( a, d, e, tauq, taup, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n ) {
         return std::max( 1, std::max( m, n ) );
     }
 };

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gecon.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gecon.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gecon.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,29 +36,29 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gecon( char const norm, integer_t const n, float* a,
- integer_t const lda, float const anorm, float& rcond, float* work,
+ inline void gecon( const char norm, const integer_t n, const float* a,
+ const integer_t lda, const float anorm, float& rcond, float* work,
             integer_t* iwork, integer_t& info ) {
         LAPACK_SGECON( &norm, &n, a, &lda, &anorm, &rcond, work, iwork,
                 &info );
     }
- inline void gecon( char const norm, integer_t const n, double* a,
- integer_t const lda, double const anorm, double& rcond,
+ inline void gecon( const char norm, const integer_t n, const double* a,
+ const integer_t lda, const double anorm, double& rcond,
             double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DGECON( &norm, &n, a, &lda, &anorm, &rcond, work, iwork,
                 &info );
     }
- inline void gecon( char const norm, integer_t const n,
- traits::complex_f* a, integer_t const lda, float const anorm,
- float& rcond, traits::complex_f* work, float* rwork,
- integer_t& info ) {
+ inline void gecon( const char norm, const integer_t n,
+ const traits::complex_f* a, const integer_t lda,
+ const float anorm, float& rcond, traits::complex_f* work,
+ float* rwork, integer_t& info ) {
         LAPACK_CGECON( &norm, &n, traits::complex_ptr(a), &lda, &anorm,
                 &rcond, traits::complex_ptr(work), rwork, &info );
     }
- inline void gecon( char const norm, integer_t const n,
- traits::complex_d* a, integer_t const lda, double const anorm,
- double& rcond, traits::complex_d* work, double* rwork,
- integer_t& info ) {
+ inline void gecon( const char norm, const integer_t n,
+ const traits::complex_d* a, const integer_t lda,
+ const double anorm, double& rcond, traits::complex_d* work,
+ double* rwork, integer_t& info ) {
         LAPACK_ZGECON( &norm, &n, traits::complex_ptr(a), &lda, &anorm,
                 &rcond, traits::complex_ptr(work), rwork, &info );
     }
@@ -77,9 +77,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename WORK, typename IWORK >
- static void invoke( char const norm, MatrixA& a, real_type const anorm,
- real_type& rcond, integer_t& info, detail::workspace2< WORK,
- IWORK > work ) {
+ static void invoke( const char norm, const MatrixA& a,
+ const real_type anorm, real_type& rcond, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_ASSERT( norm == '1' || norm == 'O' || norm == 'I' );
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
         BOOST_ASSERT( traits::leading_dimension(a) >= std::max(1,
@@ -97,8 +97,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA >
- static void invoke( char const norm, MatrixA& a, real_type const anorm,
- real_type& rcond, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char norm, const MatrixA& a,
+ const real_type anorm, real_type& rcond, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
@@ -109,16 +110,17 @@
 
     // optimal workspace specialization
     template< typename MatrixA >
- static void invoke( char const norm, MatrixA& a, real_type const anorm,
- real_type& rcond, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char norm, const MatrixA& a,
+ const real_type anorm, real_type& rcond, integer_t& info,
+ optimal_workspace work ) {
         invoke( norm, a, anorm, rcond, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 4*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -132,9 +134,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename WORK, typename RWORK >
- static void invoke( char const norm, MatrixA& a, real_type const anorm,
- real_type& rcond, integer_t& info, detail::workspace2< WORK,
- RWORK > work ) {
+ static void invoke( const char norm, const MatrixA& a,
+ const real_type anorm, real_type& rcond, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_ASSERT( norm == '1' || norm == 'O' || norm == 'I' );
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
         BOOST_ASSERT( traits::leading_dimension(a) >= std::max(1,
@@ -152,8 +154,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA >
- static void invoke( char const norm, MatrixA& a, real_type const anorm,
- real_type& rcond, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char norm, const MatrixA& a,
+ const real_type anorm, real_type& rcond, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork(
@@ -164,16 +167,17 @@
 
     // optimal workspace specialization
     template< typename MatrixA >
- static void invoke( char const norm, MatrixA& a, real_type const anorm,
- real_type& rcond, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char norm, const MatrixA& a,
+ const real_type anorm, real_type& rcond, integer_t& info,
+ optimal_workspace work ) {
         invoke( norm, a, anorm, rcond, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 2*n;
     }
 };
@@ -181,9 +185,9 @@
 
 // template function to call gecon
 template< typename MatrixA, typename Workspace >
-inline integer_t gecon( char const norm, MatrixA& a,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const anorm,
+inline integer_t gecon( const char norm, const MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -194,9 +198,9 @@
 
 // template function to call gecon, default workspace type
 template< typename MatrixA >
-inline integer_t gecon( char const norm, MatrixA& a,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const anorm,
+inline integer_t gecon( const char norm, const MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geequ.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geequ.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geequ.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,25 +34,27 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void geequ( integer_t const m, integer_t const n, float* a,
- integer_t const lda, float* r, float* c, float& rowcnd,
+ inline void geequ( const integer_t m, const integer_t n, const float* a,
+ const integer_t lda, float* r, float* c, float& rowcnd,
             float& colcnd, float& amax, integer_t& info ) {
         LAPACK_SGEEQU( &m, &n, a, &lda, r, c, &rowcnd, &colcnd, &amax, &info );
     }
- inline void geequ( integer_t const m, integer_t const n, double* a,
- integer_t const lda, double* r, double* c, double& rowcnd,
+ inline void geequ( const integer_t m, const integer_t n, const double* a,
+ const integer_t lda, double* r, double* c, double& rowcnd,
             double& colcnd, double& amax, integer_t& info ) {
         LAPACK_DGEEQU( &m, &n, a, &lda, r, c, &rowcnd, &colcnd, &amax, &info );
     }
- inline void geequ( integer_t const m, integer_t const n,
- traits::complex_f* a, integer_t const lda, float* r, float* c,
- float& rowcnd, float& colcnd, float& amax, integer_t& info ) {
+ inline void geequ( const integer_t m, const integer_t n,
+ const traits::complex_f* a, const integer_t lda, float* r,
+ float* c, float& rowcnd, float& colcnd, float& amax,
+ integer_t& info ) {
         LAPACK_CGEEQU( &m, &n, traits::complex_ptr(a), &lda, r, c, &rowcnd,
                 &colcnd, &amax, &info );
     }
- inline void geequ( integer_t const m, integer_t const n,
- traits::complex_d* a, integer_t const lda, double* r, double* c,
- double& rowcnd, double& colcnd, double& amax, integer_t& info ) {
+ inline void geequ( const integer_t m, const integer_t n,
+ const traits::complex_d* a, const integer_t lda, double* r,
+ double* c, double& rowcnd, double& colcnd, double& amax,
+ integer_t& info ) {
         LAPACK_ZGEEQU( &m, &n, traits::complex_ptr(a), &lda, r, c, &rowcnd,
                 &colcnd, &amax, &info );
     }
@@ -71,8 +73,9 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorR, typename VectorC >
- static void invoke( MatrixA& a, VectorR& r, VectorC& c, real_type& rowcnd,
- real_type& colcnd, real_type& amax, integer_t& info ) {
+ static void invoke( const MatrixA& a, VectorR& r, VectorC& c,
+ real_type& rowcnd, real_type& colcnd, real_type& amax,
+ integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorR >::value_type >::value) );
@@ -99,8 +102,9 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorR, typename VectorC >
- static void invoke( MatrixA& a, VectorR& r, VectorC& c, real_type& rowcnd,
- real_type& colcnd, real_type& amax, integer_t& info ) {
+ static void invoke( const MatrixA& a, VectorR& r, VectorC& c,
+ real_type& rowcnd, real_type& colcnd, real_type& amax,
+ integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorR >::value_type, typename traits::vector_traits<
                 VectorC >::value_type >::value) );
@@ -118,7 +122,7 @@
 
 // template function to call geequ
 template< typename MatrixA, typename VectorR, typename VectorC >
-inline integer_t geequ( MatrixA& a, VectorR& r, VectorC& c,
+inline integer_t geequ( const MatrixA& a, VectorR& r, VectorC& c,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rowcnd,
         typename traits::type_traits< typename traits::matrix_traits<

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gehrd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gehrd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gehrd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,28 +37,28 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gehrd( integer_t const n, integer_t const ilo,
- integer_t const ihi, float* a, integer_t const lda, float* tau,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void gehrd( const integer_t n, const integer_t ilo,
+ const integer_t ihi, float* a, const integer_t lda, float* tau,
+ float* work, const integer_t lwork, integer_t& info ) {
         LAPACK_SGEHRD( &n, &ilo, &ihi, a, &lda, tau, work, &lwork, &info );
     }
- inline void gehrd( integer_t const n, integer_t const ilo,
- integer_t const ihi, double* a, integer_t const lda, double* tau,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void gehrd( const integer_t n, const integer_t ilo,
+ const integer_t ihi, double* a, const integer_t lda, double* tau,
+ double* work, const integer_t lwork, integer_t& info ) {
         LAPACK_DGEHRD( &n, &ilo, &ihi, a, &lda, tau, work, &lwork, &info );
     }
- inline void gehrd( integer_t const n, integer_t const ilo,
- integer_t const ihi, traits::complex_f* a, integer_t const lda,
+ inline void gehrd( const integer_t n, const integer_t ilo,
+ const integer_t ihi, traits::complex_f* a, const integer_t lda,
             traits::complex_f* tau, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CGEHRD( &n, &ilo, &ihi, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void gehrd( integer_t const n, integer_t const ilo,
- integer_t const ihi, traits::complex_d* a, integer_t const lda,
+ inline void gehrd( const integer_t n, const integer_t ilo,
+ const integer_t ihi, traits::complex_d* a, const integer_t lda,
             traits::complex_d* tau, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZGEHRD( &n, &ilo, &ihi, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
@@ -78,7 +78,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const ilo, integer_t const ihi, MatrixA& a,
+ static void invoke( const integer_t ilo, const integer_t ihi, MatrixA& a,
             VectorTAU& tau, integer_t& info, detail::workspace1<
             WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -100,7 +100,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const ilo, integer_t const ihi, MatrixA& a,
+ static void invoke( const integer_t ilo, const integer_t ihi, MatrixA& a,
             VectorTAU& tau, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
@@ -109,7 +109,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const ilo, integer_t const ihi, MatrixA& a,
+ static void invoke( const integer_t ilo, const integer_t ihi, MatrixA& a,
             VectorTAU& tau, integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::gehrd( traits::matrix_num_columns(a), ilo, ihi,
@@ -134,7 +134,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const ilo, integer_t const ihi, MatrixA& a,
+ static void invoke( const integer_t ilo, const integer_t ihi, MatrixA& a,
             VectorTAU& tau, integer_t& info, detail::workspace1<
             WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -156,7 +156,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const ilo, integer_t const ihi, MatrixA& a,
+ static void invoke( const integer_t ilo, const integer_t ihi, MatrixA& a,
             VectorTAU& tau, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
@@ -165,7 +165,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const ilo, integer_t const ihi, MatrixA& a,
+ static void invoke( const integer_t ilo, const integer_t ihi, MatrixA& a,
             VectorTAU& tau, integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::gehrd( traits::matrix_num_columns(a), ilo, ihi,
@@ -184,7 +184,7 @@
 
 // template function to call gehrd
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t gehrd( integer_t const ilo, integer_t const ihi,
+inline integer_t gehrd( const integer_t ilo, const integer_t ihi,
         MatrixA& a, VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -194,7 +194,7 @@
 
 // template function to call gehrd, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t gehrd( integer_t const ilo, integer_t const ihi,
+inline integer_t gehrd( const integer_t ilo, const integer_t ihi,
         MatrixA& a, VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gelqf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gelqf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gelqf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,26 +37,26 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gelqf( integer_t const m, integer_t const n, float* a,
- integer_t const lda, float* tau, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void gelqf( const integer_t m, const integer_t n, float* a,
+ const integer_t lda, float* tau, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SGELQF( &m, &n, a, &lda, tau, work, &lwork, &info );
     }
- inline void gelqf( integer_t const m, integer_t const n, double* a,
- integer_t const lda, double* tau, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void gelqf( const integer_t m, const integer_t n, double* a,
+ const integer_t lda, double* tau, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DGELQF( &m, &n, a, &lda, tau, work, &lwork, &info );
     }
- inline void gelqf( integer_t const m, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* tau,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void gelqf( const integer_t m, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* tau,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CGELQF( &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void gelqf( integer_t const m, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* tau,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void gelqf( const integer_t m, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* tau,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZGELQF( &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
@@ -120,7 +120,7 @@
         invoke( a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m ) {
+ static integer_t min_size_work( const integer_t m ) {
         return std::max( 1, m );
     }
 };
@@ -178,7 +178,7 @@
         invoke( a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m ) {
+ static integer_t min_size_work( const integer_t m ) {
         return std::max( 1, m );
     }
 };

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqlf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqlf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqlf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,26 +37,26 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void geqlf( integer_t const m, integer_t const n, float* a,
- integer_t const lda, float* tau, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void geqlf( const integer_t m, const integer_t n, float* a,
+ const integer_t lda, float* tau, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SGEQLF( &m, &n, a, &lda, tau, work, &lwork, &info );
     }
- inline void geqlf( integer_t const m, integer_t const n, double* a,
- integer_t const lda, double* tau, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void geqlf( const integer_t m, const integer_t n, double* a,
+ const integer_t lda, double* tau, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DGEQLF( &m, &n, a, &lda, tau, work, &lwork, &info );
     }
- inline void geqlf( integer_t const m, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* tau,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void geqlf( const integer_t m, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* tau,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CGEQLF( &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void geqlf( integer_t const m, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* tau,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void geqlf( const integer_t m, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* tau,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZGEQLF( &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
@@ -120,7 +120,7 @@
         invoke( a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, n );
     }
 };
@@ -178,7 +178,7 @@
         invoke( a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, n );
     }
 };

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqp3.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqp3.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqp3.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,28 +37,28 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void geqp3( integer_t const m, integer_t const n, float* a,
- integer_t const lda, integer_t* jpvt, float* tau, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void geqp3( const integer_t m, const integer_t n, float* a,
+ const integer_t lda, integer_t* jpvt, float* tau, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SGEQP3( &m, &n, a, &lda, jpvt, tau, work, &lwork, &info );
     }
- inline void geqp3( integer_t const m, integer_t const n, double* a,
- integer_t const lda, integer_t* jpvt, double* tau, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void geqp3( const integer_t m, const integer_t n, double* a,
+ const integer_t lda, integer_t* jpvt, double* tau, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DGEQP3( &m, &n, a, &lda, jpvt, tau, work, &lwork, &info );
     }
- inline void geqp3( integer_t const m, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t* jpvt,
+ inline void geqp3( const integer_t m, const integer_t n,
+ traits::complex_f* a, const integer_t lda, integer_t* jpvt,
             traits::complex_f* tau, traits::complex_f* work,
- integer_t const lwork, float* rwork, integer_t& info ) {
+ const integer_t lwork, float* rwork, integer_t& info ) {
         LAPACK_CGEQP3( &m, &n, traits::complex_ptr(a), &lda, jpvt,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 rwork, &info );
     }
- inline void geqp3( integer_t const m, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t* jpvt,
+ inline void geqp3( const integer_t m, const integer_t n,
+ traits::complex_d* a, const integer_t lda, integer_t* jpvt,
             traits::complex_d* tau, traits::complex_d* work,
- integer_t const lwork, double* rwork, integer_t& info ) {
+ const integer_t lwork, double* rwork, integer_t& info ) {
         LAPACK_ZGEQP3( &m, &n, traits::complex_ptr(a), &lda, jpvt,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 rwork, &info );
@@ -124,7 +124,7 @@
         invoke( a, jpvt, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n+1;
     }
 };
@@ -192,11 +192,11 @@
         invoke( a, jpvt, tau, info, workspace( tmp_work, tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n+1;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 2*n;
     }
 };

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqrf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqrf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/geqrf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,26 +37,26 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void geqrf( integer_t const m, integer_t const n, float* a,
- integer_t const lda, float* tau, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void geqrf( const integer_t m, const integer_t n, float* a,
+ const integer_t lda, float* tau, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SGEQRF( &m, &n, a, &lda, tau, work, &lwork, &info );
     }
- inline void geqrf( integer_t const m, integer_t const n, double* a,
- integer_t const lda, double* tau, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void geqrf( const integer_t m, const integer_t n, double* a,
+ const integer_t lda, double* tau, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DGEQRF( &m, &n, a, &lda, tau, work, &lwork, &info );
     }
- inline void geqrf( integer_t const m, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* tau,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void geqrf( const integer_t m, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* tau,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CGEQRF( &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void geqrf( integer_t const m, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* tau,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void geqrf( const integer_t m, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* tau,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZGEQRF( &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gerfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gerfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gerfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,39 +36,45 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gerfs( char const trans, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* af,
- integer_t const ldaf, integer_t* ipiv, float* b,
- integer_t const ldb, float* x, integer_t const ldx, float* ferr,
- float* berr, float* work, integer_t* iwork, integer_t& info ) {
+ inline void gerfs( const char trans, const integer_t n,
+ const integer_t nrhs, const float* a, const integer_t lda,
+ const float* af, const integer_t ldaf, const integer_t* ipiv,
+ const float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float* ferr, float* berr, float* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_SGERFS( &trans, &n, &nrhs, a, &lda, af, &ldaf, ipiv, b, &ldb,
                 x, &ldx, ferr, berr, work, iwork, &info );
     }
- inline void gerfs( char const trans, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* af,
- integer_t const ldaf, integer_t* ipiv, double* b,
- integer_t const ldb, double* x, integer_t const ldx, double* ferr,
- double* berr, double* work, integer_t* iwork, integer_t& info ) {
+ inline void gerfs( const char trans, const integer_t n,
+ const integer_t nrhs, const double* a, const integer_t lda,
+ const double* af, const integer_t ldaf, const integer_t* ipiv,
+ const double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double* ferr, double* berr, double* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_DGERFS( &trans, &n, &nrhs, a, &lda, af, &ldaf, ipiv, b, &ldb,
                 x, &ldx, ferr, berr, work, iwork, &info );
     }
- inline void gerfs( char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* af, integer_t const ldaf, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* x,
- integer_t const ldx, float* ferr, float* berr,
- traits::complex_f* work, float* rwork, integer_t& info ) {
+ inline void gerfs( const char trans, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* a,
+ const integer_t lda, const traits::complex_f* af,
+ const integer_t ldaf, const integer_t* ipiv,
+ const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float* ferr,
+ float* berr, traits::complex_f* work, float* rwork,
+ integer_t& info ) {
         LAPACK_CGERFS( &trans, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(af), &ldaf, ipiv, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void gerfs( char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* af, integer_t const ldaf, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, double* ferr, double* berr,
- traits::complex_d* work, double* rwork, integer_t& info ) {
+ inline void gerfs( const char trans, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ const integer_t lda, const traits::complex_d* af,
+ const integer_t ldaf, const integer_t* ipiv,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double* ferr,
+ double* berr, traits::complex_d* work, double* rwork,
+ integer_t& info ) {
         LAPACK_ZGERFS( &trans, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(af), &ldaf, ipiv, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, ferr, berr,
@@ -91,10 +97,10 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename IWORK >
- static void invoke( char const trans, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
- IWORK > work ) {
+ static void invoke( const char trans, const MatrixA& a,
+ const MatrixAF& af, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixAF >::value_type >::value) );
@@ -144,9 +150,10 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const trans, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char trans, const MatrixA& a,
+ const MatrixAF& af, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
@@ -159,18 +166,19 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const trans, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char trans, const MatrixA& a,
+ const MatrixAF& af, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( trans, a, af, ipiv, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -186,10 +194,10 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( char const trans, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
- RWORK > work ) {
+ static void invoke( const char trans, const MatrixA& a,
+ const MatrixAF& af, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -236,9 +244,10 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const trans, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char trans, const MatrixA& a,
+ const MatrixAF& af, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork(
@@ -251,18 +260,19 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const trans, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char trans, const MatrixA& a,
+ const MatrixAF& af, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( trans, a, af, ipiv, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -272,9 +282,9 @@
 template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t gerfs( char const trans, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, Workspace work ) {
+inline integer_t gerfs( const char trans, const MatrixA& a,
+ const MatrixAF& af, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     gerfs_impl< value_type >::invoke( trans, a, af, ipiv, b, x, ferr,
@@ -286,9 +296,9 @@
 template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t gerfs( char const trans, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr ) {
+inline integer_t gerfs( const char trans, const MatrixA& a,
+ const MatrixAF& af, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     gerfs_impl< value_type >::invoke( trans, a, af, ipiv, b, x, ferr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gerqf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gerqf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gerqf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,26 +37,26 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gerqf( integer_t const m, integer_t const n, float* a,
- integer_t const lda, float* tau, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void gerqf( const integer_t m, const integer_t n, float* a,
+ const integer_t lda, float* tau, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SGERQF( &m, &n, a, &lda, tau, work, &lwork, &info );
     }
- inline void gerqf( integer_t const m, integer_t const n, double* a,
- integer_t const lda, double* tau, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void gerqf( const integer_t m, const integer_t n, double* a,
+ const integer_t lda, double* tau, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DGERQF( &m, &n, a, &lda, tau, work, &lwork, &info );
     }
- inline void gerqf( integer_t const m, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* tau,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void gerqf( const integer_t m, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* tau,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CGERQF( &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void gerqf( integer_t const m, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* tau,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void gerqf( const integer_t m, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* tau,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZGERQF( &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getrf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getrf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getrf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,21 +31,21 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void getrf( integer_t const m, integer_t const n, float* a,
- integer_t const lda, integer_t* ipiv, integer_t& info ) {
+ inline void getrf( const integer_t m, const integer_t n, float* a,
+ const integer_t lda, integer_t* ipiv, integer_t& info ) {
         LAPACK_SGETRF( &m, &n, a, &lda, ipiv, &info );
     }
- inline void getrf( integer_t const m, integer_t const n, double* a,
- integer_t const lda, integer_t* ipiv, integer_t& info ) {
+ inline void getrf( const integer_t m, const integer_t n, double* a,
+ const integer_t lda, integer_t* ipiv, integer_t& info ) {
         LAPACK_DGETRF( &m, &n, a, &lda, ipiv, &info );
     }
- inline void getrf( integer_t const m, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t* ipiv,
+ inline void getrf( const integer_t m, const integer_t n,
+ traits::complex_f* a, const integer_t lda, integer_t* ipiv,
             integer_t& info ) {
         LAPACK_CGETRF( &m, &n, traits::complex_ptr(a), &lda, ipiv, &info );
     }
- inline void getrf( integer_t const m, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t* ipiv,
+ inline void getrf( const integer_t m, const integer_t n,
+ traits::complex_d* a, const integer_t lda, integer_t* ipiv,
             integer_t& info ) {
         LAPACK_ZGETRF( &m, &n, traits::complex_ptr(a), &lda, ipiv, &info );
     }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getri.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getri.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getri.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,25 +37,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void getri( integer_t const n, float* a, integer_t const lda,
- integer_t* ipiv, float* work, integer_t const lwork,
+ inline void getri( const integer_t n, float* a, const integer_t lda,
+ const integer_t* ipiv, float* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_SGETRI( &n, a, &lda, ipiv, work, &lwork, &info );
     }
- inline void getri( integer_t const n, double* a, integer_t const lda,
- integer_t* ipiv, double* work, integer_t const lwork,
+ inline void getri( const integer_t n, double* a, const integer_t lda,
+ const integer_t* ipiv, double* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_DGETRI( &n, a, &lda, ipiv, work, &lwork, &info );
     }
- inline void getri( integer_t const n, traits::complex_f* a,
- integer_t const lda, integer_t* ipiv, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void getri( const integer_t n, traits::complex_f* a,
+ const integer_t lda, const integer_t* ipiv,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CGETRI( &n, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void getri( integer_t const n, traits::complex_d* a,
- integer_t const lda, integer_t* ipiv, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void getri( const integer_t n, traits::complex_d* a,
+ const integer_t lda, const integer_t* ipiv,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZGETRI( &n, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(work), &lwork, &info );
     }
@@ -74,7 +74,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename WORK >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, integer_t& info,
+ static void invoke( MatrixA& a, const VectorIPIV& ipiv, integer_t& info,
             detail::workspace1< WORK > work ) {
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
         BOOST_ASSERT( traits::leading_dimension(a) >= std::max(1,
@@ -92,7 +92,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, integer_t& info,
+ static void invoke( MatrixA& a, const VectorIPIV& ipiv, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
@@ -101,7 +101,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, integer_t& info,
+ static void invoke( MatrixA& a, const VectorIPIV& ipiv, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
         detail::getri( traits::matrix_num_columns(a),
@@ -112,7 +112,7 @@
         invoke( a, ipiv, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, n );
     }
 };
@@ -126,7 +126,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename WORK >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, integer_t& info,
+ static void invoke( MatrixA& a, const VectorIPIV& ipiv, integer_t& info,
             detail::workspace1< WORK > work ) {
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
         BOOST_ASSERT( traits::leading_dimension(a) >= std::max(1,
@@ -144,7 +144,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, integer_t& info,
+ static void invoke( MatrixA& a, const VectorIPIV& ipiv, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
@@ -153,7 +153,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, integer_t& info,
+ static void invoke( MatrixA& a, const VectorIPIV& ipiv, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
         detail::getri( traits::matrix_num_columns(a),
@@ -164,7 +164,7 @@
         invoke( a, ipiv, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, n );
     }
 };
@@ -172,7 +172,8 @@
 
 // template function to call getri
 template< typename MatrixA, typename VectorIPIV, typename Workspace >
-inline integer_t getri( MatrixA& a, VectorIPIV& ipiv, Workspace work ) {
+inline integer_t getri( MatrixA& a, const VectorIPIV& ipiv,
+ Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     getri_impl< value_type >::invoke( a, ipiv, info, work );
@@ -181,7 +182,7 @@
 
 // template function to call getri, default workspace type
 template< typename MatrixA, typename VectorIPIV >
-inline integer_t getri( MatrixA& a, VectorIPIV& ipiv ) {
+inline integer_t getri( MatrixA& a, const VectorIPIV& ipiv ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     getri_impl< value_type >::invoke( a, ipiv, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/getrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,28 +31,29 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void getrs( char const trans, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda,
- integer_t* ipiv, float* b, integer_t const ldb, integer_t& info ) {
+ inline void getrs( const char trans, const integer_t n,
+ const integer_t nrhs, const float* a, const integer_t lda,
+ const integer_t* ipiv, float* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_SGETRS( &trans, &n, &nrhs, a, &lda, ipiv, b, &ldb, &info );
     }
- inline void getrs( char const trans, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda,
- integer_t* ipiv, double* b, integer_t const ldb,
+ inline void getrs( const char trans, const integer_t n,
+ const integer_t nrhs, const double* a, const integer_t lda,
+ const integer_t* ipiv, double* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_DGETRS( &trans, &n, &nrhs, a, &lda, ipiv, b, &ldb, &info );
     }
- inline void getrs( char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- integer_t* ipiv, traits::complex_f* b, integer_t const ldb,
- integer_t& info ) {
+ inline void getrs( const char trans, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* a,
+ const integer_t lda, const integer_t* ipiv, traits::complex_f* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_CGETRS( &trans, &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void getrs( char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- integer_t* ipiv, traits::complex_d* b, integer_t const ldb,
- integer_t& info ) {
+ inline void getrs( const char trans, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ const integer_t lda, const integer_t* ipiv, traits::complex_d* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_ZGETRS( &trans, &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -67,8 +68,8 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorIPIV, typename MatrixB >
- static void invoke( char const trans, MatrixA& a, VectorIPIV& ipiv,
- MatrixB& b, integer_t& info ) {
+ static void invoke( const char trans, const MatrixA& a,
+ const VectorIPIV& ipiv, MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -92,8 +93,8 @@
 
 // template function to call getrs
 template< typename MatrixA, typename VectorIPIV, typename MatrixB >
-inline integer_t getrs( char const trans, MatrixA& a, VectorIPIV& ipiv,
- MatrixB& b ) {
+inline integer_t getrs( const char trans, const MatrixA& a,
+ const VectorIPIV& ipiv, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     getrs_impl< value_type >::invoke( trans, a, ipiv, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggbak.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggbak.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggbak.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,31 +34,31 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ggbak( char const job, char const side, integer_t const n,
- integer_t const ilo, integer_t const ihi, float* lscale,
- float* rscale, integer_t const m, float* v, integer_t const ldv,
- integer_t& info ) {
+ inline void ggbak( const char job, const char side, const integer_t n,
+ const integer_t ilo, const integer_t ihi, const float* lscale,
+ const float* rscale, const integer_t m, float* v,
+ const integer_t ldv, integer_t& info ) {
         LAPACK_SGGBAK( &job, &side, &n, &ilo, &ihi, lscale, rscale, &m, v,
                 &ldv, &info );
     }
- inline void ggbak( char const job, char const side, integer_t const n,
- integer_t const ilo, integer_t const ihi, double* lscale,
- double* rscale, integer_t const m, double* v, integer_t const ldv,
- integer_t& info ) {
+ inline void ggbak( const char job, const char side, const integer_t n,
+ const integer_t ilo, const integer_t ihi, const double* lscale,
+ const double* rscale, const integer_t m, double* v,
+ const integer_t ldv, integer_t& info ) {
         LAPACK_DGGBAK( &job, &side, &n, &ilo, &ihi, lscale, rscale, &m, v,
                 &ldv, &info );
     }
- inline void ggbak( char const job, char const side, integer_t const n,
- integer_t const ilo, integer_t const ihi, float* lscale,
- float* rscale, integer_t const m, traits::complex_f* v,
- integer_t const ldv, integer_t& info ) {
+ inline void ggbak( const char job, const char side, const integer_t n,
+ const integer_t ilo, const integer_t ihi, const float* lscale,
+ const float* rscale, const integer_t m, traits::complex_f* v,
+ const integer_t ldv, integer_t& info ) {
         LAPACK_CGGBAK( &job, &side, &n, &ilo, &ihi, lscale, rscale, &m,
                 traits::complex_ptr(v), &ldv, &info );
     }
- inline void ggbak( char const job, char const side, integer_t const n,
- integer_t const ilo, integer_t const ihi, double* lscale,
- double* rscale, integer_t const m, traits::complex_d* v,
- integer_t const ldv, integer_t& info ) {
+ inline void ggbak( const char job, const char side, const integer_t n,
+ const integer_t ilo, const integer_t ihi, const double* lscale,
+ const double* rscale, const integer_t m, traits::complex_d* v,
+ const integer_t ldv, integer_t& info ) {
         LAPACK_ZGGBAK( &job, &side, &n, &ilo, &ihi, lscale, rscale, &m,
                 traits::complex_ptr(v), &ldv, &info );
     }
@@ -77,9 +77,9 @@
 
     // templated specialization
     template< typename VectorLSCALE, typename VectorRSCALE, typename MatrixV >
- static void invoke( char const job, char const side, integer_t const ilo,
- integer_t const ihi, VectorLSCALE& lscale, VectorRSCALE& rscale,
- MatrixV& v, integer_t& info ) {
+ static void invoke( const char job, const char side, const integer_t ilo,
+ const integer_t ihi, const VectorLSCALE& lscale,
+ const VectorRSCALE& rscale, MatrixV& v, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorLSCALE >::value_type, typename traits::vector_traits<
                 VectorRSCALE >::value_type >::value) );
@@ -113,9 +113,9 @@
 
     // templated specialization
     template< typename VectorLSCALE, typename VectorRSCALE, typename MatrixV >
- static void invoke( char const job, char const side, integer_t const ilo,
- integer_t const ihi, VectorLSCALE& lscale, VectorRSCALE& rscale,
- MatrixV& v, integer_t& info ) {
+ static void invoke( const char job, const char side, const integer_t ilo,
+ const integer_t ihi, const VectorLSCALE& lscale,
+ const VectorRSCALE& rscale, MatrixV& v, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorLSCALE >::value_type, typename traits::vector_traits<
                 VectorRSCALE >::value_type >::value) );
@@ -140,9 +140,9 @@
 
 // template function to call ggbak
 template< typename VectorLSCALE, typename VectorRSCALE, typename MatrixV >
-inline integer_t ggbak( char const job, char const side,
- integer_t const ilo, integer_t const ihi, VectorLSCALE& lscale,
- VectorRSCALE& rscale, MatrixV& v ) {
+inline integer_t ggbak( const char job, const char side,
+ const integer_t ilo, const integer_t ihi, const VectorLSCALE& lscale,
+ const VectorRSCALE& rscale, MatrixV& v ) {
     typedef typename traits::matrix_traits< MatrixV >::value_type value_type;
     integer_t info(0);
     ggbak_impl< value_type >::invoke( job, side, ilo, ihi, lscale,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggbal.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggbal.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggbal.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,31 +36,31 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ggbal( char const job, integer_t const n, float* a,
- integer_t const lda, float* b, integer_t const ldb,
+ inline void ggbal( const char job, const integer_t n, float* a,
+ const integer_t lda, float* b, const integer_t ldb,
             integer_t& ilo, integer_t& ihi, float* lscale, float* rscale,
             float* work, integer_t& info ) {
         LAPACK_SGGBAL( &job, &n, a, &lda, b, &ldb, &ilo, &ihi, lscale, rscale,
                 work, &info );
     }
- inline void ggbal( char const job, integer_t const n, double* a,
- integer_t const lda, double* b, integer_t const ldb,
+ inline void ggbal( const char job, const integer_t n, double* a,
+ const integer_t lda, double* b, const integer_t ldb,
             integer_t& ilo, integer_t& ihi, double* lscale, double* rscale,
             double* work, integer_t& info ) {
         LAPACK_DGGBAL( &job, &n, a, &lda, b, &ldb, &ilo, &ihi, lscale, rscale,
                 work, &info );
     }
- inline void ggbal( char const job, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, integer_t& ilo, integer_t& ihi,
+ inline void ggbal( const char job, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* b,
+ const integer_t ldb, integer_t& ilo, integer_t& ihi,
             float* lscale, float* rscale, float* work, integer_t& info ) {
         LAPACK_CGGBAL( &job, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, &ilo, &ihi, lscale, rscale,
                 work, &info );
     }
- inline void ggbal( char const job, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, integer_t& ilo, integer_t& ihi,
+ inline void ggbal( const char job, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* b,
+ const integer_t ldb, integer_t& ilo, integer_t& ihi,
             double* lscale, double* rscale, double* work, integer_t& info ) {
         LAPACK_ZGGBAL( &job, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, &ilo, &ihi, lscale, rscale,
@@ -82,7 +82,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorLSCALE,
             typename VectorRSCALE, typename WORK >
- static void invoke( char const job, integer_t const n, MatrixA& a,
+ static void invoke( const char job, const integer_t n, MatrixA& a,
             MatrixB& b, integer_t& ilo, integer_t& ihi, VectorLSCALE& lscale,
             VectorRSCALE& rscale, integer_t& info, detail::workspace1<
             WORK > work ) {
@@ -112,7 +112,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorLSCALE,
             typename VectorRSCALE >
- static void invoke( char const job, integer_t const n, MatrixA& a,
+ static void invoke( const char job, const integer_t n, MatrixA& a,
             MatrixB& b, integer_t& ilo, integer_t& ihi, VectorLSCALE& lscale,
             VectorRSCALE& rscale, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
@@ -124,7 +124,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorLSCALE,
             typename VectorRSCALE >
- static void invoke( char const job, integer_t const n, MatrixA& a,
+ static void invoke( const char job, const integer_t n, MatrixA& a,
             MatrixB& b, integer_t& ilo, integer_t& ihi, VectorLSCALE& lscale,
             VectorRSCALE& rscale, integer_t& info, optimal_workspace work ) {
         invoke( job, n, a, b, ilo, ihi, lscale, rscale, info,
@@ -146,7 +146,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorLSCALE,
             typename VectorRSCALE, typename WORK >
- static void invoke( char const job, integer_t const n, MatrixA& a,
+ static void invoke( const char job, const integer_t n, MatrixA& a,
             MatrixB& b, integer_t& ilo, integer_t& ihi, VectorLSCALE& lscale,
             VectorRSCALE& rscale, integer_t& info, detail::workspace1<
             WORK > work ) {
@@ -173,7 +173,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorLSCALE,
             typename VectorRSCALE >
- static void invoke( char const job, integer_t const n, MatrixA& a,
+ static void invoke( const char job, const integer_t n, MatrixA& a,
             MatrixB& b, integer_t& ilo, integer_t& ihi, VectorLSCALE& lscale,
             VectorRSCALE& rscale, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
@@ -185,7 +185,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorLSCALE,
             typename VectorRSCALE >
- static void invoke( char const job, integer_t const n, MatrixA& a,
+ static void invoke( const char job, const integer_t n, MatrixA& a,
             MatrixB& b, integer_t& ilo, integer_t& ihi, VectorLSCALE& lscale,
             VectorRSCALE& rscale, integer_t& info, optimal_workspace work ) {
         invoke( job, n, a, b, ilo, ihi, lscale, rscale, info,
@@ -201,7 +201,7 @@
 // template function to call ggbal
 template< typename MatrixA, typename MatrixB, typename VectorLSCALE,
         typename VectorRSCALE, typename Workspace >
-inline integer_t ggbal( char const job, integer_t const n, MatrixA& a,
+inline integer_t ggbal( const char job, const integer_t n, MatrixA& a,
         MatrixB& b, integer_t& ilo, integer_t& ihi, VectorLSCALE& lscale,
         VectorRSCALE& rscale, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -214,7 +214,7 @@
 // template function to call ggbal, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorLSCALE,
         typename VectorRSCALE >
-inline integer_t ggbal( char const job, integer_t const n, MatrixA& a,
+inline integer_t ggbal( const char job, const integer_t n, MatrixA& a,
         MatrixB& b, integer_t& ilo, integer_t& ihi, VectorLSCALE& lscale,
         VectorRSCALE& rscale ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gghrd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gghrd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gghrd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,36 +31,36 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gghrd( char const compq, char const compz, integer_t const n,
- integer_t const ilo, integer_t const ihi, float* a,
- integer_t const lda, float* b, integer_t const ldb, float* q,
- integer_t const ldq, float* z, integer_t const ldz,
+ inline void gghrd( const char compq, const char compz, const integer_t n,
+ const integer_t ilo, const integer_t ihi, float* a,
+ const integer_t lda, float* b, const integer_t ldb, float* q,
+ const integer_t ldq, float* z, const integer_t ldz,
             integer_t& info ) {
         LAPACK_SGGHRD( &compq, &compz, &n, &ilo, &ihi, a, &lda, b, &ldb, q,
                 &ldq, z, &ldz, &info );
     }
- inline void gghrd( char const compq, char const compz, integer_t const n,
- integer_t const ilo, integer_t const ihi, double* a,
- integer_t const lda, double* b, integer_t const ldb, double* q,
- integer_t const ldq, double* z, integer_t const ldz,
+ inline void gghrd( const char compq, const char compz, const integer_t n,
+ const integer_t ilo, const integer_t ihi, double* a,
+ const integer_t lda, double* b, const integer_t ldb, double* q,
+ const integer_t ldq, double* z, const integer_t ldz,
             integer_t& info ) {
         LAPACK_DGGHRD( &compq, &compz, &n, &ilo, &ihi, a, &lda, b, &ldb, q,
                 &ldq, z, &ldz, &info );
     }
- inline void gghrd( char const compq, char const compz, integer_t const n,
- integer_t const ilo, integer_t const ihi, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb,
- traits::complex_f* q, integer_t const ldq, traits::complex_f* z,
- integer_t const ldz, integer_t& info ) {
+ inline void gghrd( const char compq, const char compz, const integer_t n,
+ const integer_t ilo, const integer_t ihi, traits::complex_f* a,
+ const integer_t lda, traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* q, const integer_t ldq, traits::complex_f* z,
+ const integer_t ldz, integer_t& info ) {
         LAPACK_CGGHRD( &compq, &compz, &n, &ilo, &ihi, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(b), &ldb, traits::complex_ptr(q),
                 &ldq, traits::complex_ptr(z), &ldz, &info );
     }
- inline void gghrd( char const compq, char const compz, integer_t const n,
- integer_t const ilo, integer_t const ihi, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb,
- traits::complex_d* q, integer_t const ldq, traits::complex_d* z,
- integer_t const ldz, integer_t& info ) {
+ inline void gghrd( const char compq, const char compz, const integer_t n,
+ const integer_t ilo, const integer_t ihi, traits::complex_d* a,
+ const integer_t lda, traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* q, const integer_t ldq, traits::complex_d* z,
+ const integer_t ldz, integer_t& info ) {
         LAPACK_ZGGHRD( &compq, &compz, &n, &ilo, &ihi, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(b), &ldb, traits::complex_ptr(q),
                 &ldq, traits::complex_ptr(z), &ldz, &info );
@@ -77,8 +77,8 @@
     // templated specialization
     template< typename MatrixA, typename MatrixB, typename MatrixQ,
             typename MatrixZ >
- static void invoke( char const compq, char const compz, integer_t const n,
- integer_t const ilo, MatrixA& a, MatrixB& b, MatrixQ& q,
+ static void invoke( const char compq, const char compz, const integer_t n,
+ const integer_t ilo, MatrixA& a, MatrixB& b, MatrixQ& q,
             MatrixZ& z, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -107,8 +107,8 @@
 // template function to call gghrd
 template< typename MatrixA, typename MatrixB, typename MatrixQ,
         typename MatrixZ >
-inline integer_t gghrd( char const compq, char const compz,
- integer_t const n, integer_t const ilo, MatrixA& a, MatrixB& b,
+inline integer_t gghrd( const char compq, const char compz,
+ const integer_t n, const integer_t ilo, MatrixA& a, MatrixB& b,
         MatrixQ& q, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggqrf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggqrf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggqrf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,35 +37,35 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ggqrf( integer_t const n, integer_t const m,
- integer_t const p, float* a, integer_t const lda, float* taua,
- float* b, integer_t const ldb, float* taub, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ggqrf( const integer_t n, const integer_t m,
+ const integer_t p, float* a, const integer_t lda, float* taua,
+ float* b, const integer_t ldb, float* taub, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SGGQRF( &n, &m, &p, a, &lda, taua, b, &ldb, taub, work, &lwork,
                 &info );
     }
- inline void ggqrf( integer_t const n, integer_t const m,
- integer_t const p, double* a, integer_t const lda, double* taua,
- double* b, integer_t const ldb, double* taub, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ggqrf( const integer_t n, const integer_t m,
+ const integer_t p, double* a, const integer_t lda, double* taua,
+ double* b, const integer_t ldb, double* taub, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DGGQRF( &n, &m, &p, a, &lda, taua, b, &ldb, taub, work, &lwork,
                 &info );
     }
- inline void ggqrf( integer_t const n, integer_t const m,
- integer_t const p, traits::complex_f* a, integer_t const lda,
+ inline void ggqrf( const integer_t n, const integer_t m,
+ const integer_t p, traits::complex_f* a, const integer_t lda,
             traits::complex_f* taua, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* taub,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ const integer_t ldb, traits::complex_f* taub,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CGGQRF( &n, &m, &p, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(taua), traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(taub), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void ggqrf( integer_t const n, integer_t const m,
- integer_t const p, traits::complex_d* a, integer_t const lda,
+ inline void ggqrf( const integer_t n, const integer_t m,
+ const integer_t p, traits::complex_d* a, const integer_t lda,
             traits::complex_d* taua, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* taub,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ const integer_t ldb, traits::complex_d* taub,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZGGQRF( &n, &m, &p, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(taua), traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(taub), traits::complex_ptr(work), &lwork,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggrqf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggrqf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggrqf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,35 +37,35 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ggrqf( integer_t const m, integer_t const p,
- integer_t const n, float* a, integer_t const lda, float* taua,
- float* b, integer_t const ldb, float* taub, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ggrqf( const integer_t m, const integer_t p,
+ const integer_t n, float* a, const integer_t lda, float* taua,
+ float* b, const integer_t ldb, float* taub, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SGGRQF( &m, &p, &n, a, &lda, taua, b, &ldb, taub, work, &lwork,
                 &info );
     }
- inline void ggrqf( integer_t const m, integer_t const p,
- integer_t const n, double* a, integer_t const lda, double* taua,
- double* b, integer_t const ldb, double* taub, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ggrqf( const integer_t m, const integer_t p,
+ const integer_t n, double* a, const integer_t lda, double* taua,
+ double* b, const integer_t ldb, double* taub, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DGGRQF( &m, &p, &n, a, &lda, taua, b, &ldb, taub, work, &lwork,
                 &info );
     }
- inline void ggrqf( integer_t const m, integer_t const p,
- integer_t const n, traits::complex_f* a, integer_t const lda,
+ inline void ggrqf( const integer_t m, const integer_t p,
+ const integer_t n, traits::complex_f* a, const integer_t lda,
             traits::complex_f* taua, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* taub,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ const integer_t ldb, traits::complex_f* taub,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CGGRQF( &m, &p, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(taua), traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(taub), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void ggrqf( integer_t const m, integer_t const p,
- integer_t const n, traits::complex_d* a, integer_t const lda,
+ inline void ggrqf( const integer_t m, const integer_t p,
+ const integer_t n, traits::complex_d* a, const integer_t lda,
             traits::complex_d* taua, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* taub,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ const integer_t ldb, traits::complex_d* taub,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZGGRQF( &m, &p, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(taua), traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(taub), traits::complex_ptr(work), &lwork,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggsvp.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggsvp.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ggsvp.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,35 +36,35 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ggsvp( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const p, integer_t const n, float* a,
- integer_t const lda, float* b, integer_t const ldb,
- float const tola, float const tolb, integer_t& k, integer_t& l,
- float* u, integer_t const ldu, float* v, integer_t const ldv,
- float* q, integer_t const ldq, integer_t* iwork, float* tau,
+ inline void ggsvp( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t p, const integer_t n, float* a,
+ const integer_t lda, float* b, const integer_t ldb,
+ const float tola, const float tolb, integer_t& k, integer_t& l,
+ float* u, const integer_t ldu, float* v, const integer_t ldv,
+ float* q, const integer_t ldq, integer_t* iwork, float* tau,
             float* work, integer_t& info ) {
         LAPACK_SGGSVP( &jobu, &jobv, &jobq, &m, &p, &n, a, &lda, b, &ldb,
                 &tola, &tolb, &k, &l, u, &ldu, v, &ldv, q, &ldq, iwork, tau,
                 work, &info );
     }
- inline void ggsvp( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const p, integer_t const n,
- double* a, integer_t const lda, double* b, integer_t const ldb,
- double const tola, double const tolb, integer_t& k, integer_t& l,
- double* u, integer_t const ldu, double* v, integer_t const ldv,
- double* q, integer_t const ldq, integer_t* iwork, double* tau,
+ inline void ggsvp( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t p, const integer_t n,
+ double* a, const integer_t lda, double* b, const integer_t ldb,
+ const double tola, const double tolb, integer_t& k, integer_t& l,
+ double* u, const integer_t ldu, double* v, const integer_t ldv,
+ double* q, const integer_t ldq, integer_t* iwork, double* tau,
             double* work, integer_t& info ) {
         LAPACK_DGGSVP( &jobu, &jobv, &jobq, &m, &p, &n, a, &lda, b, &ldb,
                 &tola, &tolb, &k, &l, u, &ldu, v, &ldv, q, &ldq, iwork, tau,
                 work, &info );
     }
- inline void ggsvp( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const p, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, float const tola, float const tolb,
+ inline void ggsvp( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t p, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* b,
+ const integer_t ldb, const float tola, const float tolb,
             integer_t& k, integer_t& l, traits::complex_f* u,
- integer_t const ldu, traits::complex_f* v, integer_t const ldv,
- traits::complex_f* q, integer_t const ldq, integer_t* iwork,
+ const integer_t ldu, traits::complex_f* v, const integer_t ldv,
+ traits::complex_f* q, const integer_t ldq, integer_t* iwork,
             float* rwork, traits::complex_f* tau, traits::complex_f* work,
             integer_t& info ) {
         LAPACK_CGGSVP( &jobu, &jobv, &jobq, &m, &p, &n,
@@ -74,13 +74,13 @@
                 iwork, rwork, traits::complex_ptr(tau),
                 traits::complex_ptr(work), &info );
     }
- inline void ggsvp( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const p, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, double const tola, double const tolb,
+ inline void ggsvp( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t p, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* b,
+ const integer_t ldb, const double tola, const double tolb,
             integer_t& k, integer_t& l, traits::complex_d* u,
- integer_t const ldu, traits::complex_d* v, integer_t const ldv,
- traits::complex_d* q, integer_t const ldq, integer_t* iwork,
+ const integer_t ldu, traits::complex_d* v, const integer_t ldv,
+ traits::complex_d* q, const integer_t ldq, integer_t* iwork,
             double* rwork, traits::complex_d* tau, traits::complex_d* work,
             integer_t& info ) {
         LAPACK_ZGGSVP( &jobu, &jobv, &jobq, &m, &p, &n,
@@ -107,9 +107,9 @@
     template< typename MatrixA, typename MatrixB, typename MatrixU,
             typename MatrixV, typename MatrixQ, typename IWORK, typename TAU,
             typename WORK >
- static void invoke( char const jobu, char const jobv, char const jobq,
- MatrixA& a, MatrixB& b, real_type const tola,
- real_type const tolb, integer_t& k, integer_t& l, MatrixU& u,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ MatrixA& a, MatrixB& b, const real_type tola,
+ const real_type tolb, integer_t& k, integer_t& l, MatrixU& u,
             MatrixV& v, MatrixQ& q, integer_t& info, detail::workspace3<
             IWORK, TAU, WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -157,9 +157,9 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixU,
             typename MatrixV, typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
- MatrixA& a, MatrixB& b, real_type const tola,
- real_type const tolb, integer_t& k, integer_t& l, MatrixU& u,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ MatrixA& a, MatrixB& b, const real_type tola,
+ const real_type tolb, integer_t& k, integer_t& l, MatrixU& u,
             MatrixV& v, MatrixQ& q, integer_t& info, minimal_workspace work ) {
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
                 traits::matrix_num_columns(b) ) );
@@ -175,24 +175,24 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixU,
             typename MatrixV, typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
- MatrixA& a, MatrixB& b, real_type const tola,
- real_type const tolb, integer_t& k, integer_t& l, MatrixU& u,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ MatrixA& a, MatrixB& b, const real_type tola,
+ const real_type tolb, integer_t& k, integer_t& l, MatrixU& u,
             MatrixV& v, MatrixQ& q, integer_t& info, optimal_workspace work ) {
         invoke( jobu, jobv, jobq, a, b, tola, tolb, k, l, u, v, q, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_tau( integer_t const n ) {
+ static integer_t min_size_tau( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_work( integer_t const n, integer_t const m,
- integer_t const p ) {
+ static integer_t min_size_work( const integer_t n, const integer_t m,
+ const integer_t p ) {
         return std::max(3*n,std::max(m,p));
     }
 };
@@ -208,9 +208,9 @@
     template< typename MatrixA, typename MatrixB, typename MatrixU,
             typename MatrixV, typename MatrixQ, typename IWORK,
             typename RWORK, typename TAU, typename WORK >
- static void invoke( char const jobu, char const jobv, char const jobq,
- MatrixA& a, MatrixB& b, real_type const tola,
- real_type const tolb, integer_t& k, integer_t& l, MatrixU& u,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ MatrixA& a, MatrixB& b, const real_type tola,
+ const real_type tolb, integer_t& k, integer_t& l, MatrixU& u,
             MatrixV& v, MatrixQ& q, integer_t& info, detail::workspace4<
             IWORK, RWORK, TAU, WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -261,9 +261,9 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixU,
             typename MatrixV, typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
- MatrixA& a, MatrixB& b, real_type const tola,
- real_type const tolb, integer_t& k, integer_t& l, MatrixU& u,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ MatrixA& a, MatrixB& b, const real_type tola,
+ const real_type tolb, integer_t& k, integer_t& l, MatrixU& u,
             MatrixV& v, MatrixQ& q, integer_t& info, minimal_workspace work ) {
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
                 traits::matrix_num_columns(b) ) );
@@ -281,28 +281,28 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixU,
             typename MatrixV, typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
- MatrixA& a, MatrixB& b, real_type const tola,
- real_type const tolb, integer_t& k, integer_t& l, MatrixU& u,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ MatrixA& a, MatrixB& b, const real_type tola,
+ const real_type tolb, integer_t& k, integer_t& l, MatrixU& u,
             MatrixV& v, MatrixQ& q, integer_t& info, optimal_workspace work ) {
         invoke( jobu, jobv, jobq, a, b, tola, tolb, k, l, u, v, q, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_tau( integer_t const n ) {
+ static integer_t min_size_tau( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_work( integer_t const n, integer_t const m,
- integer_t const p ) {
+ static integer_t min_size_work( const integer_t n, const integer_t m,
+ const integer_t p ) {
         return std::max(3*n,std::max(m,p));
     }
 };
@@ -311,13 +311,13 @@
 // template function to call ggsvp
 template< typename MatrixA, typename MatrixB, typename MatrixU,
         typename MatrixV, typename MatrixQ, typename Workspace >
-inline integer_t ggsvp( char const jobu, char const jobv,
- char const jobq, MatrixA& a, MatrixB& b, typename traits::type_traits<
- typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const tola,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const tolb, integer_t& k,
- integer_t& l, MatrixU& u, MatrixV& v, MatrixQ& q, Workspace work ) {
+inline integer_t ggsvp( const char jobu, const char jobv,
+ const char jobq, MatrixA& a, MatrixB& b,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type tola,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type tolb, integer_t& k, integer_t& l,
+ MatrixU& u, MatrixV& v, MatrixQ& q, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ggsvp_impl< value_type >::invoke( jobu, jobv, jobq, a, b, tola, tolb,
@@ -328,13 +328,13 @@
 // template function to call ggsvp, default workspace type
 template< typename MatrixA, typename MatrixB, typename MatrixU,
         typename MatrixV, typename MatrixQ >
-inline integer_t ggsvp( char const jobu, char const jobv,
- char const jobq, MatrixA& a, MatrixB& b, typename traits::type_traits<
- typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const tola,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const tolb, integer_t& k,
- integer_t& l, MatrixU& u, MatrixV& v, MatrixQ& q ) {
+inline integer_t ggsvp( const char jobu, const char jobv,
+ const char jobq, MatrixA& a, MatrixB& b,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type tola,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type tolb, integer_t& k, integer_t& l,
+ MatrixU& u, MatrixV& v, MatrixQ& q ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ggsvp_impl< value_type >::invoke( jobu, jobv, jobq, a, b, tola, tolb,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gtrfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gtrfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gtrfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,29 +36,33 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gtrfs( char const trans, integer_t const n,
- integer_t const nrhs, float* dl, float* d, float* du, float* dlf,
- float* df, float* duf, float* du2, integer_t* ipiv, float* b,
- integer_t const ldb, float* x, integer_t const ldx, float* ferr,
- float* berr, float* work, integer_t* iwork, integer_t& info ) {
+ inline void gtrfs( const char trans, const integer_t n,
+ const integer_t nrhs, const float* dl, const float* d,
+ const float* du, const float* dlf, const float* df,
+ const float* duf, const float* du2, const integer_t* ipiv,
+ const float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float* ferr, float* berr, float* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_SGTRFS( &trans, &n, &nrhs, dl, d, du, dlf, df, duf, du2, ipiv,
                 b, &ldb, x, &ldx, ferr, berr, work, iwork, &info );
     }
- inline void gtrfs( char const trans, integer_t const n,
- integer_t const nrhs, double* dl, double* d, double* du,
- double* dlf, double* df, double* duf, double* du2,
- integer_t* ipiv, double* b, integer_t const ldb, double* x,
- integer_t const ldx, double* ferr, double* berr, double* work,
+ inline void gtrfs( const char trans, const integer_t n,
+ const integer_t nrhs, const double* dl, const double* d,
+ const double* du, const double* dlf, const double* df,
+ const double* duf, const double* du2, const integer_t* ipiv,
+ const double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double* ferr, double* berr, double* work,
             integer_t* iwork, integer_t& info ) {
         LAPACK_DGTRFS( &trans, &n, &nrhs, dl, d, du, dlf, df, duf, du2, ipiv,
                 b, &ldb, x, &ldx, ferr, berr, work, iwork, &info );
     }
- inline void gtrfs( char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_f* dl, traits::complex_f* d,
- traits::complex_f* du, traits::complex_f* dlf,
- traits::complex_f* df, traits::complex_f* duf,
- traits::complex_f* du2, integer_t* ipiv, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* x, integer_t const ldx,
+ inline void gtrfs( const char trans, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* dl,
+ const traits::complex_f* d, const traits::complex_f* du,
+ const traits::complex_f* dlf, const traits::complex_f* df,
+ const traits::complex_f* duf, const traits::complex_f* du2,
+ const integer_t* ipiv, const traits::complex_f* b,
+ const integer_t ldb, traits::complex_f* x, const integer_t ldx,
             float* ferr, float* berr, traits::complex_f* work, float* rwork,
             integer_t& info ) {
         LAPACK_CGTRFS( &trans, &n, &nrhs, traits::complex_ptr(dl),
@@ -68,12 +72,13 @@
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(x), &ldx,
                 ferr, berr, traits::complex_ptr(work), rwork, &info );
     }
- inline void gtrfs( char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_d* dl, traits::complex_d* d,
- traits::complex_d* du, traits::complex_d* dlf,
- traits::complex_d* df, traits::complex_d* duf,
- traits::complex_d* du2, integer_t* ipiv, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* x, integer_t const ldx,
+ inline void gtrfs( const char trans, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* dl,
+ const traits::complex_d* d, const traits::complex_d* du,
+ const traits::complex_d* dlf, const traits::complex_d* df,
+ const traits::complex_d* duf, const traits::complex_d* du2,
+ const integer_t* ipiv, const traits::complex_d* b,
+ const integer_t ldb, traits::complex_d* x, const integer_t ldx,
             double* ferr, double* berr, traits::complex_d* work,
             double* rwork, integer_t& info ) {
         LAPACK_ZGTRFS( &trans, &n, &nrhs, traits::complex_ptr(dl),
@@ -102,9 +107,10 @@
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename IWORK >
- static void invoke( char const trans, integer_t const n, VectorDL& dl,
- VectorD& d, VectorDU& du, VectorDLF& dlf, VectorDF& df,
- VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv, MatrixB& b,
+ static void invoke( const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ const VectorDLF& dlf, const VectorDF& df, const VectorDUF& duf,
+ const VectorDU2& du2, const VectorIPIV& ipiv, const MatrixB& b,
             MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -173,9 +179,10 @@
             typename VectorDLF, typename VectorDF, typename VectorDUF,
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const trans, integer_t const n, VectorDL& dl,
- VectorD& d, VectorDU& du, VectorDLF& dlf, VectorDF& df,
- VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv, MatrixB& b,
+ static void invoke( const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ const VectorDLF& dlf, const VectorDF& df, const VectorDUF& duf,
+ const VectorDU2& du2, const VectorIPIV& ipiv, const MatrixB& b,
             MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
@@ -189,20 +196,21 @@
             typename VectorDLF, typename VectorDF, typename VectorDUF,
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const trans, integer_t const n, VectorDL& dl,
- VectorD& d, VectorDU& du, VectorDLF& dlf, VectorDF& df,
- VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv, MatrixB& b,
+ static void invoke( const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ const VectorDLF& dlf, const VectorDF& df, const VectorDUF& duf,
+ const VectorDU2& du2, const VectorIPIV& ipiv, const MatrixB& b,
             MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
         invoke( trans, n, dl, d, du, dlf, df, duf, du2, ipiv, b, x, ferr,
                 berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -220,9 +228,10 @@
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename RWORK >
- static void invoke( char const trans, integer_t const n, VectorDL& dl,
- VectorD& d, VectorDU& du, VectorDLF& dlf, VectorDF& df,
- VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv, MatrixB& b,
+ static void invoke( const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ const VectorDLF& dlf, const VectorDF& df, const VectorDUF& duf,
+ const VectorDU2& du2, const VectorIPIV& ipiv, const MatrixB& b,
             MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -288,9 +297,10 @@
             typename VectorDLF, typename VectorDF, typename VectorDUF,
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const trans, integer_t const n, VectorDL& dl,
- VectorD& d, VectorDU& du, VectorDLF& dlf, VectorDF& df,
- VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv, MatrixB& b,
+ static void invoke( const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ const VectorDLF& dlf, const VectorDF& df, const VectorDUF& duf,
+ const VectorDU2& du2, const VectorIPIV& ipiv, const MatrixB& b,
             MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
@@ -304,20 +314,21 @@
             typename VectorDLF, typename VectorDF, typename VectorDUF,
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const trans, integer_t const n, VectorDL& dl,
- VectorD& d, VectorDU& du, VectorDLF& dlf, VectorDF& df,
- VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv, MatrixB& b,
+ static void invoke( const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ const VectorDLF& dlf, const VectorDF& df, const VectorDUF& duf,
+ const VectorDU2& du2, const VectorIPIV& ipiv, const MatrixB& b,
             MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
         invoke( trans, n, dl, d, du, dlf, df, duf, du2, ipiv, b, x, ferr,
                 berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -329,9 +340,10 @@
         typename VectorDU2, typename VectorIPIV, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR,
         typename Workspace >
-inline integer_t gtrfs( char const trans, integer_t const n,
- VectorDL& dl, VectorD& d, VectorDU& du, VectorDLF& dlf, VectorDF& df,
- VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv, MatrixB& b,
+inline integer_t gtrfs( const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ const VectorDLF& dlf, const VectorDF& df, const VectorDUF& duf,
+ const VectorDU2& du2, const VectorIPIV& ipiv, const MatrixB& b,
         MatrixX& x, VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
     typedef typename traits::vector_traits< VectorDL >::value_type value_type;
     integer_t info(0);
@@ -345,9 +357,10 @@
         typename VectorDLF, typename VectorDF, typename VectorDUF,
         typename VectorDU2, typename VectorIPIV, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR >
-inline integer_t gtrfs( char const trans, integer_t const n,
- VectorDL& dl, VectorD& d, VectorDU& du, VectorDLF& dlf, VectorDF& df,
- VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv, MatrixB& b,
+inline integer_t gtrfs( const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ const VectorDLF& dlf, const VectorDF& df, const VectorDUF& duf,
+ const VectorDU2& du2, const VectorIPIV& ipiv, const MatrixB& b,
         MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::vector_traits< VectorDL >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gttrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gttrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/gttrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,32 +31,35 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gttrs( char const trans, integer_t const n,
- integer_t const nrhs, float* dl, float* d, float* du, float* du2,
- integer_t* ipiv, float* b, integer_t const ldb, integer_t& info ) {
+ inline void gttrs( const char trans, const integer_t n,
+ const integer_t nrhs, const float* dl, const float* d,
+ const float* du, const float* du2, const integer_t* ipiv,
+ float* b, const integer_t ldb, integer_t& info ) {
         LAPACK_SGTTRS( &trans, &n, &nrhs, dl, d, du, du2, ipiv, b, &ldb,
                 &info );
     }
- inline void gttrs( char const trans, integer_t const n,
- integer_t const nrhs, double* dl, double* d, double* du,
- double* du2, integer_t* ipiv, double* b, integer_t const ldb,
- integer_t& info ) {
+ inline void gttrs( const char trans, const integer_t n,
+ const integer_t nrhs, const double* dl, const double* d,
+ const double* du, const double* du2, const integer_t* ipiv,
+ double* b, const integer_t ldb, integer_t& info ) {
         LAPACK_DGTTRS( &trans, &n, &nrhs, dl, d, du, du2, ipiv, b, &ldb,
                 &info );
     }
- inline void gttrs( char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_f* dl, traits::complex_f* d,
- traits::complex_f* du, traits::complex_f* du2, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void gttrs( const char trans, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* dl,
+ const traits::complex_f* d, const traits::complex_f* du,
+ const traits::complex_f* du2, const integer_t* ipiv,
+ traits::complex_f* b, const integer_t ldb, integer_t& info ) {
         LAPACK_CGTTRS( &trans, &n, &nrhs, traits::complex_ptr(dl),
                 traits::complex_ptr(d), traits::complex_ptr(du),
                 traits::complex_ptr(du2), ipiv, traits::complex_ptr(b), &ldb,
                 &info );
     }
- inline void gttrs( char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_d* dl, traits::complex_d* d,
- traits::complex_d* du, traits::complex_d* du2, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void gttrs( const char trans, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* dl,
+ const traits::complex_d* d, const traits::complex_d* du,
+ const traits::complex_d* du2, const integer_t* ipiv,
+ traits::complex_d* b, const integer_t ldb, integer_t& info ) {
         LAPACK_ZGTTRS( &trans, &n, &nrhs, traits::complex_ptr(dl),
                 traits::complex_ptr(d), traits::complex_ptr(du),
                 traits::complex_ptr(du2), ipiv, traits::complex_ptr(b), &ldb,
@@ -74,9 +77,10 @@
     // templated specialization
     template< typename VectorDL, typename VectorD, typename VectorDU,
             typename VectorDU2, typename VectorIPIV, typename MatrixB >
- static void invoke( char const trans, integer_t const n, VectorDL& dl,
- VectorD& d, VectorDU& du, VectorDU2& du2, VectorIPIV& ipiv,
- MatrixB& b, integer_t& info ) {
+ static void invoke( const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ const VectorDU2& du2, const VectorIPIV& ipiv, MatrixB& b,
+ integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorDL >::value_type, typename traits::vector_traits<
                 VectorD >::value_type >::value) );
@@ -109,9 +113,9 @@
 // template function to call gttrs
 template< typename VectorDL, typename VectorD, typename VectorDU,
         typename VectorDU2, typename VectorIPIV, typename MatrixB >
-inline integer_t gttrs( char const trans, integer_t const n,
- VectorDL& dl, VectorD& d, VectorDU& du, VectorDU2& du2,
- VectorIPIV& ipiv, MatrixB& b ) {
+inline integer_t gttrs( const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ const VectorDU2& du2, const VectorIPIV& ipiv, MatrixB& b ) {
     typedef typename traits::vector_traits< VectorDL >::value_type value_type;
     integer_t info(0);
     gttrs_impl< value_type >::invoke( trans, n, dl, d, du, du2, ipiv, b,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hbgst.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hbgst.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hbgst.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,19 +33,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hbgst( char const vect, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, traits::complex_f* ab,
- integer_t const ldab, traits::complex_f* bb, integer_t const ldbb,
- traits::complex_f* x, integer_t const ldx,
+ inline void hbgst( const char vect, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, traits::complex_f* ab,
+ const integer_t ldab, const traits::complex_f* bb,
+ const integer_t ldbb, traits::complex_f* x, const integer_t ldx,
             traits::complex_f* work, float* rwork, integer_t& info ) {
         LAPACK_CHBGST( &vect, &uplo, &n, &ka, &kb, traits::complex_ptr(ab),
                 &ldab, traits::complex_ptr(bb), &ldbb, traits::complex_ptr(x),
                 &ldx, traits::complex_ptr(work), rwork, &info );
     }
- inline void hbgst( char const vect, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, traits::complex_d* ab,
- integer_t const ldab, traits::complex_d* bb, integer_t const ldbb,
- traits::complex_d* x, integer_t const ldx,
+ inline void hbgst( const char vect, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, traits::complex_d* ab,
+ const integer_t ldab, const traits::complex_d* bb,
+ const integer_t ldbb, traits::complex_d* x, const integer_t ldx,
             traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZHBGST( &vect, &uplo, &n, &ka, &kb, traits::complex_ptr(ab),
                 &ldab, traits::complex_ptr(bb), &ldbb, traits::complex_ptr(x),
@@ -63,10 +63,10 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename MatrixX,
             typename WORK, typename RWORK >
- static void invoke( char const vect, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixX& x, integer_t& info, detail::workspace2<
- WORK, RWORK > work ) {
+ static void invoke( const char vect, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ const MatrixBB& bb, MatrixX& x, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
                 MatrixBB >::value_type >::value) );
@@ -95,9 +95,9 @@
 
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename MatrixX >
- static void invoke( char const vect, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixX& x, integer_t& info,
+ static void invoke( const char vect, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ const MatrixBB& bb, MatrixX& x, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -107,18 +107,18 @@
 
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename MatrixX >
- static void invoke( char const vect, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixX& x, integer_t& info,
+ static void invoke( const char vect, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ const MatrixBB& bb, MatrixX& x, integer_t& info,
             optimal_workspace work ) {
         invoke( vect, n, ka, kb, ab, bb, x, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -127,9 +127,9 @@
 // template function to call hbgst
 template< typename MatrixAB, typename MatrixBB, typename MatrixX,
         typename Workspace >
-inline integer_t hbgst( char const vect, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
- MatrixX& x, Workspace work ) {
+inline integer_t hbgst( const char vect, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ const MatrixBB& bb, MatrixX& x, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     hbgst_impl< value_type >::invoke( vect, n, ka, kb, ab, bb, x, info,
@@ -139,9 +139,9 @@
 
 // template function to call hbgst, default workspace type
 template< typename MatrixAB, typename MatrixBB, typename MatrixX >
-inline integer_t hbgst( char const vect, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
- MatrixX& x ) {
+inline integer_t hbgst( const char vect, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ const MatrixBB& bb, MatrixX& x ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     hbgst_impl< value_type >::invoke( vect, n, ka, kb, ab, bb, x, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hbtrd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hbtrd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hbtrd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,17 +33,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hbtrd( char const vect, char const uplo, integer_t const n,
- integer_t const kd, traits::complex_f* ab, integer_t const ldab,
- float* d, float* e, traits::complex_f* q, integer_t const ldq,
+ inline void hbtrd( const char vect, const char uplo, const integer_t n,
+ const integer_t kd, traits::complex_f* ab, const integer_t ldab,
+ float* d, float* e, traits::complex_f* q, const integer_t ldq,
             traits::complex_f* work, integer_t& info ) {
         LAPACK_CHBTRD( &vect, &uplo, &n, &kd, traits::complex_ptr(ab), &ldab,
                 d, e, traits::complex_ptr(q), &ldq, traits::complex_ptr(work),
                 &info );
     }
- inline void hbtrd( char const vect, char const uplo, integer_t const n,
- integer_t const kd, traits::complex_d* ab, integer_t const ldab,
- double* d, double* e, traits::complex_d* q, integer_t const ldq,
+ inline void hbtrd( const char vect, const char uplo, const integer_t n,
+ const integer_t kd, traits::complex_d* ab, const integer_t ldab,
+ double* d, double* e, traits::complex_d* q, const integer_t ldq,
             traits::complex_d* work, integer_t& info ) {
         LAPACK_ZHBTRD( &vect, &uplo, &n, &kd, traits::complex_ptr(ab), &ldab,
                 d, e, traits::complex_ptr(q), &ldq, traits::complex_ptr(work),
@@ -61,8 +61,8 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ, typename WORK >
- static void invoke( char const vect, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorD& d, VectorE& e,
+ static void invoke( const char vect, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorD& d, VectorE& e,
             MatrixQ& q, integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
@@ -89,8 +89,8 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ >
- static void invoke( char const vect, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorD& d, VectorE& e,
+ static void invoke( const char vect, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorD& d, VectorE& e,
             MatrixQ& q, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         invoke( vect, n, kd, ab, d, e, q, info, workspace( tmp_work ) );
@@ -99,13 +99,13 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ >
- static void invoke( char const vect, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorD& d, VectorE& e,
+ static void invoke( const char vect, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorD& d, VectorE& e,
             MatrixQ& q, integer_t& info, optimal_workspace work ) {
         invoke( vect, n, kd, ab, d, e, q, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n;
     }
 };
@@ -114,8 +114,8 @@
 // template function to call hbtrd
 template< typename MatrixAB, typename VectorD, typename VectorE,
         typename MatrixQ, typename Workspace >
-inline integer_t hbtrd( char const vect, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorD& d, VectorE& e, MatrixQ& q,
+inline integer_t hbtrd( const char vect, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorD& d, VectorE& e, MatrixQ& q,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
@@ -127,8 +127,8 @@
 // template function to call hbtrd, default workspace type
 template< typename MatrixAB, typename VectorD, typename VectorE,
         typename MatrixQ >
-inline integer_t hbtrd( char const vect, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorD& d, VectorE& e,
+inline integer_t hbtrd( const char vect, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorD& d, VectorE& e,
         MatrixQ& q ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hecon.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hecon.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hecon.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,17 +33,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hecon( char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t* ipiv,
- float const anorm, float& rcond, traits::complex_f* work,
- integer_t& info ) {
+ inline void hecon( const char uplo, const integer_t n,
+ const traits::complex_f* a, const integer_t lda,
+ const integer_t* ipiv, const float anorm, float& rcond,
+ traits::complex_f* work, integer_t& info ) {
         LAPACK_CHECON( &uplo, &n, traits::complex_ptr(a), &lda, ipiv, &anorm,
                 &rcond, traits::complex_ptr(work), &info );
     }
- inline void hecon( char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t* ipiv,
- double const anorm, double& rcond, traits::complex_d* work,
- integer_t& info ) {
+ inline void hecon( const char uplo, const integer_t n,
+ const traits::complex_d* a, const integer_t lda,
+ const integer_t* ipiv, const double anorm, double& rcond,
+ traits::complex_d* work, integer_t& info ) {
         LAPACK_ZHECON( &uplo, &n, traits::complex_ptr(a), &lda, ipiv, &anorm,
                 &rcond, traits::complex_ptr(work), &info );
     }
@@ -58,9 +58,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename WORK >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- real_type const anorm, real_type& rcond, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_ASSERT( uplo == 'U' || uplo == 'L' );
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
         BOOST_ASSERT( traits::leading_dimension(a) >= std::max(1,
@@ -77,9 +77,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- real_type const anorm, real_type& rcond, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         invoke( uplo, a, ipiv, anorm, rcond, info, workspace( tmp_work ) );
@@ -87,13 +87,13 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- real_type const anorm, real_type& rcond, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
+ integer_t& info, optimal_workspace work ) {
         invoke( uplo, a, ipiv, anorm, rcond, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 };
@@ -101,9 +101,10 @@
 
 // template function to call hecon
 template< typename MatrixA, typename VectorIPIV, typename Workspace >
-inline integer_t hecon( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const anorm,
+inline integer_t hecon( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const typename traits::type_traits<
+ typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -115,9 +116,10 @@
 
 // template function to call hecon, default workspace type
 template< typename MatrixA, typename VectorIPIV >
-inline integer_t hecon( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const anorm,
+inline integer_t hecon( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const typename traits::type_traits<
+ typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hegst.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hegst.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hegst.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,15 +31,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hegst( integer_t const itype, char const uplo,
- integer_t const n, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void hegst( const integer_t itype, const char uplo,
+ const integer_t n, traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_CHEGST( &itype, &uplo, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void hegst( integer_t const itype, char const uplo,
- integer_t const n, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void hegst( const integer_t itype, const char uplo,
+ const integer_t n, traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_ZHEGST( &itype, &uplo, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -54,8 +56,8 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB >
- static void invoke( integer_t const itype, integer_t const n, MatrixA& a,
- MatrixB& b, integer_t& info ) {
+ static void invoke( const integer_t itype, const integer_t n, MatrixA& a,
+ const MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -74,8 +76,8 @@
 
 // template function to call hegst
 template< typename MatrixA, typename MatrixB >
-inline integer_t hegst( integer_t const itype, integer_t const n,
- MatrixA& a, MatrixB& b ) {
+inline integer_t hegst( const integer_t itype, const integer_t n,
+ MatrixA& a, const MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     hegst_impl< value_type >::invoke( itype, n, a, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/herfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/herfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/herfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,23 +33,27 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void herfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* af, integer_t const ldaf, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* x,
- integer_t const ldx, float* ferr, float* berr,
- traits::complex_f* work, float* rwork, integer_t& info ) {
+ inline void herfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* a,
+ const integer_t lda, const traits::complex_f* af,
+ const integer_t ldaf, const integer_t* ipiv,
+ const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float* ferr,
+ float* berr, traits::complex_f* work, float* rwork,
+ integer_t& info ) {
         LAPACK_CHERFS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(af), &ldaf, ipiv, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void herfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* af, integer_t const ldaf, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, double* ferr, double* berr,
- traits::complex_d* work, double* rwork, integer_t& info ) {
+ inline void herfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ const integer_t lda, const traits::complex_d* af,
+ const integer_t ldaf, const integer_t* ipiv,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double* ferr,
+ double* berr, traits::complex_d* work, double* rwork,
+ integer_t& info ) {
         LAPACK_ZHERFS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(af), &ldaf, ipiv, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, ferr, berr,
@@ -68,9 +72,10 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, detail::workspace2< WORK, RWORK > work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -119,9 +124,10 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork(
@@ -134,17 +140,18 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( a, af, ipiv, b, x, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -154,9 +161,9 @@
 template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t herfs( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- Workspace work ) {
+inline integer_t herfs( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     herfs_impl< value_type >::invoke( a, af, ipiv, b, x, ferr, berr,
@@ -168,8 +175,9 @@
 template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t herfs( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
+inline integer_t herfs( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     herfs_impl< value_type >::invoke( a, af, ipiv, b, x, ferr, berr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,18 +34,18 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hetrd( char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, float* d, float* e,
+ inline void hetrd( const char uplo, const integer_t n,
+ traits::complex_f* a, const integer_t lda, float* d, float* e,
             traits::complex_f* tau, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CHETRD( &uplo, &n, traits::complex_ptr(a), &lda, d, e,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void hetrd( char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, double* d, double* e,
+ inline void hetrd( const char uplo, const integer_t n,
+ traits::complex_d* a, const integer_t lda, double* d, double* e,
             traits::complex_d* tau, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZHETRD( &uplo, &n, traits::complex_ptr(a), &lda, d, e,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,15 +33,15 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hetrf( char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t* ipiv,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void hetrf( const char uplo, const integer_t n,
+ traits::complex_f* a, const integer_t lda, integer_t* ipiv,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CHETRF( &uplo, &n, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void hetrf( char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t* ipiv,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void hetrf( const char uplo, const integer_t n,
+ traits::complex_d* a, const integer_t lda, integer_t* ipiv,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZHETRF( &uplo, &n, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(work), &lwork, &info );
     }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetri.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetri.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetri.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,14 +33,14 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hetri( char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t* ipiv,
+ inline void hetri( const char uplo, const integer_t n,
+ traits::complex_f* a, const integer_t lda, const integer_t* ipiv,
             traits::complex_f* work, integer_t& info ) {
         LAPACK_CHETRI( &uplo, &n, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(work), &info );
     }
- inline void hetri( char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t* ipiv,
+ inline void hetri( const char uplo, const integer_t n,
+ traits::complex_d* a, const integer_t lda, const integer_t* ipiv,
             traits::complex_d* work, integer_t& info ) {
         LAPACK_ZHETRI( &uplo, &n, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(work), &info );
@@ -56,7 +56,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename WORK >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
+ static void invoke( const char uplo, MatrixA& a, const VectorIPIV& ipiv,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_ASSERT( uplo == 'U' || uplo == 'L' );
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
@@ -74,7 +74,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
+ static void invoke( const char uplo, MatrixA& a, const VectorIPIV& ipiv,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
@@ -83,12 +83,12 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
+ static void invoke( const char uplo, MatrixA& a, const VectorIPIV& ipiv,
             integer_t& info, optimal_workspace work ) {
         invoke( uplo, a, ipiv, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n;
     }
 };
@@ -96,8 +96,8 @@
 
 // template function to call hetri
 template< typename MatrixA, typename VectorIPIV, typename Workspace >
-inline integer_t hetri( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- Workspace work ) {
+inline integer_t hetri( const char uplo, MatrixA& a,
+ const VectorIPIV& ipiv, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     hetri_impl< value_type >::invoke( uplo, a, ipiv, info, work );
@@ -106,7 +106,8 @@
 
 // template function to call hetri, default workspace type
 template< typename MatrixA, typename VectorIPIV >
-inline integer_t hetri( char const uplo, MatrixA& a, VectorIPIV& ipiv ) {
+inline integer_t hetri( const char uplo, MatrixA& a,
+ const VectorIPIV& ipiv ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     hetri_impl< value_type >::invoke( uplo, a, ipiv, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hetrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,17 +31,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hetrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- integer_t* ipiv, traits::complex_f* b, integer_t const ldb,
- integer_t& info ) {
+ inline void hetrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* a,
+ const integer_t lda, const integer_t* ipiv, traits::complex_f* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_CHETRS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void hetrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- integer_t* ipiv, traits::complex_d* b, integer_t const ldb,
- integer_t& info ) {
+ inline void hetrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ const integer_t lda, const integer_t* ipiv, traits::complex_d* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_ZHETRS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -56,8 +56,8 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorIPIV, typename MatrixB >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- MatrixB& b, integer_t& info ) {
+ static void invoke( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -81,8 +81,8 @@
 
 // template function to call hetrs
 template< typename MatrixA, typename VectorIPIV, typename MatrixB >
-inline integer_t hetrs( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- MatrixB& b ) {
+inline integer_t hetrs( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     hetrs_impl< value_type >::invoke( uplo, a, ipiv, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hgeqz.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hgeqz.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hgeqz.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,31 +37,31 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hgeqz( char const job, char const compq, char const compz,
- integer_t const n, integer_t const ilo, integer_t const ihi,
- float* h, integer_t const ldh, float* t, integer_t const ldt,
+ inline void hgeqz( const char job, const char compq, const char compz,
+ const integer_t n, const integer_t ilo, const integer_t ihi,
+ float* h, const integer_t ldh, float* t, const integer_t ldt,
             float* alphar, float* alphai, float* beta, float* q,
- integer_t const ldq, float* z, integer_t const ldz, float* work,
- integer_t const lwork, integer_t& info ) {
+ const integer_t ldq, float* z, const integer_t ldz, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SHGEQZ( &job, &compq, &compz, &n, &ilo, &ihi, h, &ldh, t, &ldt,
                 alphar, alphai, beta, q, &ldq, z, &ldz, work, &lwork, &info );
     }
- inline void hgeqz( char const job, char const compq, char const compz,
- integer_t const n, integer_t const ilo, integer_t const ihi,
- double* h, integer_t const ldh, double* t, integer_t const ldt,
+ inline void hgeqz( const char job, const char compq, const char compz,
+ const integer_t n, const integer_t ilo, const integer_t ihi,
+ double* h, const integer_t ldh, double* t, const integer_t ldt,
             double* alphar, double* alphai, double* beta, double* q,
- integer_t const ldq, double* z, integer_t const ldz, double* work,
- integer_t const lwork, integer_t& info ) {
+ const integer_t ldq, double* z, const integer_t ldz, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DHGEQZ( &job, &compq, &compz, &n, &ilo, &ihi, h, &ldh, t, &ldt,
                 alphar, alphai, beta, q, &ldq, z, &ldz, work, &lwork, &info );
     }
- inline void hgeqz( char const job, char const compq, char const compz,
- integer_t const n, integer_t const ilo, integer_t const ihi,
- traits::complex_f* h, integer_t const ldh, traits::complex_f* t,
- integer_t const ldt, traits::complex_f* alpha,
+ inline void hgeqz( const char job, const char compq, const char compz,
+ const integer_t n, const integer_t ilo, const integer_t ihi,
+ traits::complex_f* h, const integer_t ldh, traits::complex_f* t,
+ const integer_t ldt, traits::complex_f* alpha,
             traits::complex_f* beta, traits::complex_f* q,
- integer_t const ldq, traits::complex_f* z, integer_t const ldz,
- traits::complex_f* work, integer_t const lwork, float* rwork,
+ const integer_t ldq, traits::complex_f* z, const integer_t ldz,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
             integer_t& info ) {
         LAPACK_CHGEQZ( &job, &compq, &compz, &n, &ilo, &ihi,
                 traits::complex_ptr(h), &ldh, traits::complex_ptr(t), &ldt,
@@ -69,13 +69,13 @@
                 traits::complex_ptr(q), &ldq, traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), &lwork, rwork, &info );
     }
- inline void hgeqz( char const job, char const compq, char const compz,
- integer_t const n, integer_t const ilo, integer_t const ihi,
- traits::complex_d* h, integer_t const ldh, traits::complex_d* t,
- integer_t const ldt, traits::complex_d* alpha,
+ inline void hgeqz( const char job, const char compq, const char compz,
+ const integer_t n, const integer_t ilo, const integer_t ihi,
+ traits::complex_d* h, const integer_t ldh, traits::complex_d* t,
+ const integer_t ldt, traits::complex_d* alpha,
             traits::complex_d* beta, traits::complex_d* q,
- integer_t const ldq, traits::complex_d* z, integer_t const ldz,
- traits::complex_d* work, integer_t const lwork, double* rwork,
+ const integer_t ldq, traits::complex_d* z, const integer_t ldz,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
             integer_t& info ) {
         LAPACK_ZHGEQZ( &job, &compq, &compz, &n, &ilo, &ihi,
                 traits::complex_ptr(h), &ldh, traits::complex_ptr(t), &ldt,
@@ -100,8 +100,8 @@
     template< typename MatrixH, typename MatrixT, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixQ,
             typename MatrixZ, typename WORK >
- static void invoke( char const job, char const compq, char const compz,
- integer_t const ilo, MatrixH& h, MatrixT& t, VectorALPHAR& alphar,
+ static void invoke( const char job, const char compq, const char compz,
+ const integer_t ilo, MatrixH& h, MatrixT& t, VectorALPHAR& alphar,
             VectorALPHAI& alphai, VectorBETA& beta, MatrixQ& q, MatrixZ& z,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -147,8 +147,8 @@
     template< typename MatrixH, typename MatrixT, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixQ,
             typename MatrixZ >
- static void invoke( char const job, char const compq, char const compz,
- integer_t const ilo, MatrixH& h, MatrixT& t, VectorALPHAR& alphar,
+ static void invoke( const char job, const char compq, const char compz,
+ const integer_t ilo, MatrixH& h, MatrixT& t, VectorALPHAR& alphar,
             VectorALPHAI& alphai, VectorBETA& beta, MatrixQ& q, MatrixZ& z,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
@@ -161,8 +161,8 @@
     template< typename MatrixH, typename MatrixT, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixQ,
             typename MatrixZ >
- static void invoke( char const job, char const compq, char const compz,
- integer_t const ilo, MatrixH& h, MatrixT& t, VectorALPHAR& alphar,
+ static void invoke( const char job, const char compq, const char compz,
+ const integer_t ilo, MatrixH& h, MatrixT& t, VectorALPHAR& alphar,
             VectorALPHAI& alphai, VectorBETA& beta, MatrixQ& q, MatrixZ& z,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
@@ -180,7 +180,7 @@
                 info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, n );
     }
 };
@@ -196,8 +196,8 @@
     template< typename MatrixH, typename MatrixT, typename VectorALPHA,
             typename VectorBETA, typename MatrixQ, typename MatrixZ,
             typename WORK, typename RWORK >
- static void invoke( char const job, char const compq, char const compz,
- integer_t const ilo, MatrixH& h, MatrixT& t, VectorALPHA& alpha,
+ static void invoke( const char job, const char compq, const char compz,
+ const integer_t ilo, MatrixH& h, MatrixT& t, VectorALPHA& alpha,
             VectorBETA& beta, MatrixQ& q, MatrixZ& z, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -242,8 +242,8 @@
     // minimal workspace specialization
     template< typename MatrixH, typename MatrixT, typename VectorALPHA,
             typename VectorBETA, typename MatrixQ, typename MatrixZ >
- static void invoke( char const job, char const compq, char const compz,
- integer_t const ilo, MatrixH& h, MatrixT& t, VectorALPHA& alpha,
+ static void invoke( const char job, const char compq, const char compz,
+ const integer_t ilo, MatrixH& h, MatrixT& t, VectorALPHA& alpha,
             VectorBETA& beta, MatrixQ& q, MatrixZ& z, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -257,8 +257,8 @@
     // optimal workspace specialization
     template< typename MatrixH, typename MatrixT, typename VectorALPHA,
             typename VectorBETA, typename MatrixQ, typename MatrixZ >
- static void invoke( char const job, char const compq, char const compz,
- integer_t const ilo, MatrixH& h, MatrixT& t, VectorALPHA& alpha,
+ static void invoke( const char job, const char compq, const char compz,
+ const integer_t ilo, MatrixH& h, MatrixT& t, VectorALPHA& alpha,
             VectorBETA& beta, MatrixQ& q, MatrixZ& z, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
@@ -278,11 +278,11 @@
                 workspace( tmp_work, tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -292,8 +292,8 @@
 template< typename MatrixH, typename MatrixT, typename VectorALPHAR,
         typename VectorALPHAI, typename VectorBETA, typename MatrixQ,
         typename MatrixZ, typename Workspace >
-inline integer_t hgeqz( char const job, char const compq,
- char const compz, integer_t const ilo, MatrixH& h, MatrixT& t,
+inline integer_t hgeqz( const char job, const char compq,
+ const char compz, const integer_t ilo, MatrixH& h, MatrixT& t,
         VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta,
         MatrixQ& q, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
@@ -307,8 +307,8 @@
 template< typename MatrixH, typename MatrixT, typename VectorALPHAR,
         typename VectorALPHAI, typename VectorBETA, typename MatrixQ,
         typename MatrixZ >
-inline integer_t hgeqz( char const job, char const compq,
- char const compz, integer_t const ilo, MatrixH& h, MatrixT& t,
+inline integer_t hgeqz( const char job, const char compq,
+ const char compz, const integer_t ilo, MatrixH& h, MatrixT& t,
         VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta,
         MatrixQ& q, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
@@ -321,8 +321,8 @@
 template< typename MatrixH, typename MatrixT, typename VectorALPHA,
         typename VectorBETA, typename MatrixQ, typename MatrixZ,
         typename Workspace >
-inline integer_t hgeqz( char const job, char const compq,
- char const compz, integer_t const ilo, MatrixH& h, MatrixT& t,
+inline integer_t hgeqz( const char job, const char compq,
+ const char compz, const integer_t ilo, MatrixH& h, MatrixT& t,
         VectorALPHA& alpha, VectorBETA& beta, MatrixQ& q, MatrixZ& z,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
@@ -335,8 +335,8 @@
 // template function to call hgeqz, default workspace type
 template< typename MatrixH, typename MatrixT, typename VectorALPHA,
         typename VectorBETA, typename MatrixQ, typename MatrixZ >
-inline integer_t hgeqz( char const job, char const compq,
- char const compz, integer_t const ilo, MatrixH& h, MatrixT& t,
+inline integer_t hgeqz( const char job, const char compq,
+ const char compz, const integer_t ilo, MatrixH& h, MatrixT& t,
         VectorALPHA& alpha, VectorBETA& beta, MatrixQ& q, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hprfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hprfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hprfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,23 +33,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hprfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap,
- traits::complex_f* afp, integer_t* ipiv, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* x, integer_t const ldx,
- float* ferr, float* berr, traits::complex_f* work, float* rwork,
+ inline void hprfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* ap,
+ const traits::complex_f* afp, const integer_t* ipiv,
+ const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float* ferr,
+ float* berr, traits::complex_f* work, float* rwork,
             integer_t& info ) {
         LAPACK_CHPRFS( &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), ipiv, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void hprfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap,
- traits::complex_d* afp, integer_t* ipiv, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* x, integer_t const ldx,
- double* ferr, double* berr, traits::complex_d* work,
- double* rwork, integer_t& info ) {
+ inline void hprfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* ap,
+ const traits::complex_d* afp, const integer_t* ipiv,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double* ferr,
+ double* berr, traits::complex_d* work, double* rwork,
+ integer_t& info ) {
         LAPACK_ZHPRFS( &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), ipiv, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, ferr, berr,
@@ -68,10 +70,10 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
- RWORK > work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -112,9 +114,10 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, minimal_workspace work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
         invoke( n, ap, afp, ipiv, b, x, ferr, berr, info, workspace( tmp_work,
@@ -125,18 +128,19 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, optimal_workspace work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( n, ap, afp, ipiv, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -146,9 +150,9 @@
 template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t hprfs( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, Workspace work ) {
+inline integer_t hprfs( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     hprfs_impl< value_type >::invoke( n, ap, afp, ipiv, b, x, ferr, berr,
@@ -160,9 +164,9 @@
 template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t hprfs( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr ) {
+inline integer_t hprfs( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     hprfs_impl< value_type >::invoke( n, ap, afp, ipiv, b, x, ferr, berr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hptrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hptrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hptrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,15 +31,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hptrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void hptrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* ap,
+ const integer_t* ipiv, traits::complex_f* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_CHPTRS( &uplo, &n, &nrhs, traits::complex_ptr(ap), ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void hptrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void hptrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* ap,
+ const integer_t* ipiv, traits::complex_d* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_ZHPTRS( &uplo, &n, &nrhs, traits::complex_ptr(ap), ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -54,8 +56,9 @@
 
     // templated specialization
     template< typename MatrixAP, typename VectorIPIV, typename MatrixB >
- static void invoke( char const uplo, integer_t const n, MatrixAP& ap,
- VectorIPIV& ipiv, MatrixB& b, integer_t& info ) {
+ static void invoke( const char uplo, const integer_t n,
+ const MatrixAP& ap, const VectorIPIV& ipiv, MatrixB& b,
+ integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAP >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -75,8 +78,8 @@
 
 // template function to call hptrs
 template< typename MatrixAP, typename VectorIPIV, typename MatrixB >
-inline integer_t hptrs( char const uplo, integer_t const n, MatrixAP& ap,
- VectorIPIV& ipiv, MatrixB& b ) {
+inline integer_t hptrs( const char uplo, const integer_t n,
+ const MatrixAP& ap, const VectorIPIV& ipiv, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     hptrs_impl< value_type >::invoke( uplo, n, ap, ipiv, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hsein.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hsein.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hsein.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,44 +36,44 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hsein( char const side, char const eigsrc, char const initv,
- logical_t* select, integer_t const n, float* h,
- integer_t const ldh, float* wr, float* wi, float* vl,
- integer_t const ldvl, float* vr, integer_t const ldvr,
- integer_t const mm, integer_t& m, float* work, integer_t* ifaill,
+ inline void hsein( const char side, const char eigsrc, const char initv,
+ logical_t* select, const integer_t n, const float* h,
+ const integer_t ldh, float* wr, const float* wi, float* vl,
+ const integer_t ldvl, float* vr, const integer_t ldvr,
+ const integer_t mm, integer_t& m, float* work, integer_t* ifaill,
             integer_t* ifailr, integer_t& info ) {
         LAPACK_SHSEIN( &side, &eigsrc, &initv, select, &n, h, &ldh, wr, wi,
                 vl, &ldvl, vr, &ldvr, &mm, &m, work, ifaill, ifailr, &info );
     }
- inline void hsein( char const side, char const eigsrc, char const initv,
- logical_t* select, integer_t const n, double* h,
- integer_t const ldh, double* wr, double* wi, double* vl,
- integer_t const ldvl, double* vr, integer_t const ldvr,
- integer_t const mm, integer_t& m, double* work, integer_t* ifaill,
+ inline void hsein( const char side, const char eigsrc, const char initv,
+ logical_t* select, const integer_t n, const double* h,
+ const integer_t ldh, double* wr, const double* wi, double* vl,
+ const integer_t ldvl, double* vr, const integer_t ldvr,
+ const integer_t mm, integer_t& m, double* work, integer_t* ifaill,
             integer_t* ifailr, integer_t& info ) {
         LAPACK_DHSEIN( &side, &eigsrc, &initv, select, &n, h, &ldh, wr, wi,
                 vl, &ldvl, vr, &ldvr, &mm, &m, work, ifaill, ifailr, &info );
     }
- inline void hsein( char const side, char const eigsrc, char const initv,
- logical_t* select, integer_t const n, traits::complex_f* h,
- integer_t const ldh, traits::complex_f* w, traits::complex_f* vl,
- integer_t const ldvl, traits::complex_f* vr, integer_t const ldvr,
- integer_t const mm, integer_t& m, traits::complex_f* work,
- float* rwork, integer_t* ifaill, integer_t* ifailr,
- integer_t& info ) {
+ inline void hsein( const char side, const char eigsrc, const char initv,
+ const logical_t* select, const integer_t n,
+ const traits::complex_f* h, const integer_t ldh,
+ traits::complex_f* w, traits::complex_f* vl, const integer_t ldvl,
+ traits::complex_f* vr, const integer_t ldvr, const integer_t mm,
+ integer_t& m, traits::complex_f* work, float* rwork,
+ integer_t* ifaill, integer_t* ifailr, integer_t& info ) {
         LAPACK_CHSEIN( &side, &eigsrc, &initv, select, &n,
                 traits::complex_ptr(h), &ldh, traits::complex_ptr(w),
                 traits::complex_ptr(vl), &ldvl, traits::complex_ptr(vr),
                 &ldvr, &mm, &m, traits::complex_ptr(work), rwork, ifaill,
                 ifailr, &info );
     }
- inline void hsein( char const side, char const eigsrc, char const initv,
- logical_t* select, integer_t const n, traits::complex_d* h,
- integer_t const ldh, traits::complex_d* w, traits::complex_d* vl,
- integer_t const ldvl, traits::complex_d* vr, integer_t const ldvr,
- integer_t const mm, integer_t& m, traits::complex_d* work,
- double* rwork, integer_t* ifaill, integer_t* ifailr,
- integer_t& info ) {
+ inline void hsein( const char side, const char eigsrc, const char initv,
+ const logical_t* select, const integer_t n,
+ const traits::complex_d* h, const integer_t ldh,
+ traits::complex_d* w, traits::complex_d* vl, const integer_t ldvl,
+ traits::complex_d* vr, const integer_t ldvr, const integer_t mm,
+ integer_t& m, traits::complex_d* work, double* rwork,
+ integer_t* ifaill, integer_t* ifailr, integer_t& info ) {
         LAPACK_ZHSEIN( &side, &eigsrc, &initv, select, &n,
                 traits::complex_ptr(h), &ldh, traits::complex_ptr(w),
                 traits::complex_ptr(vl), &ldvl, traits::complex_ptr(vr),
@@ -97,11 +97,12 @@
     template< typename VectorSELECT, typename MatrixH, typename VectorWR,
             typename VectorWI, typename MatrixVL, typename MatrixVR,
             typename VectorIFAILL, typename VectorIFAILR, typename WORK >
- static void invoke( char const side, char const eigsrc, char const initv,
- VectorSELECT& select, MatrixH& h, VectorWR& wr, VectorWI& wi,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- VectorIFAILL& ifaill, VectorIFAILR& ifailr, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char eigsrc, const char initv,
+ VectorSELECT& select, const MatrixH& h, VectorWR& wr,
+ const VectorWI& wi, MatrixVL& vl, MatrixVR& vr,
+ const integer_t mm, integer_t& m, VectorIFAILL& ifaill,
+ VectorIFAILR& ifailr, integer_t& info, detail::workspace1<
+ WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixH >::value_type, typename traits::vector_traits<
                 VectorWR >::value_type >::value) );
@@ -147,11 +148,11 @@
     template< typename VectorSELECT, typename MatrixH, typename VectorWR,
             typename VectorWI, typename MatrixVL, typename MatrixVR,
             typename VectorIFAILL, typename VectorIFAILR >
- static void invoke( char const side, char const eigsrc, char const initv,
- VectorSELECT& select, MatrixH& h, VectorWR& wr, VectorWI& wi,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- VectorIFAILL& ifaill, VectorIFAILR& ifailr, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char eigsrc, const char initv,
+ VectorSELECT& select, const MatrixH& h, VectorWR& wr,
+ const VectorWI& wi, MatrixVL& vl, MatrixVR& vr,
+ const integer_t mm, integer_t& m, VectorIFAILL& ifaill,
+ VectorIFAILR& ifailr, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(h), ?2 ) );
         invoke( side, eigsrc, initv, select, h, wr, wi, vl, vr, mm, m, ifaill,
@@ -162,16 +163,16 @@
     template< typename VectorSELECT, typename MatrixH, typename VectorWR,
             typename VectorWI, typename MatrixVL, typename MatrixVR,
             typename VectorIFAILL, typename VectorIFAILR >
- static void invoke( char const side, char const eigsrc, char const initv,
- VectorSELECT& select, MatrixH& h, VectorWR& wr, VectorWI& wi,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- VectorIFAILL& ifaill, VectorIFAILR& ifailr, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char eigsrc, const char initv,
+ VectorSELECT& select, const MatrixH& h, VectorWR& wr,
+ const VectorWI& wi, MatrixVL& vl, MatrixVR& vr,
+ const integer_t mm, integer_t& m, VectorIFAILL& ifaill,
+ VectorIFAILR& ifailr, integer_t& info, optimal_workspace work ) {
         invoke( side, eigsrc, initv, select, h, wr, wi, vl, vr, mm, m, ifaill,
                 ifailr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n, ?? ) {
+ static integer_t min_size_work( const integer_t n, ?? ) {
         return (n+2)*n;
     }
 };
@@ -187,9 +188,9 @@
     template< typename VectorSELECT, typename MatrixH, typename VectorW,
             typename MatrixVL, typename MatrixVR, typename VectorIFAILL,
             typename VectorIFAILR, typename WORK, typename RWORK >
- static void invoke( char const side, char const eigsrc, char const initv,
- VectorSELECT& select, MatrixH& h, VectorW& w, MatrixVL& vl,
- MatrixVR& vr, integer_t const mm, integer_t& m,
+ static void invoke( const char side, const char eigsrc, const char initv,
+ const VectorSELECT& select, const MatrixH& h, VectorW& w,
+ MatrixVL& vl, MatrixVR& vr, const integer_t mm, integer_t& m,
             VectorIFAILL& ifaill, VectorIFAILR& ifailr, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -234,9 +235,9 @@
     template< typename VectorSELECT, typename MatrixH, typename VectorW,
             typename MatrixVL, typename MatrixVR, typename VectorIFAILL,
             typename VectorIFAILR >
- static void invoke( char const side, char const eigsrc, char const initv,
- VectorSELECT& select, MatrixH& h, VectorW& w, MatrixVL& vl,
- MatrixVR& vr, integer_t const mm, integer_t& m,
+ static void invoke( const char side, const char eigsrc, const char initv,
+ const VectorSELECT& select, const MatrixH& h, VectorW& w,
+ MatrixVL& vl, MatrixVR& vr, const integer_t mm, integer_t& m,
             VectorIFAILL& ifaill, VectorIFAILR& ifailr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -251,20 +252,20 @@
     template< typename VectorSELECT, typename MatrixH, typename VectorW,
             typename MatrixVL, typename MatrixVR, typename VectorIFAILL,
             typename VectorIFAILR >
- static void invoke( char const side, char const eigsrc, char const initv,
- VectorSELECT& select, MatrixH& h, VectorW& w, MatrixVL& vl,
- MatrixVR& vr, integer_t const mm, integer_t& m,
+ static void invoke( const char side, const char eigsrc, const char initv,
+ const VectorSELECT& select, const MatrixH& h, VectorW& w,
+ MatrixVL& vl, MatrixVR& vr, const integer_t mm, integer_t& m,
             VectorIFAILL& ifaill, VectorIFAILR& ifailr, integer_t& info,
             optimal_workspace work ) {
         invoke( side, eigsrc, initv, select, h, w, vl, vr, mm, m, ifaill,
                 ifailr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -274,11 +275,11 @@
 template< typename VectorSELECT, typename MatrixH, typename VectorWR,
         typename VectorWI, typename MatrixVL, typename MatrixVR,
         typename VectorIFAILL, typename VectorIFAILR, typename Workspace >
-inline integer_t hsein( char const side, char const eigsrc,
- char const initv, VectorSELECT& select, MatrixH& h, VectorWR& wr,
- VectorWI& wi, MatrixVL& vl, MatrixVR& vr, integer_t const mm,
- integer_t& m, VectorIFAILL& ifaill, VectorIFAILR& ifailr,
- Workspace work ) {
+inline integer_t hsein( const char side, const char eigsrc,
+ const char initv, VectorSELECT& select, const MatrixH& h,
+ VectorWR& wr, const VectorWI& wi, MatrixVL& vl, MatrixVR& vr,
+ const integer_t mm, integer_t& m, VectorIFAILL& ifaill,
+ VectorIFAILR& ifailr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
     integer_t info(0);
     hsein_impl< value_type >::invoke( side, eigsrc, initv, select, h, wr,
@@ -290,10 +291,11 @@
 template< typename VectorSELECT, typename MatrixH, typename VectorWR,
         typename VectorWI, typename MatrixVL, typename MatrixVR,
         typename VectorIFAILL, typename VectorIFAILR >
-inline integer_t hsein( char const side, char const eigsrc,
- char const initv, VectorSELECT& select, MatrixH& h, VectorWR& wr,
- VectorWI& wi, MatrixVL& vl, MatrixVR& vr, integer_t const mm,
- integer_t& m, VectorIFAILL& ifaill, VectorIFAILR& ifailr ) {
+inline integer_t hsein( const char side, const char eigsrc,
+ const char initv, VectorSELECT& select, const MatrixH& h,
+ VectorWR& wr, const VectorWI& wi, MatrixVL& vl, MatrixVR& vr,
+ const integer_t mm, integer_t& m, VectorIFAILL& ifaill,
+ VectorIFAILR& ifailr ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
     integer_t info(0);
     hsein_impl< value_type >::invoke( side, eigsrc, initv, select, h, wr,
@@ -304,10 +306,11 @@
 template< typename VectorSELECT, typename MatrixH, typename VectorW,
         typename MatrixVL, typename MatrixVR, typename VectorIFAILL,
         typename VectorIFAILR, typename Workspace >
-inline integer_t hsein( char const side, char const eigsrc,
- char const initv, VectorSELECT& select, MatrixH& h, VectorW& w,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- VectorIFAILL& ifaill, VectorIFAILR& ifailr, Workspace work ) {
+inline integer_t hsein( const char side, const char eigsrc,
+ const char initv, const VectorSELECT& select, const MatrixH& h,
+ VectorW& w, MatrixVL& vl, MatrixVR& vr, const integer_t mm,
+ integer_t& m, VectorIFAILL& ifaill, VectorIFAILR& ifailr,
+ Workspace work ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
     integer_t info(0);
     hsein_impl< value_type >::invoke( side, eigsrc, initv, select, h, w,
@@ -319,10 +322,10 @@
 template< typename VectorSELECT, typename MatrixH, typename VectorW,
         typename MatrixVL, typename MatrixVR, typename VectorIFAILL,
         typename VectorIFAILR >
-inline integer_t hsein( char const side, char const eigsrc,
- char const initv, VectorSELECT& select, MatrixH& h, VectorW& w,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- VectorIFAILL& ifaill, VectorIFAILR& ifailr ) {
+inline integer_t hsein( const char side, const char eigsrc,
+ const char initv, const VectorSELECT& select, const MatrixH& h,
+ VectorW& w, MatrixVL& vl, MatrixVR& vr, const integer_t mm,
+ integer_t& m, VectorIFAILL& ifaill, VectorIFAILR& ifailr ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
     integer_t info(0);
     hsein_impl< value_type >::invoke( side, eigsrc, initv, select, h, w,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hseqr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hseqr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/hseqr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,36 +36,36 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hseqr( char const job, char const compz, integer_t const n,
- integer_t const ilo, integer_t const ihi, float* h,
- integer_t const ldh, float* wr, float* wi, float* z,
- integer_t const ldz, float* work, integer_t const lwork,
+ inline void hseqr( const char job, const char compz, const integer_t n,
+ const integer_t ilo, const integer_t ihi, float* h,
+ const integer_t ldh, float* wr, float* wi, float* z,
+ const integer_t ldz, float* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_SHSEQR( &job, &compz, &n, &ilo, &ihi, h, &ldh, wr, wi, z, &ldz,
                 work, &lwork, &info );
     }
- inline void hseqr( char const job, char const compz, integer_t const n,
- integer_t const ilo, integer_t const ihi, double* h,
- integer_t const ldh, double* wr, double* wi, double* z,
- integer_t const ldz, double* work, integer_t const lwork,
+ inline void hseqr( const char job, const char compz, const integer_t n,
+ const integer_t ilo, const integer_t ihi, double* h,
+ const integer_t ldh, double* wr, double* wi, double* z,
+ const integer_t ldz, double* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_DHSEQR( &job, &compz, &n, &ilo, &ihi, h, &ldh, wr, wi, z, &ldz,
                 work, &lwork, &info );
     }
- inline void hseqr( char const job, char const compz, integer_t const n,
- integer_t const ilo, integer_t const ihi, traits::complex_f* h,
- integer_t const ldh, traits::complex_f* w, traits::complex_f* z,
- integer_t const ldz, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void hseqr( const char job, const char compz, const integer_t n,
+ const integer_t ilo, const integer_t ihi, traits::complex_f* h,
+ const integer_t ldh, traits::complex_f* w, traits::complex_f* z,
+ const integer_t ldz, traits::complex_f* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CHSEQR( &job, &compz, &n, &ilo, &ihi, traits::complex_ptr(h),
                 &ldh, traits::complex_ptr(w), traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void hseqr( char const job, char const compz, integer_t const n,
- integer_t const ilo, integer_t const ihi, traits::complex_d* h,
- integer_t const ldh, traits::complex_d* w, traits::complex_d* z,
- integer_t const ldz, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void hseqr( const char job, const char compz, const integer_t n,
+ const integer_t ilo, const integer_t ihi, traits::complex_d* h,
+ const integer_t ldh, traits::complex_d* w, traits::complex_d* z,
+ const integer_t ldz, traits::complex_d* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZHSEQR( &job, &compz, &n, &ilo, &ihi, traits::complex_ptr(h),
                 &ldh, traits::complex_ptr(w), traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), &lwork, &info );
@@ -86,8 +86,8 @@
     // user-defined workspace specialization
     template< typename MatrixH, typename VectorWR, typename VectorWI,
             typename MatrixZ, typename WORK >
- static void invoke( char const job, char const compz, integer_t const ilo,
- integer_t const ihi, MatrixH& h, VectorWR& wr, VectorWI& wi,
+ static void invoke( const char job, const char compz, const integer_t ilo,
+ const integer_t ihi, MatrixH& h, VectorWR& wr, VectorWI& wi,
             MatrixZ& z, integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixH >::value_type, typename traits::vector_traits<
@@ -115,8 +115,8 @@
     // minimal workspace specialization
     template< typename MatrixH, typename VectorWR, typename VectorWI,
             typename MatrixZ >
- static void invoke( char const job, char const compz, integer_t const ilo,
- integer_t const ihi, MatrixH& h, VectorWR& wr, VectorWI& wi,
+ static void invoke( const char job, const char compz, const integer_t ilo,
+ const integer_t ihi, MatrixH& h, VectorWR& wr, VectorWI& wi,
             MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
@@ -127,8 +127,8 @@
     // optimal workspace specialization
     template< typename MatrixH, typename VectorWR, typename VectorWI,
             typename MatrixZ >
- static void invoke( char const job, char const compz, integer_t const ilo,
- integer_t const ihi, MatrixH& h, VectorWR& wr, VectorWI& wi,
+ static void invoke( const char job, const char compz, const integer_t ilo,
+ const integer_t ihi, MatrixH& h, VectorWR& wr, VectorWI& wi,
             MatrixZ& z, integer_t& info, optimal_workspace work ) {
         invoke( job, compz, ilo, ihi, h, wr, wi, z, info,
                 minimal_workspace() );
@@ -149,8 +149,8 @@
     // user-defined workspace specialization
     template< typename MatrixH, typename VectorW, typename MatrixZ,
             typename WORK >
- static void invoke( char const job, char const compz, integer_t const ilo,
- integer_t const ihi, MatrixH& h, VectorW& w, MatrixZ& z,
+ static void invoke( const char job, const char compz, const integer_t ilo,
+ const integer_t ihi, MatrixH& h, VectorW& w, MatrixZ& z,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixH >::value_type, typename traits::vector_traits<
@@ -172,8 +172,8 @@
 
     // minimal workspace specialization
     template< typename MatrixH, typename VectorW, typename MatrixZ >
- static void invoke( char const job, char const compz, integer_t const ilo,
- integer_t const ihi, MatrixH& h, VectorW& w, MatrixZ& z,
+ static void invoke( const char job, const char compz, const integer_t ilo,
+ const integer_t ihi, MatrixH& h, VectorW& w, MatrixZ& z,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
@@ -182,8 +182,8 @@
 
     // optimal workspace specialization
     template< typename MatrixH, typename VectorW, typename MatrixZ >
- static void invoke( char const job, char const compz, integer_t const ilo,
- integer_t const ihi, MatrixH& h, VectorW& w, MatrixZ& z,
+ static void invoke( const char job, const char compz, const integer_t ilo,
+ const integer_t ihi, MatrixH& h, VectorW& w, MatrixZ& z,
             integer_t& info, optimal_workspace work ) {
         invoke( job, compz, ilo, ihi, h, w, z, info, minimal_workspace() );
     }
@@ -197,8 +197,8 @@
 // template function to call hseqr
 template< typename MatrixH, typename VectorWR, typename VectorWI,
         typename MatrixZ, typename Workspace >
-inline integer_t hseqr( char const job, char const compz,
- integer_t const ilo, integer_t const ihi, MatrixH& h, VectorWR& wr,
+inline integer_t hseqr( const char job, const char compz,
+ const integer_t ilo, const integer_t ihi, MatrixH& h, VectorWR& wr,
         VectorWI& wi, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
     integer_t info(0);
@@ -210,8 +210,8 @@
 // template function to call hseqr, default workspace type
 template< typename MatrixH, typename VectorWR, typename VectorWI,
         typename MatrixZ >
-inline integer_t hseqr( char const job, char const compz,
- integer_t const ilo, integer_t const ihi, MatrixH& h, VectorWR& wr,
+inline integer_t hseqr( const char job, const char compz,
+ const integer_t ilo, const integer_t ihi, MatrixH& h, VectorWR& wr,
         VectorWI& wi, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
     integer_t info(0);
@@ -222,8 +222,8 @@
 // template function to call hseqr
 template< typename MatrixH, typename VectorW, typename MatrixZ,
         typename Workspace >
-inline integer_t hseqr( char const job, char const compz,
- integer_t const ilo, integer_t const ihi, MatrixH& h, VectorW& w,
+inline integer_t hseqr( const char job, const char compz,
+ const integer_t ilo, const integer_t ihi, MatrixH& h, VectorW& w,
         MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
     integer_t info(0);
@@ -234,8 +234,8 @@
 
 // template function to call hseqr, default workspace type
 template< typename MatrixH, typename VectorW, typename MatrixZ >
-inline integer_t hseqr( char const job, char const compz,
- integer_t const ilo, integer_t const ihi, MatrixH& h, VectorW& w,
+inline integer_t hseqr( const char job, const char compz,
+ const integer_t ilo, const integer_t ihi, MatrixH& h, VectorW& w,
         MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixH >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/labrd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/labrd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/labrd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,34 +34,34 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void labrd( integer_t const m, integer_t const n,
- integer_t const nb, float* a, integer_t const lda, float* d,
- float* e, float* tauq, float* taup, float* x, integer_t const ldx,
- float* y, integer_t const ldy ) {
+ inline void labrd( const integer_t m, const integer_t n,
+ const integer_t nb, float* a, const integer_t lda, float* d,
+ float* e, float* tauq, float* taup, float* x, const integer_t ldx,
+ float* y, const integer_t ldy ) {
         LAPACK_SLABRD( &m, &n, &nb, a, &lda, d, e, tauq, taup, x, &ldx, y,
                 &ldy );
     }
- inline void labrd( integer_t const m, integer_t const n,
- integer_t const nb, double* a, integer_t const lda, double* d,
+ inline void labrd( const integer_t m, const integer_t n,
+ const integer_t nb, double* a, const integer_t lda, double* d,
             double* e, double* tauq, double* taup, double* x,
- integer_t const ldx, double* y, integer_t const ldy ) {
+ const integer_t ldx, double* y, const integer_t ldy ) {
         LAPACK_DLABRD( &m, &n, &nb, a, &lda, d, e, tauq, taup, x, &ldx, y,
                 &ldy );
     }
- inline void labrd( integer_t const m, integer_t const n,
- integer_t const nb, traits::complex_f* a, integer_t const lda,
+ inline void labrd( const integer_t m, const integer_t n,
+ const integer_t nb, traits::complex_f* a, const integer_t lda,
             float* d, float* e, traits::complex_f* tauq,
             traits::complex_f* taup, traits::complex_f* x,
- integer_t const ldx, traits::complex_f* y, integer_t const ldy ) {
+ const integer_t ldx, traits::complex_f* y, const integer_t ldy ) {
         LAPACK_CLABRD( &m, &n, &nb, traits::complex_ptr(a), &lda, d, e,
                 traits::complex_ptr(tauq), traits::complex_ptr(taup),
                 traits::complex_ptr(x), &ldx, traits::complex_ptr(y), &ldy );
     }
- inline void labrd( integer_t const m, integer_t const n,
- integer_t const nb, traits::complex_d* a, integer_t const lda,
+ inline void labrd( const integer_t m, const integer_t n,
+ const integer_t nb, traits::complex_d* a, const integer_t lda,
             double* d, double* e, traits::complex_d* tauq,
             traits::complex_d* taup, traits::complex_d* x,
- integer_t const ldx, traits::complex_d* y, integer_t const ldy ) {
+ const integer_t ldx, traits::complex_d* y, const integer_t ldy ) {
         LAPACK_ZLABRD( &m, &n, &nb, traits::complex_ptr(a), &lda, d, e,
                 traits::complex_ptr(tauq), traits::complex_ptr(taup),
                 traits::complex_ptr(x), &ldx, traits::complex_ptr(y), &ldy );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/lacon.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/lacon.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/lacon.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,20 +36,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void lacon( integer_t const n, float* v, float* x, integer_t* isgn,
+ inline void lacon( const integer_t n, float* v, float* x, integer_t* isgn,
             float& est, integer_t& kase ) {
         LAPACK_SLACON( &n, v, x, isgn, &est, &kase );
     }
- inline void lacon( integer_t const n, double* v, double* x,
+ inline void lacon( const integer_t n, double* v, double* x,
             integer_t* isgn, double& est, integer_t& kase ) {
         LAPACK_DLACON( &n, v, x, isgn, &est, &kase );
     }
- inline void lacon( integer_t const n, traits::complex_f* v,
+ inline void lacon( const integer_t n, traits::complex_f* v,
             traits::complex_f* x, float& est, integer_t& kase ) {
         LAPACK_CLACON( &n, traits::complex_ptr(v), traits::complex_ptr(x),
                 &est, &kase );
     }
- inline void lacon( integer_t const n, traits::complex_d* v,
+ inline void lacon( const integer_t n, traits::complex_d* v,
             traits::complex_d* x, double& est, integer_t& kase ) {
         LAPACK_ZLACON( &n, traits::complex_ptr(v), traits::complex_ptr(x),
                 &est, &kase );
@@ -69,7 +69,7 @@
 
     // user-defined workspace specialization
     template< typename VectorX, typename V, typename ISGN >
- static void invoke( integer_t const n, VectorX& x, real_type& est,
+ static void invoke( const integer_t n, VectorX& x, real_type& est,
             integer_t& kase, detail::workspace2< V, ISGN > work ) {
         BOOST_ASSERT( n >= 1 );
         BOOST_ASSERT( traits::vector_size(work.select(real_type())) >=
@@ -83,7 +83,7 @@
 
     // minimal workspace specialization
     template< typename VectorX >
- static void invoke( integer_t const n, VectorX& x, real_type& est,
+ static void invoke( const integer_t n, VectorX& x, real_type& est,
             integer_t& kase, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_v( min_size_v( n ) );
         traits::detail::array< integer_t > tmp_isgn( min_size_isgn( n ) );
@@ -92,16 +92,16 @@
 
     // optimal workspace specialization
     template< typename VectorX >
- static void invoke( integer_t const n, VectorX& x, real_type& est,
+ static void invoke( const integer_t n, VectorX& x, real_type& est,
             integer_t& kase, optimal_workspace work ) {
         invoke( n, x, est, kase, minimal_workspace() );
     }
 
- static integer_t min_size_v( integer_t const n ) {
+ static integer_t min_size_v( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_isgn( integer_t const n ) {
+ static integer_t min_size_isgn( const integer_t n ) {
         return n;
     }
 };
@@ -115,7 +115,7 @@
 
     // user-defined workspace specialization
     template< typename VectorX, typename V >
- static void invoke( integer_t const n, VectorX& x, real_type& est,
+ static void invoke( const integer_t n, VectorX& x, real_type& est,
             integer_t& kase, detail::workspace1< V > work ) {
         BOOST_ASSERT( n >= 1 );
         BOOST_ASSERT( traits::vector_size(work.select(value_type())) >=
@@ -126,7 +126,7 @@
 
     // minimal workspace specialization
     template< typename VectorX >
- static void invoke( integer_t const n, VectorX& x, real_type& est,
+ static void invoke( const integer_t n, VectorX& x, real_type& est,
             integer_t& kase, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_v( min_size_v( n ) );
         invoke( n, x, est, kase, workspace( tmp_v ) );
@@ -134,12 +134,12 @@
 
     // optimal workspace specialization
     template< typename VectorX >
- static void invoke( integer_t const n, VectorX& x, real_type& est,
+ static void invoke( const integer_t n, VectorX& x, real_type& est,
             integer_t& kase, optimal_workspace work ) {
         invoke( n, x, est, kase, minimal_workspace() );
     }
 
- static integer_t min_size_v( integer_t const n ) {
+ static integer_t min_size_v( const integer_t n ) {
         return n;
     }
 };
@@ -147,7 +147,7 @@
 
 // template function to call lacon
 template< typename VectorX, typename Workspace >
-inline integer_t lacon( integer_t const n, VectorX& x,
+inline integer_t lacon( const integer_t n, VectorX& x,
         typename traits::type_traits< typename traits::vector_traits<
         VectorX >::value_type >::real_type& est, integer_t& kase,
         Workspace work ) {
@@ -159,7 +159,7 @@
 
 // template function to call lacon, default workspace type
 template< typename VectorX >
-inline integer_t lacon( integer_t const n, VectorX& x,
+inline integer_t lacon( const integer_t n, VectorX& x,
         typename traits::type_traits< typename traits::vector_traits<
         VectorX >::value_type >::real_type& est, integer_t& kase ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/laebz.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/laebz.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/laebz.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,22 +33,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void laebz( integer_t const ijob, integer_t const nitmax,
- integer_t const n, integer_t const mmax, integer_t const minp,
- integer_t const nbmin, float const abstol, float const reltol,
- float const pivmin, float* d, float* e, float* e2,
- integer_t* nval, float* ab, float* c, integer_t& mout,
- integer_t* nab, float* work, integer_t* iwork, integer_t& info ) {
+ inline void laebz( const integer_t ijob, const integer_t nitmax,
+ const integer_t n, const integer_t mmax, const integer_t minp,
+ const integer_t nbmin, const float abstol, const float reltol,
+ const float pivmin, const float* d, const float* e,
+ const float* e2, integer_t* nval, float* ab, float* c,
+ integer_t& mout, integer_t* nab, float* work, integer_t* iwork,
+ integer_t& info ) {
         LAPACK_SLAEBZ( &ijob, &nitmax, &n, &mmax, &minp, &nbmin, &abstol,
                 &reltol, &pivmin, d, e, e2, nval, ab, c, &mout, nab, work,
                 iwork, &info );
     }
- inline void laebz( integer_t const ijob, integer_t const nitmax,
- integer_t const n, integer_t const mmax, integer_t const minp,
- integer_t const nbmin, double const abstol, double const reltol,
- double const pivmin, double* d, double* e, double* e2,
- integer_t* nval, double* ab, double* c, integer_t& mout,
- integer_t* nab, double* work, integer_t* iwork, integer_t& info ) {
+ inline void laebz( const integer_t ijob, const integer_t nitmax,
+ const integer_t n, const integer_t mmax, const integer_t minp,
+ const integer_t nbmin, const double abstol, const double reltol,
+ const double pivmin, const double* d, const double* e,
+ const double* e2, integer_t* nval, double* ab, double* c,
+ integer_t& mout, integer_t* nab, double* work, integer_t* iwork,
+ integer_t& info ) {
         LAPACK_DLAEBZ( &ijob, &nitmax, &n, &mmax, &minp, &nbmin, &abstol,
                 &reltol, &pivmin, d, e, e2, nval, ab, c, &mout, nab, work,
                 iwork, &info );
@@ -66,13 +68,13 @@
     template< typename VectorD, typename VectorE, typename VectorE2,
             typename VectorNVAL, typename MatrixAB, typename VectorC,
             typename MatrixNAB, typename WORK, typename IWORK >
- static void invoke( integer_t const ijob, integer_t const nitmax,
- integer_t const n, integer_t const minp, integer_t const nbmin,
- real_type const abstol, real_type const reltol,
- real_type const pivmin, VectorD& d, VectorE& e, VectorE2& e2,
- VectorNVAL& nval, MatrixAB& ab, VectorC& c, integer_t& mout,
- MatrixNAB& nab, integer_t& info, detail::workspace2< WORK,
- IWORK > work ) {
+ static void invoke( const integer_t ijob, const integer_t nitmax,
+ const integer_t n, const integer_t minp, const integer_t nbmin,
+ const real_type abstol, const real_type reltol,
+ const real_type pivmin, const VectorD& d, const VectorE& e,
+ const VectorE2& e2, VectorNVAL& nval, MatrixAB& ab, VectorC& c,
+ integer_t& mout, MatrixNAB& nab, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
                 VectorE >::value_type >::value) );
@@ -108,12 +110,13 @@
     template< typename VectorD, typename VectorE, typename VectorE2,
             typename VectorNVAL, typename MatrixAB, typename VectorC,
             typename MatrixNAB >
- static void invoke( integer_t const ijob, integer_t const nitmax,
- integer_t const n, integer_t const minp, integer_t const nbmin,
- real_type const abstol, real_type const reltol,
- real_type const pivmin, VectorD& d, VectorE& e, VectorE2& e2,
- VectorNVAL& nval, MatrixAB& ab, VectorC& c, integer_t& mout,
- MatrixNAB& nab, integer_t& info, minimal_workspace work ) {
+ static void invoke( const integer_t ijob, const integer_t nitmax,
+ const integer_t n, const integer_t minp, const integer_t nbmin,
+ const real_type abstol, const real_type reltol,
+ const real_type pivmin, const VectorD& d, const VectorE& e,
+ const VectorE2& e2, VectorNVAL& nval, MatrixAB& ab, VectorC& c,
+ integer_t& mout, MatrixNAB& nab, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::leading_dimension(ab) ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
@@ -127,21 +130,22 @@
     template< typename VectorD, typename VectorE, typename VectorE2,
             typename VectorNVAL, typename MatrixAB, typename VectorC,
             typename MatrixNAB >
- static void invoke( integer_t const ijob, integer_t const nitmax,
- integer_t const n, integer_t const minp, integer_t const nbmin,
- real_type const abstol, real_type const reltol,
- real_type const pivmin, VectorD& d, VectorE& e, VectorE2& e2,
- VectorNVAL& nval, MatrixAB& ab, VectorC& c, integer_t& mout,
- MatrixNAB& nab, integer_t& info, optimal_workspace work ) {
+ static void invoke( const integer_t ijob, const integer_t nitmax,
+ const integer_t n, const integer_t minp, const integer_t nbmin,
+ const real_type abstol, const real_type reltol,
+ const real_type pivmin, const VectorD& d, const VectorE& e,
+ const VectorE2& e2, VectorNVAL& nval, MatrixAB& ab, VectorC& c,
+ integer_t& mout, MatrixNAB& nab, integer_t& info,
+ optimal_workspace work ) {
         invoke( ijob, nitmax, n, minp, nbmin, abstol, reltol, pivmin, d, e,
                 e2, nval, ab, c, mout, nab, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const mmax ) {
+ static integer_t min_size_work( const integer_t mmax ) {
         return mmax;
     }
 
- static integer_t min_size_iwork( integer_t const mmax ) {
+ static integer_t min_size_iwork( const integer_t mmax ) {
         return mmax;
     }
 };
@@ -151,16 +155,16 @@
 template< typename VectorD, typename VectorE, typename VectorE2,
         typename VectorNVAL, typename MatrixAB, typename VectorC,
         typename MatrixNAB, typename Workspace >
-inline integer_t laebz( integer_t const ijob, integer_t const nitmax,
- integer_t const n, integer_t const minp, integer_t const nbmin,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const abstol,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const reltol,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const pivmin, VectorD& d,
- VectorE& e, VectorE2& e2, VectorNVAL& nval, MatrixAB& ab, VectorC& c,
- integer_t& mout, MatrixNAB& nab, Workspace work ) {
+inline integer_t laebz( const integer_t ijob, const integer_t nitmax,
+ const integer_t n, const integer_t minp, const integer_t nbmin,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type abstol,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type reltol,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type pivmin, const VectorD& d,
+ const VectorE& e, const VectorE2& e2, VectorNVAL& nval, MatrixAB& ab,
+ VectorC& c, integer_t& mout, MatrixNAB& nab, Workspace work ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);
     laebz_impl< value_type >::invoke( ijob, nitmax, n, minp, nbmin,
@@ -173,16 +177,16 @@
 template< typename VectorD, typename VectorE, typename VectorE2,
         typename VectorNVAL, typename MatrixAB, typename VectorC,
         typename MatrixNAB >
-inline integer_t laebz( integer_t const ijob, integer_t const nitmax,
- integer_t const n, integer_t const minp, integer_t const nbmin,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const abstol,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const reltol,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const pivmin, VectorD& d,
- VectorE& e, VectorE2& e2, VectorNVAL& nval, MatrixAB& ab, VectorC& c,
- integer_t& mout, MatrixNAB& nab ) {
+inline integer_t laebz( const integer_t ijob, const integer_t nitmax,
+ const integer_t n, const integer_t minp, const integer_t nbmin,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type abstol,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type reltol,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type pivmin, const VectorD& d,
+ const VectorE& e, const VectorE2& e2, VectorNVAL& nval, MatrixAB& ab,
+ VectorC& c, integer_t& mout, MatrixNAB& nab ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);
     laebz_impl< value_type >::invoke( ijob, nitmax, n, minp, nbmin,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/larz.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/larz.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/larz.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,28 +36,30 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void larz( char const side, integer_t const m, integer_t const n,
- integer_t const l, float* v, integer_t const incv,
- float const tau, float* c, integer_t const ldc, float* work ) {
+ inline void larz( const char side, const integer_t m, const integer_t n,
+ const integer_t l, const float* v, const integer_t incv,
+ const float tau, float* c, const integer_t ldc, float* work ) {
         LAPACK_SLARZ( &side, &m, &n, &l, v, &incv, &tau, c, &ldc, work );
     }
- inline void larz( char const side, integer_t const m, integer_t const n,
- integer_t const l, double* v, integer_t const incv,
- double const tau, double* c, integer_t const ldc, double* work ) {
+ inline void larz( const char side, const integer_t m, const integer_t n,
+ const integer_t l, const double* v, const integer_t incv,
+ const double tau, double* c, const integer_t ldc, double* work ) {
         LAPACK_DLARZ( &side, &m, &n, &l, v, &incv, &tau, c, &ldc, work );
     }
- inline void larz( char const side, integer_t const m, integer_t const n,
- integer_t const l, traits::complex_f* v, integer_t const incv,
- traits::complex_f const tau, traits::complex_f* c,
- integer_t const ldc, traits::complex_f* work ) {
+ inline void larz( const char side, const integer_t m, const integer_t n,
+ const integer_t l, const traits::complex_f* v,
+ const integer_t incv, const traits::complex_f tau,
+ traits::complex_f* c, const integer_t ldc,
+ traits::complex_f* work ) {
         LAPACK_CLARZ( &side, &m, &n, &l, traits::complex_ptr(v), &incv,
                 traits::complex_ptr(&tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work) );
     }
- inline void larz( char const side, integer_t const m, integer_t const n,
- integer_t const l, traits::complex_d* v, integer_t const incv,
- traits::complex_d const tau, traits::complex_d* c,
- integer_t const ldc, traits::complex_d* work ) {
+ inline void larz( const char side, const integer_t m, const integer_t n,
+ const integer_t l, const traits::complex_d* v,
+ const integer_t incv, const traits::complex_d tau,
+ traits::complex_d* c, const integer_t ldc,
+ traits::complex_d* work ) {
         LAPACK_ZLARZ( &side, &m, &n, &l, traits::complex_ptr(v), &incv,
                 traits::complex_ptr(&tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work) );
@@ -77,8 +79,8 @@
 
     // user-defined workspace specialization
     template< typename VectorV, typename MatrixC, typename WORK >
- static void invoke( char const side, integer_t const l, VectorV& v,
- integer_t const incv, real_type const tau, MatrixC& c,
+ static void invoke( const char side, const integer_t l, const VectorV& v,
+ const integer_t incv, const real_type tau, MatrixC& c,
             detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorV >::value_type, typename traits::matrix_traits<
@@ -98,8 +100,8 @@
 
     // minimal workspace specialization
     template< typename VectorV, typename MatrixC >
- static void invoke( char const side, integer_t const l, VectorV& v,
- integer_t const incv, real_type const tau, MatrixC& c,
+ static void invoke( const char side, const integer_t l, const VectorV& v,
+ const integer_t incv, const real_type tau, MatrixC& c,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
@@ -108,14 +110,14 @@
 
     // optimal workspace specialization
     template< typename VectorV, typename MatrixC >
- static void invoke( char const side, integer_t const l, VectorV& v,
- integer_t const incv, real_type const tau, MatrixC& c,
+ static void invoke( const char side, const integer_t l, const VectorV& v,
+ const integer_t incv, const real_type tau, MatrixC& c,
             optimal_workspace work ) {
         invoke( side, l, v, incv, tau, c, minimal_workspace() );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return n;
         else
@@ -132,8 +134,8 @@
 
     // user-defined workspace specialization
     template< typename VectorV, typename MatrixC, typename WORK >
- static void invoke( char const side, integer_t const l, VectorV& v,
- integer_t const incv, value_type const tau, MatrixC& c,
+ static void invoke( const char side, const integer_t l, const VectorV& v,
+ const integer_t incv, const value_type tau, MatrixC& c,
             detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorV >::value_type, typename traits::matrix_traits<
@@ -153,8 +155,8 @@
 
     // minimal workspace specialization
     template< typename VectorV, typename MatrixC >
- static void invoke( char const side, integer_t const l, VectorV& v,
- integer_t const incv, value_type const tau, MatrixC& c,
+ static void invoke( const char side, const integer_t l, const VectorV& v,
+ const integer_t incv, const value_type tau, MatrixC& c,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
@@ -163,14 +165,14 @@
 
     // optimal workspace specialization
     template< typename VectorV, typename MatrixC >
- static void invoke( char const side, integer_t const l, VectorV& v,
- integer_t const incv, value_type const tau, MatrixC& c,
+ static void invoke( const char side, const integer_t l, const VectorV& v,
+ const integer_t incv, const value_type tau, MatrixC& c,
             optimal_workspace work ) {
         invoke( side, l, v, incv, tau, c, minimal_workspace() );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return n;
         else
@@ -181,11 +183,10 @@
 
 // template function to call larz
 template< typename VectorV, typename MatrixC, typename Workspace >
-inline integer_t larz( char const side, integer_t const l, VectorV& v,
- integer_t const incv, typename traits::type_traits<
- typename traits::vector_traits<
- VectorV >::value_type >::real_type const tau, MatrixC& c,
- Workspace work ) {
+inline integer_t larz( const char side, const integer_t l,
+ const VectorV& v, const integer_t incv,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorV >::value_type >::real_type tau, MatrixC& c, Workspace work ) {
     typedef typename traits::vector_traits< VectorV >::value_type value_type;
     integer_t info(0);
     larz_impl< value_type >::invoke( side, l, v, incv, tau, c, work );
@@ -194,10 +195,10 @@
 
 // template function to call larz, default workspace type
 template< typename VectorV, typename MatrixC >
-inline integer_t larz( char const side, integer_t const l, VectorV& v,
- integer_t const incv, typename traits::type_traits<
- typename traits::vector_traits<
- VectorV >::value_type >::real_type const tau, MatrixC& c ) {
+inline integer_t larz( const char side, const integer_t l,
+ const VectorV& v, const integer_t incv,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorV >::value_type >::real_type tau, MatrixC& c ) {
     typedef typename traits::vector_traits< VectorV >::value_type value_type;
     integer_t info(0);
     larz_impl< value_type >::invoke( side, l, v, incv, tau, c,
@@ -206,9 +207,10 @@
 }
 // template function to call larz
 template< typename VectorV, typename MatrixC, typename Workspace >
-inline integer_t larz( char const side, integer_t const l, VectorV& v,
- integer_t const incv, typename traits::vector_traits<
- VectorV >::value_type const tau, MatrixC& c, Workspace work ) {
+inline integer_t larz( const char side, const integer_t l,
+ const VectorV& v, const integer_t incv,
+ const typename traits::vector_traits< VectorV >::value_type tau,
+ MatrixC& c, Workspace work ) {
     typedef typename traits::vector_traits< VectorV >::value_type value_type;
     integer_t info(0);
     larz_impl< value_type >::invoke( side, l, v, incv, tau, c, work );
@@ -217,9 +219,10 @@
 
 // template function to call larz, default workspace type
 template< typename VectorV, typename MatrixC >
-inline integer_t larz( char const side, integer_t const l, VectorV& v,
- integer_t const incv, typename traits::vector_traits<
- VectorV >::value_type const tau, MatrixC& c ) {
+inline integer_t larz( const char side, const integer_t l,
+ const VectorV& v, const integer_t incv,
+ const typename traits::vector_traits< VectorV >::value_type tau,
+ MatrixC& c ) {
     typedef typename traits::vector_traits< VectorV >::value_type value_type;
     integer_t info(0);
     larz_impl< value_type >::invoke( side, l, v, incv, tau, c,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,27 +34,27 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void latrd( char const uplo, integer_t const n, integer_t const nb,
- float* a, integer_t const lda, float* e, float* tau, float* w,
- integer_t const ldw ) {
+ inline void latrd( const char uplo, const integer_t n, const integer_t nb,
+ float* a, const integer_t lda, float* e, float* tau, float* w,
+ const integer_t ldw ) {
         LAPACK_SLATRD( &uplo, &n, &nb, a, &lda, e, tau, w, &ldw );
     }
- inline void latrd( char const uplo, integer_t const n, integer_t const nb,
- double* a, integer_t const lda, double* e, double* tau, double* w,
- integer_t const ldw ) {
+ inline void latrd( const char uplo, const integer_t n, const integer_t nb,
+ double* a, const integer_t lda, double* e, double* tau, double* w,
+ const integer_t ldw ) {
         LAPACK_DLATRD( &uplo, &n, &nb, a, &lda, e, tau, w, &ldw );
     }
- inline void latrd( char const uplo, integer_t const n, integer_t const nb,
- traits::complex_f* a, integer_t const lda, float* e,
+ inline void latrd( const char uplo, const integer_t n, const integer_t nb,
+ traits::complex_f* a, const integer_t lda, float* e,
             traits::complex_f* tau, traits::complex_f* w,
- integer_t const ldw ) {
+ const integer_t ldw ) {
         LAPACK_CLATRD( &uplo, &n, &nb, traits::complex_ptr(a), &lda, e,
                 traits::complex_ptr(tau), traits::complex_ptr(w), &ldw );
     }
- inline void latrd( char const uplo, integer_t const n, integer_t const nb,
- traits::complex_d* a, integer_t const lda, double* e,
+ inline void latrd( const char uplo, const integer_t n, const integer_t nb,
+ traits::complex_d* a, const integer_t lda, double* e,
             traits::complex_d* tau, traits::complex_d* w,
- integer_t const ldw ) {
+ const integer_t ldw ) {
         LAPACK_ZLATRD( &uplo, &n, &nb, traits::complex_ptr(a), &lda, e,
                 traits::complex_ptr(tau), traits::complex_ptr(w), &ldw );
     }
@@ -74,7 +74,7 @@
     // templated specialization
     template< typename MatrixA, typename VectorE, typename VectorTAU,
             typename MatrixW >
- static void invoke( integer_t const nb, MatrixA& a, VectorE& e,
+ static void invoke( const integer_t nb, MatrixA& a, VectorE& e,
             VectorTAU& tau, MatrixW& w ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
@@ -108,7 +108,7 @@
     // templated specialization
     template< typename MatrixA, typename VectorE, typename VectorTAU,
             typename MatrixW >
- static void invoke( integer_t const nb, MatrixA& a, VectorE& e,
+ static void invoke( const integer_t nb, MatrixA& a, VectorE& e,
             VectorTAU& tau, MatrixW& w ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
@@ -134,7 +134,7 @@
 // template function to call latrd
 template< typename MatrixA, typename VectorE, typename VectorTAU,
         typename MatrixW >
-inline integer_t latrd( integer_t const nb, MatrixA& a, VectorE& e,
+inline integer_t latrd( const integer_t nb, MatrixA& a, VectorE& e,
         VectorTAU& tau, MatrixW& w ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,31 +34,31 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void latrs( char const uplo, char const trans, char const diag,
- char const normin, integer_t const n, float* a,
- integer_t const lda, float* x, float& scale, float* cnorm,
+ inline void latrs( const char uplo, const char trans, const char diag,
+ const char normin, const integer_t n, const float* a,
+ const integer_t lda, float* x, float& scale, float* cnorm,
             integer_t& info ) {
         LAPACK_SLATRS( &uplo, &trans, &diag, &normin, &n, a, &lda, x, &scale,
                 cnorm, &info );
     }
- inline void latrs( char const uplo, char const trans, char const diag,
- char const normin, integer_t const n, double* a,
- integer_t const lda, double* x, double& scale, double* cnorm,
+ inline void latrs( const char uplo, const char trans, const char diag,
+ const char normin, const integer_t n, const double* a,
+ const integer_t lda, double* x, double& scale, double* cnorm,
             integer_t& info ) {
         LAPACK_DLATRS( &uplo, &trans, &diag, &normin, &n, a, &lda, x, &scale,
                 cnorm, &info );
     }
- inline void latrs( char const uplo, char const trans, char const diag,
- char const normin, integer_t const n, traits::complex_f* a,
- integer_t const lda, traits::complex_f* x, float& scale,
+ inline void latrs( const char uplo, const char trans, const char diag,
+ const char normin, const integer_t n, const traits::complex_f* a,
+ const integer_t lda, traits::complex_f* x, float& scale,
             float* cnorm, integer_t& info ) {
         LAPACK_CLATRS( &uplo, &trans, &diag, &normin, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(x), &scale,
                 cnorm, &info );
     }
- inline void latrs( char const uplo, char const trans, char const diag,
- char const normin, integer_t const n, traits::complex_d* a,
- integer_t const lda, traits::complex_d* x, double& scale,
+ inline void latrs( const char uplo, const char trans, const char diag,
+ const char normin, const integer_t n, const traits::complex_d* a,
+ const integer_t lda, traits::complex_d* x, double& scale,
             double* cnorm, integer_t& info ) {
         LAPACK_ZLATRS( &uplo, &trans, &diag, &normin, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(x), &scale,
@@ -79,8 +79,8 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX, typename VectorCNORM >
- static void invoke( char const uplo, char const trans, char const diag,
- char const normin, MatrixA& a, VectorX& x, real_type& scale,
+ static void invoke( const char uplo, const char trans, const char diag,
+ const char normin, const MatrixA& a, VectorX& x, real_type& scale,
             VectorCNORM& cnorm, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
@@ -112,8 +112,8 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorX, typename VectorCNORM >
- static void invoke( char const uplo, char const trans, char const diag,
- char const normin, MatrixA& a, VectorX& x, real_type& scale,
+ static void invoke( const char uplo, const char trans, const char diag,
+ const char normin, const MatrixA& a, VectorX& x, real_type& scale,
             VectorCNORM& cnorm, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
@@ -136,8 +136,8 @@
 
 // template function to call latrs
 template< typename MatrixA, typename VectorX, typename VectorCNORM >
-inline integer_t latrs( char const uplo, char const trans,
- char const diag, char const normin, MatrixA& a, VectorX& x,
+inline integer_t latrs( const char uplo, const char trans,
+ const char diag, const char normin, const MatrixA& a, VectorX& x,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& scale, VectorCNORM& cnorm ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrz.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrz.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/latrz.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,24 +36,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void latrz( integer_t const m, integer_t const n,
- integer_t const l, float* a, integer_t const lda, float* tau,
+ inline void latrz( const integer_t m, const integer_t n,
+ const integer_t l, float* a, const integer_t lda, float* tau,
             float* work ) {
         LAPACK_SLATRZ( &m, &n, &l, a, &lda, tau, work );
     }
- inline void latrz( integer_t const m, integer_t const n,
- integer_t const l, double* a, integer_t const lda, double* tau,
+ inline void latrz( const integer_t m, const integer_t n,
+ const integer_t l, double* a, const integer_t lda, double* tau,
             double* work ) {
         LAPACK_DLATRZ( &m, &n, &l, a, &lda, tau, work );
     }
- inline void latrz( integer_t const m, integer_t const n,
- integer_t const l, traits::complex_f* a, integer_t const lda,
+ inline void latrz( const integer_t m, const integer_t n,
+ const integer_t l, traits::complex_f* a, const integer_t lda,
             traits::complex_f* tau, traits::complex_f* work ) {
         LAPACK_CLATRZ( &m, &n, &l, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work) );
     }
- inline void latrz( integer_t const m, integer_t const n,
- integer_t const l, traits::complex_d* a, integer_t const lda,
+ inline void latrz( const integer_t m, const integer_t n,
+ const integer_t l, traits::complex_d* a, const integer_t lda,
             traits::complex_d* tau, traits::complex_d* work ) {
         LAPACK_ZLATRZ( &m, &n, &l, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work) );
@@ -107,7 +107,7 @@
         invoke( a, tau, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const m ) {
+ static integer_t min_size_work( const integer_t m ) {
         return m;
     }
 };
@@ -155,7 +155,7 @@
         invoke( a, tau, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const m ) {
+ static integer_t min_size_work( const integer_t m ) {
         return m;
     }
 };

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/opgtr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/opgtr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/opgtr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,13 +33,13 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void opgtr( char const uplo, integer_t const n, float* ap,
- float* tau, float* q, integer_t const ldq, float* work,
+ inline void opgtr( const char uplo, const integer_t n, const float* ap,
+ const float* tau, float* q, const integer_t ldq, float* work,
             integer_t& info ) {
         LAPACK_SOPGTR( &uplo, &n, ap, tau, q, &ldq, work, &info );
     }
- inline void opgtr( char const uplo, integer_t const n, double* ap,
- double* tau, double* q, integer_t const ldq, double* work,
+ inline void opgtr( const char uplo, const integer_t n, const double* ap,
+ const double* tau, double* q, const integer_t ldq, double* work,
             integer_t& info ) {
         LAPACK_DOPGTR( &uplo, &n, ap, tau, q, &ldq, work, &info );
     }
@@ -55,8 +55,9 @@
     // user-defined workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixQ,
             typename WORK >
- static void invoke( char const uplo, VectorAP& ap, VectorTAU& tau,
- MatrixQ& q, integer_t& info, detail::workspace1< WORK > work ) {
+ static void invoke( const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixQ& q, integer_t& info,
+ detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorAP >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -82,8 +83,9 @@
 
     // minimal workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixQ >
- static void invoke( char const uplo, VectorAP& ap, VectorTAU& tau,
- MatrixQ& q, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixQ& q, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(q) ) );
         invoke( uplo, ap, tau, q, info, workspace( tmp_work ) );
@@ -91,12 +93,13 @@
 
     // optimal workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixQ >
- static void invoke( char const uplo, VectorAP& ap, VectorTAU& tau,
- MatrixQ& q, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixQ& q, integer_t& info,
+ optimal_workspace work ) {
         invoke( uplo, ap, tau, q, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n-1;
     }
 };
@@ -105,8 +108,8 @@
 // template function to call opgtr
 template< typename VectorAP, typename VectorTAU, typename MatrixQ,
         typename Workspace >
-inline integer_t opgtr( char const uplo, VectorAP& ap, VectorTAU& tau,
- MatrixQ& q, Workspace work ) {
+inline integer_t opgtr( const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixQ& q, Workspace work ) {
     typedef typename traits::vector_traits< VectorAP >::value_type value_type;
     integer_t info(0);
     opgtr_impl< value_type >::invoke( uplo, ap, tau, q, info, work );
@@ -115,8 +118,8 @@
 
 // template function to call opgtr, default workspace type
 template< typename VectorAP, typename VectorTAU, typename MatrixQ >
-inline integer_t opgtr( char const uplo, VectorAP& ap, VectorTAU& tau,
- MatrixQ& q ) {
+inline integer_t opgtr( const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixQ& q ) {
     typedef typename traits::vector_traits< VectorAP >::value_type value_type;
     integer_t info(0);
     opgtr_impl< value_type >::invoke( uplo, ap, tau, q, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/opmtr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/opmtr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/opmtr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,15 +33,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void opmtr( char const side, char const uplo, char const trans,
- integer_t const m, integer_t const n, float* ap, float* tau,
- float* c, integer_t const ldc, float* work, integer_t& info ) {
+ inline void opmtr( const char side, const char uplo, const char trans,
+ const integer_t m, const integer_t n, const float* ap,
+ const float* tau, float* c, const integer_t ldc, float* work,
+ integer_t& info ) {
         LAPACK_SOPMTR( &side, &uplo, &trans, &m, &n, ap, tau, c, &ldc, work,
                 &info );
     }
- inline void opmtr( char const side, char const uplo, char const trans,
- integer_t const m, integer_t const n, double* ap, double* tau,
- double* c, integer_t const ldc, double* work, integer_t& info ) {
+ inline void opmtr( const char side, const char uplo, const char trans,
+ const integer_t m, const integer_t n, const double* ap,
+ const double* tau, double* c, const integer_t ldc, double* work,
+ integer_t& info ) {
         LAPACK_DOPMTR( &side, &uplo, &trans, &m, &n, ap, tau, c, &ldc, work,
                 &info );
     }
@@ -57,9 +59,9 @@
     // user-defined workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const uplo, char const trans,
- VectorAP& ap, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char uplo, const char trans,
+ const VectorAP& ap, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorAP >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -85,9 +87,9 @@
 
     // minimal workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const uplo, char const trans,
- VectorAP& ap, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char uplo, const char trans,
+ const VectorAP& ap, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
         invoke( side, uplo, trans, ap, tau, c, info, workspace( tmp_work ) );
@@ -95,14 +97,14 @@
 
     // optimal workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const uplo, char const trans,
- VectorAP& ap, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char uplo, const char trans,
+ const VectorAP& ap, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         invoke( side, uplo, trans, ap, tau, c, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return n;
         else
@@ -114,9 +116,9 @@
 // template function to call opmtr
 template< typename VectorAP, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t opmtr( char const side, char const uplo,
- char const trans, VectorAP& ap, VectorTAU& tau, MatrixC& c,
- Workspace work ) {
+inline integer_t opmtr( const char side, const char uplo,
+ const char trans, const VectorAP& ap, const VectorTAU& tau,
+ MatrixC& c, Workspace work ) {
     typedef typename traits::vector_traits< VectorAP >::value_type value_type;
     integer_t info(0);
     opmtr_impl< value_type >::invoke( side, uplo, trans, ap, tau, c,
@@ -126,8 +128,9 @@
 
 // template function to call opmtr, default workspace type
 template< typename VectorAP, typename VectorTAU, typename MatrixC >
-inline integer_t opmtr( char const side, char const uplo,
- char const trans, VectorAP& ap, VectorTAU& tau, MatrixC& c ) {
+inline integer_t opmtr( const char side, const char uplo,
+ const char trans, const VectorAP& ap, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::vector_traits< VectorAP >::value_type value_type;
     integer_t info(0);
     opmtr_impl< value_type >::invoke( side, uplo, trans, ap, tau, c,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgbr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgbr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgbr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,14 +34,16 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void orgbr( char const vect, integer_t const m, integer_t const n,
- integer_t const k, float* a, integer_t const lda, float* tau,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void orgbr( const char vect, const integer_t m, const integer_t n,
+ const integer_t k, float* a, const integer_t lda,
+ const float* tau, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORGBR( &vect, &m, &n, &k, a, &lda, tau, work, &lwork, &info );
     }
- inline void orgbr( char const vect, integer_t const m, integer_t const n,
- integer_t const k, double* a, integer_t const lda, double* tau,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void orgbr( const char vect, const integer_t m, const integer_t n,
+ const integer_t k, double* a, const integer_t lda,
+ const double* tau, double* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_DORGBR( &vect, &m, &n, &k, a, &lda, tau, work, &lwork, &info );
     }
 }
@@ -55,9 +57,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -75,18 +77,18 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( m, n ) );
         invoke( vect, m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::orgbr( vect, m, n, k, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -96,7 +98,7 @@
         invoke( vect, m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n ) {
         return std::max( 1, std::min( m, n );
     }
 };
@@ -104,9 +106,9 @@
 
 // template function to call orgbr
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t orgbr( char const vect, integer_t const m,
- integer_t const n, integer_t const k, MatrixA& a, VectorTAU& tau,
- Workspace work ) {
+inline integer_t orgbr( const char vect, const integer_t m,
+ const integer_t n, const integer_t k, MatrixA& a,
+ const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orgbr_impl< value_type >::invoke( vect, m, n, k, a, tau, info, work );
@@ -115,8 +117,9 @@
 
 // template function to call orgbr, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t orgbr( char const vect, integer_t const m,
- integer_t const n, integer_t const k, MatrixA& a, VectorTAU& tau ) {
+inline integer_t orgbr( const char vect, const integer_t m,
+ const integer_t n, const integer_t k, MatrixA& a,
+ const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orgbr_impl< value_type >::invoke( vect, m, n, k, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orghr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orghr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orghr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,14 +34,16 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void orghr( integer_t const n, integer_t const ilo,
- integer_t const ihi, float* a, integer_t const lda, float* tau,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void orghr( const integer_t n, const integer_t ilo,
+ const integer_t ihi, float* a, const integer_t lda,
+ const float* tau, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORGHR( &n, &ilo, &ihi, a, &lda, tau, work, &lwork, &info );
     }
- inline void orghr( integer_t const n, integer_t const ilo,
- integer_t const ihi, double* a, integer_t const lda, double* tau,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void orghr( const integer_t n, const integer_t ilo,
+ const integer_t ihi, double* a, const integer_t lda,
+ const double* tau, double* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_DORGHR( &n, &ilo, &ihi, a, &lda, tau, work, &lwork, &info );
     }
 }
@@ -55,9 +57,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const n, integer_t const ilo,
- integer_t const ihi, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const integer_t n, const integer_t ilo,
+ const integer_t ihi, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -74,9 +76,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const n, integer_t const ilo,
- integer_t const ihi, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const integer_t n, const integer_t ilo,
+ const integer_t ihi, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         invoke( n, ilo, ihi, a, tau, info, workspace( tmp_work ) );
@@ -84,9 +86,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const n, integer_t const ilo,
- integer_t const ihi, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const integer_t n, const integer_t ilo,
+ const integer_t ihi, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::orghr( n, ilo, ihi, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -104,8 +106,9 @@
 
 // template function to call orghr
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t orghr( integer_t const n, integer_t const ilo,
- integer_t const ihi, MatrixA& a, VectorTAU& tau, Workspace work ) {
+inline integer_t orghr( const integer_t n, const integer_t ilo,
+ const integer_t ihi, MatrixA& a, const VectorTAU& tau,
+ Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orghr_impl< value_type >::invoke( n, ilo, ihi, a, tau, info, work );
@@ -114,8 +117,8 @@
 
 // template function to call orghr, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t orghr( integer_t const n, integer_t const ilo,
- integer_t const ihi, MatrixA& a, VectorTAU& tau ) {
+inline integer_t orghr( const integer_t n, const integer_t ilo,
+ const integer_t ihi, MatrixA& a, const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orghr_impl< value_type >::invoke( n, ilo, ihi, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orglq.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orglq.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orglq.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,14 +34,16 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void orglq( integer_t const m, integer_t const n,
- integer_t const k, float* a, integer_t const lda, float* tau,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void orglq( const integer_t m, const integer_t n,
+ const integer_t k, float* a, const integer_t lda,
+ const float* tau, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORGLQ( &m, &n, &k, a, &lda, tau, work, &lwork, &info );
     }
- inline void orglq( integer_t const m, integer_t const n,
- integer_t const k, double* a, integer_t const lda, double* tau,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void orglq( const integer_t m, const integer_t n,
+ const integer_t k, double* a, const integer_t lda,
+ const double* tau, double* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_DORGLQ( &m, &n, &k, a, &lda, tau, work, &lwork, &info );
     }
 }
@@ -55,9 +57,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -76,18 +78,18 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( m ) );
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::orglq( m, n, k, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -97,7 +99,7 @@
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m ) {
+ static integer_t min_size_work( const integer_t m ) {
         return std::max( 1, m );
     }
 };
@@ -105,8 +107,8 @@
 
 // template function to call orglq
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t orglq( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, Workspace work ) {
+inline integer_t orglq( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orglq_impl< value_type >::invoke( m, n, k, a, tau, info, work );
@@ -115,8 +117,8 @@
 
 // template function to call orglq, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t orglq( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau ) {
+inline integer_t orglq( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orglq_impl< value_type >::invoke( m, n, k, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgql.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgql.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgql.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,14 +34,16 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void orgql( integer_t const m, integer_t const n,
- integer_t const k, float* a, integer_t const lda, float* tau,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void orgql( const integer_t m, const integer_t n,
+ const integer_t k, float* a, const integer_t lda,
+ const float* tau, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORGQL( &m, &n, &k, a, &lda, tau, work, &lwork, &info );
     }
- inline void orgql( integer_t const m, integer_t const n,
- integer_t const k, double* a, integer_t const lda, double* tau,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void orgql( const integer_t m, const integer_t n,
+ const integer_t k, double* a, const integer_t lda,
+ const double* tau, double* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_DORGQL( &m, &n, &k, a, &lda, tau, work, &lwork, &info );
     }
 }
@@ -55,9 +57,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -76,18 +78,18 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::orgql( m, n, k, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -97,7 +99,7 @@
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, n );
     }
 };
@@ -105,8 +107,8 @@
 
 // template function to call orgql
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t orgql( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, Workspace work ) {
+inline integer_t orgql( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orgql_impl< value_type >::invoke( m, n, k, a, tau, info, work );
@@ -115,8 +117,8 @@
 
 // template function to call orgql, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t orgql( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau ) {
+inline integer_t orgql( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orgql_impl< value_type >::invoke( m, n, k, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgqr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgqr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgqr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,14 +34,16 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void orgqr( integer_t const m, integer_t const n,
- integer_t const k, float* a, integer_t const lda, float* tau,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void orgqr( const integer_t m, const integer_t n,
+ const integer_t k, float* a, const integer_t lda,
+ const float* tau, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORGQR( &m, &n, &k, a, &lda, tau, work, &lwork, &info );
     }
- inline void orgqr( integer_t const m, integer_t const n,
- integer_t const k, double* a, integer_t const lda, double* tau,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void orgqr( const integer_t m, const integer_t n,
+ const integer_t k, double* a, const integer_t lda,
+ const double* tau, double* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_DORGQR( &m, &n, &k, a, &lda, tau, work, &lwork, &info );
     }
 }
@@ -55,9 +57,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -76,18 +78,18 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::orgqr( m, n, k, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -97,7 +99,7 @@
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, n );
     }
 };
@@ -105,8 +107,8 @@
 
 // template function to call orgqr
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t orgqr( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, Workspace work ) {
+inline integer_t orgqr( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orgqr_impl< value_type >::invoke( m, n, k, a, tau, info, work );
@@ -115,8 +117,8 @@
 
 // template function to call orgqr, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t orgqr( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau ) {
+inline integer_t orgqr( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orgqr_impl< value_type >::invoke( m, n, k, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgrq.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgrq.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgrq.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,14 +34,16 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void orgrq( integer_t const m, integer_t const n,
- integer_t const k, float* a, integer_t const lda, float* tau,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void orgrq( const integer_t m, const integer_t n,
+ const integer_t k, float* a, const integer_t lda,
+ const float* tau, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORGRQ( &m, &n, &k, a, &lda, tau, work, &lwork, &info );
     }
- inline void orgrq( integer_t const m, integer_t const n,
- integer_t const k, double* a, integer_t const lda, double* tau,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void orgrq( const integer_t m, const integer_t n,
+ const integer_t k, double* a, const integer_t lda,
+ const double* tau, double* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_DORGRQ( &m, &n, &k, a, &lda, tau, work, &lwork, &info );
     }
 }
@@ -55,9 +57,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -76,18 +78,18 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( m ) );
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::orgrq( m, n, k, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -97,7 +99,7 @@
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m ) {
+ static integer_t min_size_work( const integer_t m ) {
         return std::max( 1, m );
     }
 };
@@ -105,8 +107,8 @@
 
 // template function to call orgrq
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t orgrq( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, Workspace work ) {
+inline integer_t orgrq( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orgrq_impl< value_type >::invoke( m, n, k, a, tau, info, work );
@@ -115,8 +117,8 @@
 
 // template function to call orgrq, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t orgrq( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau ) {
+inline integer_t orgrq( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orgrq_impl< value_type >::invoke( m, n, k, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgtr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgtr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/orgtr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,14 +34,14 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void orgtr( char const uplo, integer_t const n, float* a,
- integer_t const lda, float* tau, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void orgtr( const char uplo, const integer_t n, float* a,
+ const integer_t lda, const float* tau, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SORGTR( &uplo, &n, a, &lda, tau, work, &lwork, &info );
     }
- inline void orgtr( char const uplo, integer_t const n, double* a,
- integer_t const lda, double* tau, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void orgtr( const char uplo, const integer_t n, double* a,
+ const integer_t lda, const double* tau, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DORGTR( &uplo, &n, a, &lda, tau, work, &lwork, &info );
     }
 }
@@ -55,7 +55,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const n, MatrixA& a, VectorTAU& tau,
+ static void invoke( const integer_t n, MatrixA& a, const VectorTAU& tau,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
@@ -76,7 +76,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const n, MatrixA& a, VectorTAU& tau,
+ static void invoke( const integer_t n, MatrixA& a, const VectorTAU& tau,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( n, a, tau, info, workspace( tmp_work ) );
@@ -84,7 +84,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const n, MatrixA& a, VectorTAU& tau,
+ static void invoke( const integer_t n, MatrixA& a, const VectorTAU& tau,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::orgtr( traits::matrix_uplo_tag(a), n,
@@ -95,7 +95,7 @@
         invoke( n, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, n-1 );
     }
 };
@@ -103,8 +103,8 @@
 
 // template function to call orgtr
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t orgtr( integer_t const n, MatrixA& a, VectorTAU& tau,
- Workspace work ) {
+inline integer_t orgtr( const integer_t n, MatrixA& a,
+ const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orgtr_impl< value_type >::invoke( n, a, tau, info, work );
@@ -113,7 +113,8 @@
 
 // template function to call orgtr, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t orgtr( integer_t const n, MatrixA& a, VectorTAU& tau ) {
+inline integer_t orgtr( const integer_t n, MatrixA& a,
+ const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     orgtr_impl< value_type >::invoke( n, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormbr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormbr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormbr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,18 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ormbr( char const vect, char const side, char const trans,
- integer_t const m, integer_t const n, integer_t const k, float* a,
- integer_t const lda, float* tau, float* c, integer_t const ldc,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void ormbr( const char vect, const char side, const char trans,
+ const integer_t m, const integer_t n, const integer_t k,
+ const float* a, const integer_t lda, const float* tau, float* c,
+ const integer_t ldc, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORMBR( &vect, &side, &trans, &m, &n, &k, a, &lda, tau, c,
                 &ldc, work, &lwork, &info );
     }
- inline void ormbr( char const vect, char const side, char const trans,
- integer_t const m, integer_t const n, integer_t const k,
- double* a, integer_t const lda, double* tau, double* c,
- integer_t const ldc, double* work, integer_t const lwork,
- integer_t& info ) {
+ inline void ormbr( const char vect, const char side, const char trans,
+ const integer_t m, const integer_t n, const integer_t k,
+ const double* a, const integer_t lda, const double* tau,
+ double* c, const integer_t ldc, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DORMBR( &vect, &side, &trans, &m, &n, &k, a, &lda, tau, c,
                 &ldc, work, &lwork, &info );
     }
@@ -61,9 +62,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const vect, char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
- integer_t& info, detail::workspace1< WORK > work ) {
+ static void invoke( const char vect, const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c, integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -92,9 +93,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const vect, char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const char vect, const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
         invoke( vect, side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -102,9 +103,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const vect, char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const char vect, const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c, integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::ormbr( vect, side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k, traits::matrix_storage(a),
@@ -116,8 +117,8 @@
         invoke( vect, side, trans, k, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -129,9 +130,9 @@
 // template function to call ormbr
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t ormbr( char const vect, char const side,
- char const trans, integer_t const k, MatrixA& a, VectorTAU& tau,
- MatrixC& c, Workspace work ) {
+inline integer_t ormbr( const char vect, const char side,
+ const char trans, const integer_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ormbr_impl< value_type >::invoke( vect, side, trans, k, a, tau, c,
@@ -141,9 +142,9 @@
 
 // template function to call ormbr, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t ormbr( char const vect, char const side,
- char const trans, integer_t const k, MatrixA& a, VectorTAU& tau,
- MatrixC& c ) {
+inline integer_t ormbr( const char vect, const char side,
+ const char trans, const integer_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ormbr_impl< value_type >::invoke( vect, side, trans, k, a, tau, c,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormhr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormhr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormhr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,19 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ormhr( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const ilo, integer_t const ihi,
- float* a, integer_t const lda, float* tau, float* c,
- integer_t const ldc, float* work, integer_t const lwork,
+ inline void ormhr( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t ilo, const integer_t ihi,
+ const float* a, const integer_t lda, const float* tau, float* c,
+ const integer_t ldc, float* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_SORMHR( &side, &trans, &m, &n, &ilo, &ihi, a, &lda, tau, c,
                 &ldc, work, &lwork, &info );
     }
- inline void ormhr( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const ilo, integer_t const ihi,
- double* a, integer_t const lda, double* tau, double* c,
- integer_t const ldc, double* work, integer_t const lwork,
- integer_t& info ) {
+ inline void ormhr( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t ilo, const integer_t ihi,
+ const double* a, const integer_t lda, const double* tau,
+ double* c, const integer_t ldc, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DORMHR( &side, &trans, &m, &n, &ilo, &ihi, a, &lda, tau, c,
                 &ldc, work, &lwork, &info );
     }
@@ -62,10 +62,10 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans,
- integer_t const ilo, integer_t const ihi, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info, detail::workspace1<
- WORK > work ) {
+ static void invoke( const char side, const char trans,
+ const integer_t ilo, const integer_t ihi, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
+ detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -92,9 +92,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans,
- integer_t const ilo, integer_t const ihi, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info,
+ static void invoke( const char side, const char trans,
+ const integer_t ilo, const integer_t ihi, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
@@ -104,9 +104,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans,
- integer_t const ilo, integer_t const ihi, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info,
+ static void invoke( const char side, const char trans,
+ const integer_t ilo, const integer_t ihi, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
         detail::ormhr( side, trans, traits::matrix_num_rows(c),
@@ -120,8 +120,8 @@
                 workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -133,9 +133,9 @@
 // template function to call ormhr
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t ormhr( char const side, char const trans,
- integer_t const ilo, integer_t const ihi, MatrixA& a, VectorTAU& tau,
- MatrixC& c, Workspace work ) {
+inline integer_t ormhr( const char side, const char trans,
+ const integer_t ilo, const integer_t ihi, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ormhr_impl< value_type >::invoke( side, trans, ilo, ihi, a, tau, c,
@@ -145,9 +145,9 @@
 
 // template function to call ormhr, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t ormhr( char const side, char const trans,
- integer_t const ilo, integer_t const ihi, MatrixA& a, VectorTAU& tau,
- MatrixC& c ) {
+inline integer_t ormhr( const char side, const char trans,
+ const integer_t ilo, const integer_t ihi, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ormhr_impl< value_type >::invoke( side, trans, ilo, ihi, a, tau, c,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormlq.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormlq.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormlq.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,17 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ormlq( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, float* a,
- integer_t const lda, float* tau, float* c, integer_t const ldc,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void ormlq( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const float* a,
+ const integer_t lda, const float* tau, float* c,
+ const integer_t ldc, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORMLQ( &side, &trans, &m, &n, &k, a, &lda, tau, c, &ldc, work,
                 &lwork, &info );
     }
- inline void ormlq( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, double* a,
- integer_t const lda, double* tau, double* c, integer_t const ldc,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void ormlq( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const double* a,
+ const integer_t lda, const double* tau, double* c,
+ const integer_t ldc, double* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_DORMLQ( &side, &trans, &m, &n, &k, a, &lda, tau, c, &ldc, work,
                 &lwork, &info );
     }
@@ -60,9 +62,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -90,9 +92,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -100,9 +102,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::ormlq( side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k, traits::matrix_storage(a),
@@ -114,8 +116,8 @@
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -127,8 +129,8 @@
 // template function to call ormlq
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t ormlq( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
+inline integer_t ormlq( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau, MatrixC& c,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -139,8 +141,9 @@
 
 // template function to call ormlq, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t ormlq( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c ) {
+inline integer_t ormlq( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ormlq_impl< value_type >::invoke( side, trans, k, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormql.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormql.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormql.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,17 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ormql( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, float* a,
- integer_t const lda, float* tau, float* c, integer_t const ldc,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void ormql( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const float* a,
+ const integer_t lda, const float* tau, float* c,
+ const integer_t ldc, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORMQL( &side, &trans, &m, &n, &k, a, &lda, tau, c, &ldc, work,
                 &lwork, &info );
     }
- inline void ormql( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, double* a,
- integer_t const lda, double* tau, double* c, integer_t const ldc,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void ormql( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const double* a,
+ const integer_t lda, const double* tau, double* c,
+ const integer_t ldc, double* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_DORMQL( &side, &trans, &m, &n, &k, a, &lda, tau, c, &ldc, work,
                 &lwork, &info );
     }
@@ -60,9 +62,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -89,9 +91,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -99,9 +101,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::ormql( side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k, traits::matrix_storage(a),
@@ -113,8 +115,8 @@
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -126,8 +128,8 @@
 // template function to call ormql
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t ormql( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
+inline integer_t ormql( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau, MatrixC& c,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -138,8 +140,9 @@
 
 // template function to call ormql, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t ormql( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c ) {
+inline integer_t ormql( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ormql_impl< value_type >::invoke( side, trans, k, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormqr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormqr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormqr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,17 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ormqr( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, float* a,
- integer_t const lda, float* tau, float* c, integer_t const ldc,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void ormqr( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const float* a,
+ const integer_t lda, const float* tau, float* c,
+ const integer_t ldc, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORMQR( &side, &trans, &m, &n, &k, a, &lda, tau, c, &ldc, work,
                 &lwork, &info );
     }
- inline void ormqr( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, double* a,
- integer_t const lda, double* tau, double* c, integer_t const ldc,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void ormqr( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const double* a,
+ const integer_t lda, const double* tau, double* c,
+ const integer_t ldc, double* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_DORMQR( &side, &trans, &m, &n, &k, a, &lda, tau, c, &ldc, work,
                 &lwork, &info );
     }
@@ -60,9 +62,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -89,9 +91,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -99,9 +101,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::ormqr( side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k, traits::matrix_storage(a),
@@ -113,8 +115,8 @@
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -126,8 +128,8 @@
 // template function to call ormqr
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t ormqr( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
+inline integer_t ormqr( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau, MatrixC& c,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -138,8 +140,9 @@
 
 // template function to call ormqr, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t ormqr( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c ) {
+inline integer_t ormqr( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ormqr_impl< value_type >::invoke( side, trans, k, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormrq.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormrq.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormrq.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,17 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ormrq( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, float* a,
- integer_t const lda, float* tau, float* c, integer_t const ldc,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void ormrq( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const float* a,
+ const integer_t lda, const float* tau, float* c,
+ const integer_t ldc, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORMRQ( &side, &trans, &m, &n, &k, a, &lda, tau, c, &ldc, work,
                 &lwork, &info );
     }
- inline void ormrq( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, double* a,
- integer_t const lda, double* tau, double* c, integer_t const ldc,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void ormrq( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const double* a,
+ const integer_t lda, const double* tau, double* c,
+ const integer_t ldc, double* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_DORMRQ( &side, &trans, &m, &n, &k, a, &lda, tau, c, &ldc, work,
                 &lwork, &info );
     }
@@ -60,9 +62,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -90,9 +92,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -100,9 +102,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::ormrq( side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k, traits::matrix_storage(a),
@@ -114,8 +116,8 @@
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -127,8 +129,8 @@
 // template function to call ormrq
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t ormrq( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
+inline integer_t ormrq( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau, MatrixC& c,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -139,8 +141,9 @@
 
 // template function to call ormrq, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t ormrq( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c ) {
+inline integer_t ormrq( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ormrq_impl< value_type >::invoke( side, trans, k, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormrz.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormrz.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormrz.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,18 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ormrz( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, integer_t const l, float* a,
- integer_t const lda, float* tau, float* c, integer_t const ldc,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void ormrz( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const integer_t l,
+ const float* a, const integer_t lda, const float* tau, float* c,
+ const integer_t ldc, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORMRZ( &side, &trans, &m, &n, &k, &l, a, &lda, tau, c, &ldc,
                 work, &lwork, &info );
     }
- inline void ormrz( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, integer_t const l,
- double* a, integer_t const lda, double* tau, double* c,
- integer_t const ldc, double* work, integer_t const lwork,
- integer_t& info ) {
+ inline void ormrz( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const integer_t l,
+ const double* a, const integer_t lda, const double* tau,
+ double* c, const integer_t ldc, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DORMRZ( &side, &trans, &m, &n, &k, &l, a, &lda, tau, c, &ldc,
                 work, &lwork, &info );
     }
@@ -61,9 +62,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -91,9 +92,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -101,9 +102,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::ormrz( side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k,
@@ -125,8 +126,8 @@
 // template function to call ormrz
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t ormrz( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
+inline integer_t ormrz( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau, MatrixC& c,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -137,8 +138,9 @@
 
 // template function to call ormrz, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t ormrz( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c ) {
+inline integer_t ormrz( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ormrz_impl< value_type >::invoke( side, trans, k, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormtr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormtr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ormtr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,17 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ormtr( char const side, char const uplo, char const trans,
- integer_t const m, integer_t const n, float* a,
- integer_t const lda, float* tau, float* c, integer_t const ldc,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void ormtr( const char side, const char uplo, const char trans,
+ const integer_t m, const integer_t n, const float* a,
+ const integer_t lda, const float* tau, float* c,
+ const integer_t ldc, float* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_SORMTR( &side, &uplo, &trans, &m, &n, a, &lda, tau, c, &ldc,
                 work, &lwork, &info );
     }
- inline void ormtr( char const side, char const uplo, char const trans,
- integer_t const m, integer_t const n, double* a,
- integer_t const lda, double* tau, double* c, integer_t const ldc,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void ormtr( const char side, const char uplo, const char trans,
+ const integer_t m, const integer_t n, const double* a,
+ const integer_t lda, const double* tau, double* c,
+ const integer_t ldc, double* work, const integer_t lwork,
+ integer_t& info ) {
         LAPACK_DORMTR( &side, &uplo, &trans, &m, &n, a, &lda, tau, c, &ldc,
                 work, &lwork, &info );
     }
@@ -60,9 +62,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info, detail::workspace1<
- WORK > work ) {
+ static void invoke( const char side, const char trans, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
+ detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -91,8 +93,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info,
+ static void invoke( const char side, const char trans, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
@@ -101,8 +103,8 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info,
+ static void invoke( const char side, const char trans, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
         detail::ormtr( side, traits::matrix_uplo_tag(a), trans,
@@ -115,8 +117,8 @@
         invoke( side, trans, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -128,8 +130,8 @@
 // template function to call ormtr
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t ormtr( char const side, char const trans, MatrixA& a,
- VectorTAU& tau, MatrixC& c, Workspace work ) {
+inline integer_t ormtr( const char side, const char trans,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ormtr_impl< value_type >::invoke( side, trans, a, tau, c, info,
@@ -139,8 +141,8 @@
 
 // template function to call ormtr, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t ormtr( char const side, char const trans, MatrixA& a,
- VectorTAU& tau, MatrixC& c ) {
+inline integer_t ormtr( const char side, const char trans,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ormtr_impl< value_type >::invoke( side, trans, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbcon.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbcon.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbcon.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,29 +36,29 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pbcon( char const uplo, integer_t const n, integer_t const kd,
- float* ab, integer_t const ldab, float const anorm, float& rcond,
- float* work, integer_t* iwork, integer_t& info ) {
+ inline void pbcon( const char uplo, const integer_t n, const integer_t kd,
+ const float* ab, const integer_t ldab, const float anorm,
+ float& rcond, float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SPBCON( &uplo, &n, &kd, ab, &ldab, &anorm, &rcond, work, iwork,
                 &info );
     }
- inline void pbcon( char const uplo, integer_t const n, integer_t const kd,
- double* ab, integer_t const ldab, double const anorm,
+ inline void pbcon( const char uplo, const integer_t n, const integer_t kd,
+ const double* ab, const integer_t ldab, const double anorm,
             double& rcond, double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DPBCON( &uplo, &n, &kd, ab, &ldab, &anorm, &rcond, work, iwork,
                 &info );
     }
- inline void pbcon( char const uplo, integer_t const n, integer_t const kd,
- traits::complex_f* ab, integer_t const ldab, float const anorm,
- float& rcond, traits::complex_f* work, float* rwork,
- integer_t& info ) {
+ inline void pbcon( const char uplo, const integer_t n, const integer_t kd,
+ const traits::complex_f* ab, const integer_t ldab,
+ const float anorm, float& rcond, traits::complex_f* work,
+ float* rwork, integer_t& info ) {
         LAPACK_CPBCON( &uplo, &n, &kd, traits::complex_ptr(ab), &ldab, &anorm,
                 &rcond, traits::complex_ptr(work), rwork, &info );
     }
- inline void pbcon( char const uplo, integer_t const n, integer_t const kd,
- traits::complex_d* ab, integer_t const ldab, double const anorm,
- double& rcond, traits::complex_d* work, double* rwork,
- integer_t& info ) {
+ inline void pbcon( const char uplo, const integer_t n, const integer_t kd,
+ const traits::complex_d* ab, const integer_t ldab,
+ const double anorm, double& rcond, traits::complex_d* work,
+ double* rwork, integer_t& info ) {
         LAPACK_ZPBCON( &uplo, &n, &kd, traits::complex_ptr(ab), &ldab, &anorm,
                 &rcond, traits::complex_ptr(work), rwork, &info );
     }
@@ -77,8 +77,8 @@
 
     // user-defined workspace specialization
     template< typename MatrixAB, typename WORK, typename IWORK >
- static void invoke( char const uplo, integer_t const n,
- integer_t const kd, MatrixAB& ab, real_type const anorm,
+ static void invoke( const char uplo, const integer_t n,
+ const integer_t kd, const MatrixAB& ab, const real_type anorm,
             real_type& rcond, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
         BOOST_ASSERT( uplo == 'U' || uplo == 'L' );
@@ -97,8 +97,8 @@
 
     // minimal workspace specialization
     template< typename MatrixAB >
- static void invoke( char const uplo, integer_t const n,
- integer_t const kd, MatrixAB& ab, real_type const anorm,
+ static void invoke( const char uplo, const integer_t n,
+ const integer_t kd, const MatrixAB& ab, const real_type anorm,
             real_type& rcond, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
@@ -108,17 +108,17 @@
 
     // optimal workspace specialization
     template< typename MatrixAB >
- static void invoke( char const uplo, integer_t const n,
- integer_t const kd, MatrixAB& ab, real_type const anorm,
+ static void invoke( const char uplo, const integer_t n,
+ const integer_t kd, const MatrixAB& ab, const real_type anorm,
             real_type& rcond, integer_t& info, optimal_workspace work ) {
         invoke( uplo, n, kd, ab, anorm, rcond, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -132,8 +132,8 @@
 
     // user-defined workspace specialization
     template< typename MatrixAB, typename WORK, typename RWORK >
- static void invoke( char const uplo, integer_t const n,
- integer_t const kd, MatrixAB& ab, real_type const anorm,
+ static void invoke( const char uplo, const integer_t n,
+ const integer_t kd, const MatrixAB& ab, const real_type anorm,
             real_type& rcond, integer_t& info, detail::workspace2< WORK,
             RWORK > work ) {
         BOOST_ASSERT( uplo == 'U' || uplo == 'L' );
@@ -152,8 +152,8 @@
 
     // minimal workspace specialization
     template< typename MatrixAB >
- static void invoke( char const uplo, integer_t const n,
- integer_t const kd, MatrixAB& ab, real_type const anorm,
+ static void invoke( const char uplo, const integer_t n,
+ const integer_t kd, const MatrixAB& ab, const real_type anorm,
             real_type& rcond, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -163,17 +163,17 @@
 
     // optimal workspace specialization
     template< typename MatrixAB >
- static void invoke( char const uplo, integer_t const n,
- integer_t const kd, MatrixAB& ab, real_type const anorm,
+ static void invoke( const char uplo, const integer_t n,
+ const integer_t kd, const MatrixAB& ab, const real_type anorm,
             real_type& rcond, integer_t& info, optimal_workspace work ) {
         invoke( uplo, n, kd, ab, anorm, rcond, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -181,10 +181,10 @@
 
 // template function to call pbcon
 template< typename MatrixAB, typename Workspace >
-inline integer_t pbcon( char const uplo, integer_t const n,
- integer_t const kd, MatrixAB& ab, typename traits::type_traits<
- typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const anorm,
+inline integer_t pbcon( const char uplo, const integer_t n,
+ const integer_t kd, const MatrixAB& ab,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixAB >::value_type >::real_type& rcond, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
@@ -196,10 +196,10 @@
 
 // template function to call pbcon, default workspace type
 template< typename MatrixAB >
-inline integer_t pbcon( char const uplo, integer_t const n,
- integer_t const kd, MatrixAB& ab, typename traits::type_traits<
- typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const anorm,
+inline integer_t pbcon( const char uplo, const integer_t n,
+ const integer_t kd, const MatrixAB& ab,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixAB >::value_type >::real_type& rcond ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbequ.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbequ.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbequ.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,24 +34,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pbequ( char const uplo, integer_t const n, integer_t const kd,
- float* ab, integer_t const ldab, float* s, float& scond,
+ inline void pbequ( const char uplo, const integer_t n, const integer_t kd,
+ const float* ab, const integer_t ldab, float* s, float& scond,
             float& amax, integer_t& info ) {
         LAPACK_SPBEQU( &uplo, &n, &kd, ab, &ldab, s, &scond, &amax, &info );
     }
- inline void pbequ( char const uplo, integer_t const n, integer_t const kd,
- double* ab, integer_t const ldab, double* s, double& scond,
+ inline void pbequ( const char uplo, const integer_t n, const integer_t kd,
+ const double* ab, const integer_t ldab, double* s, double& scond,
             double& amax, integer_t& info ) {
         LAPACK_DPBEQU( &uplo, &n, &kd, ab, &ldab, s, &scond, &amax, &info );
     }
- inline void pbequ( char const uplo, integer_t const n, integer_t const kd,
- traits::complex_f* ab, integer_t const ldab, float* s,
+ inline void pbequ( const char uplo, const integer_t n, const integer_t kd,
+ const traits::complex_f* ab, const integer_t ldab, float* s,
             float& scond, float& amax, integer_t& info ) {
         LAPACK_CPBEQU( &uplo, &n, &kd, traits::complex_ptr(ab), &ldab, s,
                 &scond, &amax, &info );
     }
- inline void pbequ( char const uplo, integer_t const n, integer_t const kd,
- traits::complex_d* ab, integer_t const ldab, double* s,
+ inline void pbequ( const char uplo, const integer_t n, const integer_t kd,
+ const traits::complex_d* ab, const integer_t ldab, double* s,
             double& scond, double& amax, integer_t& info ) {
         LAPACK_ZPBEQU( &uplo, &n, &kd, traits::complex_ptr(ab), &ldab, s,
                 &scond, &amax, &info );
@@ -71,8 +71,9 @@
 
     // templated specialization
     template< typename MatrixAB, typename VectorS >
- static void invoke( integer_t const n, integer_t const kd, MatrixAB& ab,
- VectorS& s, real_type& scond, real_type& amax, integer_t& info ) {
+ static void invoke( const integer_t n, const integer_t kd,
+ const MatrixAB& ab, VectorS& s, real_type& scond, real_type& amax,
+ integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::vector_traits<
                 VectorS >::value_type >::value) );
@@ -96,8 +97,9 @@
 
     // templated specialization
     template< typename MatrixAB, typename VectorS >
- static void invoke( integer_t const n, integer_t const kd, MatrixAB& ab,
- VectorS& s, real_type& scond, real_type& amax, integer_t& info ) {
+ static void invoke( const integer_t n, const integer_t kd,
+ const MatrixAB& ab, VectorS& s, real_type& scond, real_type& amax,
+ integer_t& info ) {
         BOOST_ASSERT( traits::matrix_uplo_tag(a) == 'U' ||
                 traits::matrix_uplo_tag(a) == 'L' );
         BOOST_ASSERT( n >= 0 );
@@ -112,8 +114,8 @@
 
 // template function to call pbequ
 template< typename MatrixAB, typename VectorS >
-inline integer_t pbequ( integer_t const n, integer_t const kd,
- MatrixAB& ab, VectorS& s, typename traits::type_traits<
+inline integer_t pbequ( const integer_t n, const integer_t kd,
+ const MatrixAB& ab, VectorS& s, typename traits::type_traits<
         typename traits::matrix_traits<
         MatrixAB >::value_type >::real_type& scond,
         typename traits::type_traits< typename traits::matrix_traits<

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbrfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbrfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbrfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,39 +36,41 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pbrfs( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, float* ab, integer_t const ldab, float* afb,
- integer_t const ldafb, float* b, integer_t const ldb, float* x,
- integer_t const ldx, float* ferr, float* berr, float* work,
- integer_t* iwork, integer_t& info ) {
+ inline void pbrfs( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, const float* ab, const integer_t ldab,
+ const float* afb, const integer_t ldafb, const float* b,
+ const integer_t ldb, float* x, const integer_t ldx, float* ferr,
+ float* berr, float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SPBRFS( &uplo, &n, &kd, &nrhs, ab, &ldab, afb, &ldafb, b, &ldb,
                 x, &ldx, ferr, berr, work, iwork, &info );
     }
- inline void pbrfs( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, double* ab, integer_t const ldab,
- double* afb, integer_t const ldafb, double* b,
- integer_t const ldb, double* x, integer_t const ldx, double* ferr,
+ inline void pbrfs( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, const double* ab, const integer_t ldab,
+ const double* afb, const integer_t ldafb, const double* b,
+ const integer_t ldb, double* x, const integer_t ldx, double* ferr,
             double* berr, double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DPBRFS( &uplo, &n, &kd, &nrhs, ab, &ldab, afb, &ldafb, b, &ldb,
                 x, &ldx, ferr, berr, work, iwork, &info );
     }
- inline void pbrfs( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, traits::complex_f* ab, integer_t const ldab,
- traits::complex_f* afb, integer_t const ldafb,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* x,
- integer_t const ldx, float* ferr, float* berr,
- traits::complex_f* work, float* rwork, integer_t& info ) {
+ inline void pbrfs( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, const traits::complex_f* ab,
+ const integer_t ldab, const traits::complex_f* afb,
+ const integer_t ldafb, const traits::complex_f* b,
+ const integer_t ldb, traits::complex_f* x, const integer_t ldx,
+ float* ferr, float* berr, traits::complex_f* work, float* rwork,
+ integer_t& info ) {
         LAPACK_CPBRFS( &uplo, &n, &kd, &nrhs, traits::complex_ptr(ab), &ldab,
                 traits::complex_ptr(afb), &ldafb, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void pbrfs( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, traits::complex_d* ab, integer_t const ldab,
- traits::complex_d* afb, integer_t const ldafb,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, double* ferr, double* berr,
- traits::complex_d* work, double* rwork, integer_t& info ) {
+ inline void pbrfs( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, const traits::complex_d* ab,
+ const integer_t ldab, const traits::complex_d* afb,
+ const integer_t ldafb, const traits::complex_d* b,
+ const integer_t ldb, traits::complex_d* x, const integer_t ldx,
+ double* ferr, double* berr, traits::complex_d* work,
+ double* rwork, integer_t& info ) {
         LAPACK_ZPBRFS( &uplo, &n, &kd, &nrhs, traits::complex_ptr(ab), &ldab,
                 traits::complex_ptr(afb), &ldafb, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, ferr, berr,
@@ -91,10 +93,10 @@
     template< typename MatrixAB, typename MatrixAFB, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename IWORK >
- static void invoke( integer_t const n, integer_t const kd, MatrixAB& ab,
- MatrixAFB& afb, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
- IWORK > work ) {
+ static void invoke( const integer_t n, const integer_t kd,
+ const MatrixAB& ab, const MatrixAFB& afb, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
                 MatrixAFB >::value_type >::value) );
@@ -139,9 +141,10 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixAFB, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( integer_t const n, integer_t const kd, MatrixAB& ab,
- MatrixAFB& afb, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, minimal_workspace work ) {
+ static void invoke( const integer_t n, const integer_t kd,
+ const MatrixAB& ab, const MatrixAFB& afb, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
         invoke( n, kd, ab, afb, b, x, ferr, berr, info, workspace( tmp_work,
@@ -151,17 +154,18 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixAFB, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( integer_t const n, integer_t const kd, MatrixAB& ab,
- MatrixAFB& afb, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, optimal_workspace work ) {
+ static void invoke( const integer_t n, const integer_t kd,
+ const MatrixAB& ab, const MatrixAFB& afb, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( n, kd, ab, afb, b, x, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -177,10 +181,10 @@
     template< typename MatrixAB, typename MatrixAFB, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename RWORK >
- static void invoke( integer_t const n, integer_t const kd, MatrixAB& ab,
- MatrixAFB& afb, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
- RWORK > work ) {
+ static void invoke( const integer_t n, const integer_t kd,
+ const MatrixAB& ab, const MatrixAFB& afb, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -222,9 +226,10 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixAFB, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( integer_t const n, integer_t const kd, MatrixAB& ab,
- MatrixAFB& afb, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, minimal_workspace work ) {
+ static void invoke( const integer_t n, const integer_t kd,
+ const MatrixAB& ab, const MatrixAFB& afb, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
         invoke( n, kd, ab, afb, b, x, ferr, berr, info, workspace( tmp_work,
@@ -234,17 +239,18 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixAFB, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( integer_t const n, integer_t const kd, MatrixAB& ab,
- MatrixAFB& afb, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, optimal_workspace work ) {
+ static void invoke( const integer_t n, const integer_t kd,
+ const MatrixAB& ab, const MatrixAFB& afb, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( n, kd, ab, afb, b, x, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -254,9 +260,9 @@
 template< typename MatrixAB, typename MatrixAFB, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR,
         typename Workspace >
-inline integer_t pbrfs( integer_t const n, integer_t const kd,
- MatrixAB& ab, MatrixAFB& afb, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
+inline integer_t pbrfs( const integer_t n, const integer_t kd,
+ const MatrixAB& ab, const MatrixAFB& afb, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     pbrfs_impl< value_type >::invoke( n, kd, ab, afb, b, x, ferr, berr,
@@ -267,9 +273,9 @@
 // template function to call pbrfs, default workspace type
 template< typename MatrixAB, typename MatrixAFB, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR >
-inline integer_t pbrfs( integer_t const n, integer_t const kd,
- MatrixAB& ab, MatrixAFB& afb, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr ) {
+inline integer_t pbrfs( const integer_t n, const integer_t kd,
+ const MatrixAB& ab, const MatrixAFB& afb, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     pbrfs_impl< value_type >::invoke( n, kd, ab, afb, b, x, ferr, berr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbstf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbstf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbstf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,20 +31,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pbstf( char const uplo, integer_t const n, integer_t const kd,
- float* ab, integer_t const ldab, integer_t& info ) {
+ inline void pbstf( const char uplo, const integer_t n, const integer_t kd,
+ float* ab, const integer_t ldab, integer_t& info ) {
         LAPACK_SPBSTF( &uplo, &n, &kd, ab, &ldab, &info );
     }
- inline void pbstf( char const uplo, integer_t const n, integer_t const kd,
- double* ab, integer_t const ldab, integer_t& info ) {
+ inline void pbstf( const char uplo, const integer_t n, const integer_t kd,
+ double* ab, const integer_t ldab, integer_t& info ) {
         LAPACK_DPBSTF( &uplo, &n, &kd, ab, &ldab, &info );
     }
- inline void pbstf( char const uplo, integer_t const n, integer_t const kd,
- traits::complex_f* ab, integer_t const ldab, integer_t& info ) {
+ inline void pbstf( const char uplo, const integer_t n, const integer_t kd,
+ traits::complex_f* ab, const integer_t ldab, integer_t& info ) {
         LAPACK_CPBSTF( &uplo, &n, &kd, traits::complex_ptr(ab), &ldab, &info );
     }
- inline void pbstf( char const uplo, integer_t const n, integer_t const kd,
- traits::complex_d* ab, integer_t const ldab, integer_t& info ) {
+ inline void pbstf( const char uplo, const integer_t n, const integer_t kd,
+ traits::complex_d* ab, const integer_t ldab, integer_t& info ) {
         LAPACK_ZPBSTF( &uplo, &n, &kd, traits::complex_ptr(ab), &ldab, &info );
     }
 }
@@ -58,7 +58,7 @@
 
     // templated specialization
     template< typename MatrixAB >
- static void invoke( integer_t const n, integer_t const kd, MatrixAB& ab,
+ static void invoke( const integer_t n, const integer_t kd, MatrixAB& ab,
             integer_t& info ) {
         BOOST_ASSERT( traits::matrix_uplo_tag(a) == 'U' ||
                 traits::matrix_uplo_tag(a) == 'L' );
@@ -74,7 +74,7 @@
 
 // template function to call pbstf
 template< typename MatrixAB >
-inline integer_t pbstf( integer_t const n, integer_t const kd,
+inline integer_t pbstf( const integer_t n, const integer_t kd,
         MatrixAB& ab ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbtrf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbtrf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbtrf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,20 +31,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pbtrf( char const uplo, integer_t const n, integer_t const kd,
- float* ab, integer_t const ldab, integer_t& info ) {
+ inline void pbtrf( const char uplo, const integer_t n, const integer_t kd,
+ float* ab, const integer_t ldab, integer_t& info ) {
         LAPACK_SPBTRF( &uplo, &n, &kd, ab, &ldab, &info );
     }
- inline void pbtrf( char const uplo, integer_t const n, integer_t const kd,
- double* ab, integer_t const ldab, integer_t& info ) {
+ inline void pbtrf( const char uplo, const integer_t n, const integer_t kd,
+ double* ab, const integer_t ldab, integer_t& info ) {
         LAPACK_DPBTRF( &uplo, &n, &kd, ab, &ldab, &info );
     }
- inline void pbtrf( char const uplo, integer_t const n, integer_t const kd,
- traits::complex_f* ab, integer_t const ldab, integer_t& info ) {
+ inline void pbtrf( const char uplo, const integer_t n, const integer_t kd,
+ traits::complex_f* ab, const integer_t ldab, integer_t& info ) {
         LAPACK_CPBTRF( &uplo, &n, &kd, traits::complex_ptr(ab), &ldab, &info );
     }
- inline void pbtrf( char const uplo, integer_t const n, integer_t const kd,
- traits::complex_d* ab, integer_t const ldab, integer_t& info ) {
+ inline void pbtrf( const char uplo, const integer_t n, const integer_t kd,
+ traits::complex_d* ab, const integer_t ldab, integer_t& info ) {
         LAPACK_ZPBTRF( &uplo, &n, &kd, traits::complex_ptr(ab), &ldab, &info );
     }
 }
@@ -58,7 +58,7 @@
 
     // templated specialization
     template< typename MatrixAB >
- static void invoke( integer_t const n, integer_t const kd, MatrixAB& ab,
+ static void invoke( const integer_t n, const integer_t kd, MatrixAB& ab,
             integer_t& info ) {
         BOOST_ASSERT( traits::matrix_uplo_tag(a) == 'U' ||
                 traits::matrix_uplo_tag(a) == 'L' );
@@ -74,7 +74,7 @@
 
 // template function to call pbtrf
 template< typename MatrixAB >
-inline integer_t pbtrf( integer_t const n, integer_t const kd,
+inline integer_t pbtrf( const integer_t n, const integer_t kd,
         MatrixAB& ab ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbtrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbtrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pbtrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,25 +31,27 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pbtrs( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, float* ab, integer_t const ldab, float* b,
- integer_t const ldb, integer_t& info ) {
+ inline void pbtrs( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, const float* ab, const integer_t ldab,
+ float* b, const integer_t ldb, integer_t& info ) {
         LAPACK_SPBTRS( &uplo, &n, &kd, &nrhs, ab, &ldab, b, &ldb, &info );
     }
- inline void pbtrs( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, double* ab, integer_t const ldab, double* b,
- integer_t const ldb, integer_t& info ) {
+ inline void pbtrs( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, const double* ab, const integer_t ldab,
+ double* b, const integer_t ldb, integer_t& info ) {
         LAPACK_DPBTRS( &uplo, &n, &kd, &nrhs, ab, &ldab, b, &ldb, &info );
     }
- inline void pbtrs( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, traits::complex_f* ab, integer_t const ldab,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void pbtrs( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, const traits::complex_f* ab,
+ const integer_t ldab, traits::complex_f* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_CPBTRS( &uplo, &n, &kd, &nrhs, traits::complex_ptr(ab), &ldab,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void pbtrs( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, traits::complex_d* ab, integer_t const ldab,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void pbtrs( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, const traits::complex_d* ab,
+ const integer_t ldab, traits::complex_d* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_ZPBTRS( &uplo, &n, &kd, &nrhs, traits::complex_ptr(ab), &ldab,
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -64,8 +66,9 @@
 
     // templated specialization
     template< typename MatrixAB, typename MatrixB >
- static void invoke( char const uplo, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixB& b, integer_t& info ) {
+ static void invoke( const char uplo, const integer_t n,
+ const integer_t kd, const MatrixAB& ab, MatrixB& b,
+ integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -85,8 +88,8 @@
 
 // template function to call pbtrs
 template< typename MatrixAB, typename MatrixB >
-inline integer_t pbtrs( char const uplo, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixB& b ) {
+inline integer_t pbtrs( const char uplo, const integer_t n,
+ const integer_t kd, const MatrixAB& ab, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     pbtrs_impl< value_type >::invoke( uplo, n, kd, ab, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pftrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pftrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pftrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,25 +34,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pftrs( char const transr, char const uplo, integer_t const n,
- integer_t const nrhs, float* a, float* b, integer_t const ldb,
- integer_t& info ) {
+ inline void pftrs( const char transr, const char uplo, const integer_t n,
+ const integer_t nrhs, const float* a, float* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_SPFTRS( &transr, &uplo, &n, &nrhs, a, b, &ldb, &info );
     }
- inline void pftrs( char const transr, char const uplo, integer_t const n,
- integer_t const nrhs, double* a, double* b, integer_t const ldb,
- integer_t& info ) {
+ inline void pftrs( const char transr, const char uplo, const integer_t n,
+ const integer_t nrhs, const double* a, double* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_DPFTRS( &transr, &uplo, &n, &nrhs, a, b, &ldb, &info );
     }
- inline void pftrs( char const transr, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, traits::complex_f* b,
- integer_t const ldb, integer_t& info ) {
+ inline void pftrs( const char transr, const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* a,
+ traits::complex_f* b, const integer_t ldb, integer_t& info ) {
         LAPACK_CPFTRS( &transr, &uplo, &n, &nrhs, traits::complex_ptr(a),
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void pftrs( char const transr, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, traits::complex_d* b,
- integer_t const ldb, integer_t& info ) {
+ inline void pftrs( const char transr, const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ traits::complex_d* b, const integer_t ldb, integer_t& info ) {
         LAPACK_ZPFTRS( &transr, &uplo, &n, &nrhs, traits::complex_ptr(a),
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -71,8 +71,8 @@
 
     // templated specialization
     template< typename VectorA, typename MatrixB >
- static void invoke( char const transr, integer_t const n, VectorA& a,
- MatrixB& b, integer_t& info ) {
+ static void invoke( const char transr, const integer_t n,
+ const VectorA& a, MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -99,8 +99,8 @@
 
     // templated specialization
     template< typename VectorA, typename MatrixB >
- static void invoke( char const transr, integer_t const n, VectorA& a,
- MatrixB& b, integer_t& info ) {
+ static void invoke( const char transr, const integer_t n,
+ const VectorA& a, MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -121,8 +121,8 @@
 
 // template function to call pftrs
 template< typename VectorA, typename MatrixB >
-inline integer_t pftrs( char const transr, integer_t const n, VectorA& a,
- MatrixB& b ) {
+inline integer_t pftrs( const char transr, const integer_t n,
+ const VectorA& a, MatrixB& b ) {
     typedef typename traits::vector_traits< VectorA >::value_type value_type;
     integer_t info(0);
     pftrs_impl< value_type >::invoke( transr, n, a, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pocon.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pocon.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pocon.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,29 +36,29 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pocon( char const uplo, integer_t const n, float* a,
- integer_t const lda, float const anorm, float& rcond, float* work,
+ inline void pocon( const char uplo, const integer_t n, const float* a,
+ const integer_t lda, const float anorm, float& rcond, float* work,
             integer_t* iwork, integer_t& info ) {
         LAPACK_SPOCON( &uplo, &n, a, &lda, &anorm, &rcond, work, iwork,
                 &info );
     }
- inline void pocon( char const uplo, integer_t const n, double* a,
- integer_t const lda, double const anorm, double& rcond,
+ inline void pocon( const char uplo, const integer_t n, const double* a,
+ const integer_t lda, const double anorm, double& rcond,
             double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DPOCON( &uplo, &n, a, &lda, &anorm, &rcond, work, iwork,
                 &info );
     }
- inline void pocon( char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, float const anorm,
- float& rcond, traits::complex_f* work, float* rwork,
- integer_t& info ) {
+ inline void pocon( const char uplo, const integer_t n,
+ const traits::complex_f* a, const integer_t lda,
+ const float anorm, float& rcond, traits::complex_f* work,
+ float* rwork, integer_t& info ) {
         LAPACK_CPOCON( &uplo, &n, traits::complex_ptr(a), &lda, &anorm,
                 &rcond, traits::complex_ptr(work), rwork, &info );
     }
- inline void pocon( char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, double const anorm,
- double& rcond, traits::complex_d* work, double* rwork,
- integer_t& info ) {
+ inline void pocon( const char uplo, const integer_t n,
+ const traits::complex_d* a, const integer_t lda,
+ const double anorm, double& rcond, traits::complex_d* work,
+ double* rwork, integer_t& info ) {
         LAPACK_ZPOCON( &uplo, &n, traits::complex_ptr(a), &lda, &anorm,
                 &rcond, traits::complex_ptr(work), rwork, &info );
     }
@@ -77,8 +77,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename WORK, typename IWORK >
- static void invoke( MatrixA& a, real_type const anorm, real_type& rcond,
- integer_t& info, detail::workspace2< WORK, IWORK > work ) {
+ static void invoke( const MatrixA& a, const real_type anorm,
+ real_type& rcond, integer_t& info, detail::workspace2< WORK,
+ IWORK > work ) {
         BOOST_ASSERT( traits::matrix_uplo_tag(a) == 'U' ||
                 traits::matrix_uplo_tag(a) == 'L' );
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
@@ -97,8 +98,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA >
- static void invoke( MatrixA& a, real_type const anorm, real_type& rcond,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const MatrixA& a, const real_type anorm,
+ real_type& rcond, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
@@ -108,16 +109,16 @@
 
     // optimal workspace specialization
     template< typename MatrixA >
- static void invoke( MatrixA& a, real_type const anorm, real_type& rcond,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const MatrixA& a, const real_type anorm,
+ real_type& rcond, integer_t& info, optimal_workspace work ) {
         invoke( a, anorm, rcond, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -131,8 +132,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename WORK, typename RWORK >
- static void invoke( MatrixA& a, real_type const anorm, real_type& rcond,
- integer_t& info, detail::workspace2< WORK, RWORK > work ) {
+ static void invoke( const MatrixA& a, const real_type anorm,
+ real_type& rcond, integer_t& info, detail::workspace2< WORK,
+ RWORK > work ) {
         BOOST_ASSERT( traits::matrix_uplo_tag(a) == 'U' ||
                 traits::matrix_uplo_tag(a) == 'L' );
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
@@ -151,8 +153,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA >
- static void invoke( MatrixA& a, real_type const anorm, real_type& rcond,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const MatrixA& a, const real_type anorm,
+ real_type& rcond, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork(
@@ -162,16 +164,16 @@
 
     // optimal workspace specialization
     template< typename MatrixA >
- static void invoke( MatrixA& a, real_type const anorm, real_type& rcond,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const MatrixA& a, const real_type anorm,
+ real_type& rcond, integer_t& info, optimal_workspace work ) {
         invoke( a, anorm, rcond, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -179,9 +181,9 @@
 
 // template function to call pocon
 template< typename MatrixA, typename Workspace >
-inline integer_t pocon( MatrixA& a, typename traits::type_traits<
- typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const anorm,
+inline integer_t pocon( const MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -192,9 +194,9 @@
 
 // template function to call pocon, default workspace type
 template< typename MatrixA >
-inline integer_t pocon( MatrixA& a, typename traits::type_traits<
- typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const anorm,
+inline integer_t pocon( const MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/poequ.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/poequ.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/poequ.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,22 +34,23 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void poequ( integer_t const n, float* a, integer_t const lda,
+ inline void poequ( const integer_t n, const float* a, const integer_t lda,
             float* s, float& scond, float& amax, integer_t& info ) {
         LAPACK_SPOEQU( &n, a, &lda, s, &scond, &amax, &info );
     }
- inline void poequ( integer_t const n, double* a, integer_t const lda,
- double* s, double& scond, double& amax, integer_t& info ) {
+ inline void poequ( const integer_t n, const double* a,
+ const integer_t lda, double* s, double& scond, double& amax,
+ integer_t& info ) {
         LAPACK_DPOEQU( &n, a, &lda, s, &scond, &amax, &info );
     }
- inline void poequ( integer_t const n, traits::complex_f* a,
- integer_t const lda, float* s, float& scond, float& amax,
+ inline void poequ( const integer_t n, const traits::complex_f* a,
+ const integer_t lda, float* s, float& scond, float& amax,
             integer_t& info ) {
         LAPACK_CPOEQU( &n, traits::complex_ptr(a), &lda, s, &scond, &amax,
                 &info );
     }
- inline void poequ( integer_t const n, traits::complex_d* a,
- integer_t const lda, double* s, double& scond, double& amax,
+ inline void poequ( const integer_t n, const traits::complex_d* a,
+ const integer_t lda, double* s, double& scond, double& amax,
             integer_t& info ) {
         LAPACK_ZPOEQU( &n, traits::complex_ptr(a), &lda, s, &scond, &amax,
                 &info );
@@ -69,7 +70,7 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorS >
- static void invoke( MatrixA& a, VectorS& s, real_type& scond,
+ static void invoke( const MatrixA& a, VectorS& s, real_type& scond,
             real_type& amax, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
@@ -92,7 +93,7 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorS >
- static void invoke( MatrixA& a, VectorS& s, real_type& scond,
+ static void invoke( const MatrixA& a, VectorS& s, real_type& scond,
             real_type& amax, integer_t& info ) {
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
         BOOST_ASSERT( traits::leading_dimension(a) >= std::max(1,
@@ -106,7 +107,7 @@
 
 // template function to call poequ
 template< typename MatrixA, typename VectorS >
-inline integer_t poequ( MatrixA& a, VectorS& s,
+inline integer_t poequ( const MatrixA& a, VectorS& s,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& scond,
         typename traits::type_traits< typename traits::matrix_traits<

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/porfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/porfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/porfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,26 +36,27 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void porfs( char const uplo, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* af,
- integer_t const ldaf, float* b, integer_t const ldb, float* x,
- integer_t const ldx, float* ferr, float* berr, float* work,
- integer_t* iwork, integer_t& info ) {
+ inline void porfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const float* a, const integer_t lda,
+ const float* af, const integer_t ldaf, const float* b,
+ const integer_t ldb, float* x, const integer_t ldx, float* ferr,
+ float* berr, float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SPORFS( &uplo, &n, &nrhs, a, &lda, af, &ldaf, b, &ldb, x, &ldx,
                 ferr, berr, work, iwork, &info );
     }
- inline void porfs( char const uplo, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* af,
- integer_t const ldaf, double* b, integer_t const ldb, double* x,
- integer_t const ldx, double* ferr, double* berr, double* work,
- integer_t* iwork, integer_t& info ) {
+ inline void porfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const double* a, const integer_t lda,
+ const double* af, const integer_t ldaf, const double* b,
+ const integer_t ldb, double* x, const integer_t ldx, double* ferr,
+ double* berr, double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DPORFS( &uplo, &n, &nrhs, a, &lda, af, &ldaf, b, &ldb, x, &ldx,
                 ferr, berr, work, iwork, &info );
     }
- inline void porfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* af, integer_t const ldaf, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* x, integer_t const ldx,
+ inline void porfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* a,
+ const integer_t lda, const traits::complex_f* af,
+ const integer_t ldaf, const traits::complex_f* b,
+ const integer_t ldb, traits::complex_f* x, const integer_t ldx,
             float* ferr, float* berr, traits::complex_f* work, float* rwork,
             integer_t& info ) {
         LAPACK_CPORFS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
@@ -63,10 +64,11 @@
                 traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void porfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* af, integer_t const ldaf, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* x, integer_t const ldx,
+ inline void porfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ const integer_t lda, const traits::complex_d* af,
+ const integer_t ldaf, const traits::complex_d* b,
+ const integer_t ldb, traits::complex_d* x, const integer_t ldx,
             double* ferr, double* berr, traits::complex_d* work,
             double* rwork, integer_t& info ) {
         LAPACK_ZPORFS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
@@ -91,9 +93,9 @@
     template< typename MatrixA, typename MatrixAF, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename IWORK >
- static void invoke( MatrixA& a, MatrixAF& af, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- detail::workspace2< WORK, IWORK > work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixAF >::value_type >::value) );
@@ -141,9 +143,9 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixAF, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( MatrixA& a, MatrixAF& af, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
@@ -155,17 +157,17 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixAF, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( MatrixA& a, MatrixAF& af, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, optimal_workspace work ) {
         invoke( a, af, b, x, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -181,9 +183,9 @@
     template< typename MatrixA, typename MatrixAF, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename RWORK >
- static void invoke( MatrixA& a, MatrixAF& af, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- detail::workspace2< WORK, RWORK > work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -228,9 +230,9 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixAF, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( MatrixA& a, MatrixAF& af, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork(
@@ -242,17 +244,17 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixAF, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( MatrixA& a, MatrixAF& af, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, optimal_workspace work ) {
         invoke( a, af, b, x, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -262,8 +264,9 @@
 template< typename MatrixA, typename MatrixAF, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR,
         typename Workspace >
-inline integer_t porfs( MatrixA& a, MatrixAF& af, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
+inline integer_t porfs( const MatrixA& a, const MatrixAF& af,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     porfs_impl< value_type >::invoke( a, af, b, x, ferr, berr, info,
@@ -274,8 +277,8 @@
 // template function to call porfs, default workspace type
 template< typename MatrixA, typename MatrixAF, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR >
-inline integer_t porfs( MatrixA& a, MatrixAF& af, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr ) {
+inline integer_t porfs( const MatrixA& a, const MatrixAF& af,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     porfs_impl< value_type >::invoke( a, af, b, x, ferr, berr, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potrf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potrf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potrf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,20 +31,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void potrf( char const uplo, integer_t const n, float* a,
- integer_t const lda, integer_t& info ) {
+ inline void potrf( const char uplo, const integer_t n, float* a,
+ const integer_t lda, integer_t& info ) {
         LAPACK_SPOTRF( &uplo, &n, a, &lda, &info );
     }
- inline void potrf( char const uplo, integer_t const n, double* a,
- integer_t const lda, integer_t& info ) {
+ inline void potrf( const char uplo, const integer_t n, double* a,
+ const integer_t lda, integer_t& info ) {
         LAPACK_DPOTRF( &uplo, &n, a, &lda, &info );
     }
- inline void potrf( char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t& info ) {
+ inline void potrf( const char uplo, const integer_t n,
+ traits::complex_f* a, const integer_t lda, integer_t& info ) {
         LAPACK_CPOTRF( &uplo, &n, traits::complex_ptr(a), &lda, &info );
     }
- inline void potrf( char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t& info ) {
+ inline void potrf( const char uplo, const integer_t n,
+ traits::complex_d* a, const integer_t lda, integer_t& info ) {
         LAPACK_ZPOTRF( &uplo, &n, traits::complex_ptr(a), &lda, &info );
     }
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potri.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potri.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potri.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,20 +31,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void potri( char const uplo, integer_t const n, float* a,
- integer_t const lda, integer_t& info ) {
+ inline void potri( const char uplo, const integer_t n, float* a,
+ const integer_t lda, integer_t& info ) {
         LAPACK_SPOTRI( &uplo, &n, a, &lda, &info );
     }
- inline void potri( char const uplo, integer_t const n, double* a,
- integer_t const lda, integer_t& info ) {
+ inline void potri( const char uplo, const integer_t n, double* a,
+ const integer_t lda, integer_t& info ) {
         LAPACK_DPOTRI( &uplo, &n, a, &lda, &info );
     }
- inline void potri( char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t& info ) {
+ inline void potri( const char uplo, const integer_t n,
+ traits::complex_f* a, const integer_t lda, integer_t& info ) {
         LAPACK_CPOTRI( &uplo, &n, traits::complex_ptr(a), &lda, &info );
     }
- inline void potri( char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t& info ) {
+ inline void potri( const char uplo, const integer_t n,
+ traits::complex_d* a, const integer_t lda, integer_t& info ) {
         LAPACK_ZPOTRI( &uplo, &n, traits::complex_ptr(a), &lda, &info );
     }
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/potrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,25 +31,27 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void potrs( char const uplo, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* b,
- integer_t const ldb, integer_t& info ) {
+ inline void potrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const float* a, const integer_t lda,
+ float* b, const integer_t ldb, integer_t& info ) {
         LAPACK_SPOTRS( &uplo, &n, &nrhs, a, &lda, b, &ldb, &info );
     }
- inline void potrs( char const uplo, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* b,
- integer_t const ldb, integer_t& info ) {
+ inline void potrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const double* a, const integer_t lda,
+ double* b, const integer_t ldb, integer_t& info ) {
         LAPACK_DPOTRS( &uplo, &n, &nrhs, a, &lda, b, &ldb, &info );
     }
- inline void potrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void potrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* a,
+ const integer_t lda, traits::complex_f* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_CPOTRS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void potrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void potrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ const integer_t lda, traits::complex_d* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_ZPOTRS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -64,7 +66,7 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB >
- static void invoke( MatrixA& a, MatrixB& b, integer_t& info ) {
+ static void invoke( const MatrixA& a, MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -87,7 +89,7 @@
 
 // template function to call potrs
 template< typename MatrixA, typename MatrixB >
-inline integer_t potrs( MatrixA& a, MatrixB& b ) {
+inline integer_t potrs( const MatrixA& a, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     potrs_impl< value_type >::invoke( a, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pprfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pprfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pprfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,37 +36,39 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pprfs( char const uplo, integer_t const n,
- integer_t const nrhs, float* ap, float* afp, float* b,
- integer_t const ldb, float* x, integer_t const ldx, float* ferr,
- float* berr, float* work, integer_t* iwork, integer_t& info ) {
+ inline void pprfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const float* ap, const float* afp,
+ const float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float* ferr, float* berr, float* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_SPPRFS( &uplo, &n, &nrhs, ap, afp, b, &ldb, x, &ldx, ferr,
                 berr, work, iwork, &info );
     }
- inline void pprfs( char const uplo, integer_t const n,
- integer_t const nrhs, double* ap, double* afp, double* b,
- integer_t const ldb, double* x, integer_t const ldx, double* ferr,
- double* berr, double* work, integer_t* iwork, integer_t& info ) {
+ inline void pprfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const double* ap, const double* afp,
+ const double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double* ferr, double* berr, double* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_DPPRFS( &uplo, &n, &nrhs, ap, afp, b, &ldb, x, &ldx, ferr,
                 berr, work, iwork, &info );
     }
- inline void pprfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap,
- traits::complex_f* afp, traits::complex_f* b, integer_t const ldb,
- traits::complex_f* x, integer_t const ldx, float* ferr,
- float* berr, traits::complex_f* work, float* rwork,
+ inline void pprfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* ap,
+ const traits::complex_f* afp, const traits::complex_f* b,
+ const integer_t ldb, traits::complex_f* x, const integer_t ldx,
+ float* ferr, float* berr, traits::complex_f* work, float* rwork,
             integer_t& info ) {
         LAPACK_CPPRFS( &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void pprfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap,
- traits::complex_d* afp, traits::complex_d* b, integer_t const ldb,
- traits::complex_d* x, integer_t const ldx, double* ferr,
- double* berr, traits::complex_d* work, double* rwork,
- integer_t& info ) {
+ inline void pprfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* ap,
+ const traits::complex_d* afp, const traits::complex_d* b,
+ const integer_t ldb, traits::complex_d* x, const integer_t ldx,
+ double* ferr, double* berr, traits::complex_d* work,
+ double* rwork, integer_t& info ) {
         LAPACK_ZPPRFS( &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, ferr, berr,
@@ -89,9 +91,10 @@
     template< typename MatrixAP, typename VectorAFP, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename IWORK >
- static void invoke( integer_t const n, MatrixAP& ap, VectorAFP& afp,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, detail::workspace2< WORK, IWORK > work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const VectorAFP& afp, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAP >::value_type, typename traits::vector_traits<
                 VectorAFP >::value_type >::value) );
@@ -133,9 +136,10 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename VectorAFP, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( integer_t const n, MatrixAP& ap, VectorAFP& afp,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const VectorAFP& afp, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
         invoke( n, ap, afp, b, x, ferr, berr, info, workspace( tmp_work,
@@ -145,17 +149,18 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename VectorAFP, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( integer_t const n, MatrixAP& ap, VectorAFP& afp,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const VectorAFP& afp, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( n, ap, afp, b, x, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -171,9 +176,10 @@
     template< typename MatrixAP, typename VectorAFP, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename RWORK >
- static void invoke( integer_t const n, MatrixAP& ap, VectorAFP& afp,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, detail::workspace2< WORK, RWORK > work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const VectorAFP& afp, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -212,9 +218,10 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename VectorAFP, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( integer_t const n, MatrixAP& ap, VectorAFP& afp,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const VectorAFP& afp, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
         invoke( n, ap, afp, b, x, ferr, berr, info, workspace( tmp_work,
@@ -224,17 +231,18 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename VectorAFP, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( integer_t const n, MatrixAP& ap, VectorAFP& afp,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const VectorAFP& afp, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( n, ap, afp, b, x, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -244,9 +252,9 @@
 template< typename MatrixAP, typename VectorAFP, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR,
         typename Workspace >
-inline integer_t pprfs( integer_t const n, MatrixAP& ap, VectorAFP& afp,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- Workspace work ) {
+inline integer_t pprfs( const integer_t n, const MatrixAP& ap,
+ const VectorAFP& afp, const MatrixB& b, MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     pprfs_impl< value_type >::invoke( n, ap, afp, b, x, ferr, berr, info,
@@ -257,8 +265,9 @@
 // template function to call pprfs, default workspace type
 template< typename MatrixAP, typename VectorAFP, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR >
-inline integer_t pprfs( integer_t const n, MatrixAP& ap, VectorAFP& afp,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
+inline integer_t pprfs( const integer_t n, const MatrixAP& ap,
+ const VectorAFP& afp, const MatrixB& b, MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     pprfs_impl< value_type >::invoke( n, ap, afp, b, x, ferr, berr, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pptrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pptrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pptrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,25 +31,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pptrs( char const uplo, integer_t const n,
- integer_t const nrhs, float* ap, float* b, integer_t const ldb,
- integer_t& info ) {
+ inline void pptrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const float* ap, float* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_SPPTRS( &uplo, &n, &nrhs, ap, b, &ldb, &info );
     }
- inline void pptrs( char const uplo, integer_t const n,
- integer_t const nrhs, double* ap, double* b, integer_t const ldb,
- integer_t& info ) {
+ inline void pptrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const double* ap, double* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_DPPTRS( &uplo, &n, &nrhs, ap, b, &ldb, &info );
     }
- inline void pptrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap, traits::complex_f* b,
- integer_t const ldb, integer_t& info ) {
+ inline void pptrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* ap,
+ traits::complex_f* b, const integer_t ldb, integer_t& info ) {
         LAPACK_CPPTRS( &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void pptrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap, traits::complex_d* b,
- integer_t const ldb, integer_t& info ) {
+ inline void pptrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* ap,
+ traits::complex_d* b, const integer_t ldb, integer_t& info ) {
         LAPACK_ZPPTRS( &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -64,7 +64,7 @@
 
     // templated specialization
     template< typename VectorAP, typename MatrixB >
- static void invoke( integer_t const n, VectorAP& ap, MatrixB& b,
+ static void invoke( const integer_t n, const VectorAP& ap, MatrixB& b,
             integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorAP >::value_type, typename traits::matrix_traits<
@@ -84,7 +84,8 @@
 
 // template function to call pptrs
 template< typename VectorAP, typename MatrixB >
-inline integer_t pptrs( integer_t const n, VectorAP& ap, MatrixB& b ) {
+inline integer_t pptrs( const integer_t n, const VectorAP& ap,
+ MatrixB& b ) {
     typedef typename traits::vector_traits< VectorAP >::value_type value_type;
     integer_t info(0);
     pptrs_impl< value_type >::invoke( n, ap, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pteqr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pteqr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pteqr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,24 +36,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pteqr( char const compz, integer_t const n, float* d,
- float* e, float* z, integer_t const ldz, float* work,
+ inline void pteqr( const char compz, const integer_t n, float* d,
+ float* e, float* z, const integer_t ldz, float* work,
             integer_t& info ) {
         LAPACK_SPTEQR( &compz, &n, d, e, z, &ldz, work, &info );
     }
- inline void pteqr( char const compz, integer_t const n, double* d,
- double* e, double* z, integer_t const ldz, double* work,
+ inline void pteqr( const char compz, const integer_t n, double* d,
+ double* e, double* z, const integer_t ldz, double* work,
             integer_t& info ) {
         LAPACK_DPTEQR( &compz, &n, d, e, z, &ldz, work, &info );
     }
- inline void pteqr( char const compz, integer_t const n, float* d,
- float* e, traits::complex_f* z, integer_t const ldz, float* work,
+ inline void pteqr( const char compz, const integer_t n, float* d,
+ float* e, traits::complex_f* z, const integer_t ldz, float* work,
             integer_t& info ) {
         LAPACK_CPTEQR( &compz, &n, d, e, traits::complex_ptr(z), &ldz, work,
                 &info );
     }
- inline void pteqr( char const compz, integer_t const n, double* d,
- double* e, traits::complex_d* z, integer_t const ldz,
+ inline void pteqr( const char compz, const integer_t n, double* d,
+ double* e, traits::complex_d* z, const integer_t ldz,
             double* work, integer_t& info ) {
         LAPACK_ZPTEQR( &compz, &n, d, e, traits::complex_ptr(z), &ldz, work,
                 &info );
@@ -74,7 +74,7 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ,
             typename WORK >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, detail::workspace1<
             WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -97,7 +97,7 @@
 
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( compz, n, d, e, z, info, workspace( tmp_work ) );
@@ -105,12 +105,12 @@
 
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         invoke( compz, n, d, e, z, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 4*n;
     }
 };
@@ -125,7 +125,7 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ,
             typename WORK >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, detail::workspace1<
             WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -145,7 +145,7 @@
 
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( compz, n, d, e, z, info, workspace( tmp_work ) );
@@ -153,12 +153,12 @@
 
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         invoke( compz, n, d, e, z, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 4*n;
     }
 };
@@ -167,7 +167,7 @@
 // template function to call pteqr
 template< typename VectorD, typename VectorE, typename MatrixZ,
         typename Workspace >
-inline integer_t pteqr( char const compz, integer_t const n, VectorD& d,
+inline integer_t pteqr( const char compz, const integer_t n, VectorD& d,
         VectorE& e, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);
@@ -177,7 +177,7 @@
 
 // template function to call pteqr, default workspace type
 template< typename VectorD, typename VectorE, typename MatrixZ >
-inline integer_t pteqr( char const compz, integer_t const n, VectorD& d,
+inline integer_t pteqr( const char compz, const integer_t n, VectorD& d,
         VectorE& e, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ptrfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ptrfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ptrfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,24 +36,27 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ptrfs( integer_t const n, integer_t const nrhs, float* d,
- float* e, float* df, float* ef, float* b, integer_t const ldb,
- float* x, integer_t const ldx, float* ferr, float* berr,
- float* work, integer_t& info ) {
+ inline void ptrfs( const integer_t n, const integer_t nrhs,
+ const float* d, const float* e, const float* df, const float* ef,
+ const float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float* ferr, float* berr, float* work,
+ integer_t& info ) {
         LAPACK_SPTRFS( &n, &nrhs, d, e, df, ef, b, &ldb, x, &ldx, ferr, berr,
                 work, &info );
     }
- inline void ptrfs( integer_t const n, integer_t const nrhs, double* d,
- double* e, double* df, double* ef, double* b, integer_t const ldb,
- double* x, integer_t const ldx, double* ferr, double* berr,
- double* work, integer_t& info ) {
+ inline void ptrfs( const integer_t n, const integer_t nrhs,
+ const double* d, const double* e, const double* df,
+ const double* ef, const double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double* ferr, double* berr, double* work,
+ integer_t& info ) {
         LAPACK_DPTRFS( &n, &nrhs, d, e, df, ef, b, &ldb, x, &ldx, ferr, berr,
                 work, &info );
     }
- inline void ptrfs( char const uplo, integer_t const n,
- integer_t const nrhs, float* d, traits::complex_f* e, float* df,
- traits::complex_f* ef, traits::complex_f* b, integer_t const ldb,
- traits::complex_f* x, integer_t const ldx, float* ferr,
+ inline void ptrfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const float* d, const traits::complex_f* e,
+ const float* df, const traits::complex_f* ef,
+ const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float* ferr,
             float* berr, traits::complex_f* work, float* rwork,
             integer_t& info ) {
         LAPACK_CPTRFS( &uplo, &n, &nrhs, d, traits::complex_ptr(e), df,
@@ -61,10 +64,11 @@
                 traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void ptrfs( char const uplo, integer_t const n,
- integer_t const nrhs, double* d, traits::complex_d* e, double* df,
- traits::complex_d* ef, traits::complex_d* b, integer_t const ldb,
- traits::complex_d* x, integer_t const ldx, double* ferr,
+ inline void ptrfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const double* d, const traits::complex_d* e,
+ const double* df, const traits::complex_d* ef,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double* ferr,
             double* berr, traits::complex_d* work, double* rwork,
             integer_t& info ) {
         LAPACK_ZPTRFS( &uplo, &n, &nrhs, d, traits::complex_ptr(e), df,
@@ -89,9 +93,9 @@
     template< typename VectorD, typename VectorE, typename VectorDF,
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR, typename WORK >
- static void invoke( integer_t const n, VectorD& d, VectorE& e,
- VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ static void invoke( const integer_t n, const VectorD& d, const VectorE& e,
+ const VectorDF& df, const VectorEF& ef, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
@@ -139,9 +143,9 @@
     template< typename VectorD, typename VectorE, typename VectorDF,
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( integer_t const n, VectorD& d, VectorE& e,
- VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ static void invoke( const integer_t n, const VectorD& d, const VectorE& e,
+ const VectorDF& df, const VectorEF& ef, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( n, d, e, df, ef, b, x, ferr, berr, info,
@@ -152,14 +156,14 @@
     template< typename VectorD, typename VectorE, typename VectorDF,
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( integer_t const n, VectorD& d, VectorE& e,
- VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ static void invoke( const integer_t n, const VectorD& d, const VectorE& e,
+ const VectorDF& df, const VectorEF& ef, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
         invoke( n, d, e, df, ef, b, x, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 };
@@ -176,10 +180,10 @@
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR, typename WORK,
             typename RWORK >
- static void invoke( char const uplo, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- detail::workspace2< WORK, RWORK > work ) {
+ static void invoke( const char uplo, const integer_t n, const VectorD& d,
+ const VectorE& e, const VectorDF& df, const VectorEF& ef,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
                 VectorDF >::value_type >::value) );
@@ -227,10 +231,10 @@
     template< typename VectorD, typename VectorE, typename VectorDF,
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char uplo, const integer_t n, const VectorD& d,
+ const VectorE& e, const VectorDF& df, const VectorEF& ef,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
         invoke( uplo, n, d, e, df, ef, b, x, ferr, berr, info,
@@ -241,19 +245,19 @@
     template< typename VectorD, typename VectorE, typename VectorDF,
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char uplo, const integer_t n, const VectorD& d,
+ const VectorE& e, const VectorDF& df, const VectorEF& ef,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, optimal_workspace work ) {
         invoke( uplo, n, d, e, df, ef, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -263,9 +267,10 @@
 template< typename VectorD, typename VectorE, typename VectorDF,
         typename VectorEF, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR, typename Workspace >
-inline integer_t ptrfs( integer_t const n, VectorD& d, VectorE& e,
- VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, Workspace work ) {
+inline integer_t ptrfs( const integer_t n, const VectorD& d,
+ const VectorE& e, const VectorDF& df, const VectorEF& ef,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ Workspace work ) {
     typedef typename traits::vector_traits< VectorE >::value_type value_type;
     integer_t info(0);
     ptrfs_impl< value_type >::invoke( n, d, e, df, ef, b, x, ferr, berr,
@@ -277,9 +282,9 @@
 template< typename VectorD, typename VectorE, typename VectorDF,
         typename VectorEF, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR >
-inline integer_t ptrfs( integer_t const n, VectorD& d, VectorE& e,
- VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr ) {
+inline integer_t ptrfs( const integer_t n, const VectorD& d,
+ const VectorE& e, const VectorDF& df, const VectorEF& ef,
+ const MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::vector_traits< VectorE >::value_type value_type;
     integer_t info(0);
     ptrfs_impl< value_type >::invoke( n, d, e, df, ef, b, x, ferr, berr,
@@ -290,9 +295,10 @@
 template< typename VectorD, typename VectorE, typename VectorDF,
         typename VectorEF, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR, typename Workspace >
-inline integer_t ptrfs( char const uplo, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
+inline integer_t ptrfs( const char uplo, const integer_t n,
+ const VectorD& d, const VectorE& e, const VectorDF& df,
+ const VectorEF& ef, const MatrixB& b, MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr, Workspace work ) {
     typedef typename traits::vector_traits< VectorE >::value_type value_type;
     integer_t info(0);
     ptrfs_impl< value_type >::invoke( uplo, n, d, e, df, ef, b, x, ferr,
@@ -304,9 +310,10 @@
 template< typename VectorD, typename VectorE, typename VectorDF,
         typename VectorEF, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR >
-inline integer_t ptrfs( char const uplo, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr ) {
+inline integer_t ptrfs( const char uplo, const integer_t n,
+ const VectorD& d, const VectorE& e, const VectorDF& df,
+ const VectorEF& ef, const MatrixB& b, MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr ) {
     typedef typename traits::vector_traits< VectorE >::value_type value_type;
     integer_t info(0);
     ptrfs_impl< value_type >::invoke( uplo, n, d, e, df, ef, b, x, ferr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pttrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pttrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/pttrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,23 +34,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pttrs( integer_t const n, integer_t const nrhs, float* d,
- float* e, float* b, integer_t const ldb, integer_t& info ) {
+ inline void pttrs( const integer_t n, const integer_t nrhs,
+ const float* d, const float* e, float* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_SPTTRS( &n, &nrhs, d, e, b, &ldb, &info );
     }
- inline void pttrs( integer_t const n, integer_t const nrhs, double* d,
- double* e, double* b, integer_t const ldb, integer_t& info ) {
+ inline void pttrs( const integer_t n, const integer_t nrhs,
+ const double* d, const double* e, double* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_DPTTRS( &n, &nrhs, d, e, b, &ldb, &info );
     }
- inline void pttrs( char const uplo, integer_t const n,
- integer_t const nrhs, float* d, traits::complex_f* e,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void pttrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const float* d, const traits::complex_f* e,
+ traits::complex_f* b, const integer_t ldb, integer_t& info ) {
         LAPACK_CPTTRS( &uplo, &n, &nrhs, d, traits::complex_ptr(e),
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void pttrs( char const uplo, integer_t const n,
- integer_t const nrhs, double* d, traits::complex_d* e,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void pttrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const double* d, const traits::complex_d* e,
+ traits::complex_d* b, const integer_t ldb, integer_t& info ) {
         LAPACK_ZPTTRS( &uplo, &n, &nrhs, d, traits::complex_ptr(e),
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -69,8 +71,8 @@
 
     // templated specialization
     template< typename VectorD, typename VectorE, typename MatrixB >
- static void invoke( integer_t const n, VectorD& d, VectorE& e, MatrixB& b,
- integer_t& info ) {
+ static void invoke( const integer_t n, const VectorD& d, const VectorE& e,
+ MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
                 VectorE >::value_type >::value) );
@@ -98,8 +100,8 @@
 
     // templated specialization
     template< typename VectorD, typename VectorE, typename MatrixB >
- static void invoke( char const uplo, integer_t const n, VectorD& d,
- VectorE& e, MatrixB& b, integer_t& info ) {
+ static void invoke( const char uplo, const integer_t n, const VectorD& d,
+ const VectorE& e, MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorE >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -118,8 +120,8 @@
 
 // template function to call pttrs
 template< typename VectorD, typename VectorE, typename MatrixB >
-inline integer_t pttrs( integer_t const n, VectorD& d, VectorE& e,
- MatrixB& b ) {
+inline integer_t pttrs( const integer_t n, const VectorD& d,
+ const VectorE& e, MatrixB& b ) {
     typedef typename traits::vector_traits< VectorE >::value_type value_type;
     integer_t info(0);
     pttrs_impl< value_type >::invoke( n, d, e, b, info );
@@ -127,8 +129,8 @@
 }
 // template function to call pttrs
 template< typename VectorD, typename VectorE, typename MatrixB >
-inline integer_t pttrs( char const uplo, integer_t const n, VectorD& d,
- VectorE& e, MatrixB& b ) {
+inline integer_t pttrs( const char uplo, const integer_t n,
+ const VectorD& d, const VectorE& e, MatrixB& b ) {
     typedef typename traits::vector_traits< VectorE >::value_type value_type;
     integer_t info(0);
     pttrs_impl< value_type >::invoke( uplo, n, d, e, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sbgst.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sbgst.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sbgst.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,17 +33,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sbgst( char const vect, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, float* ab,
- integer_t const ldab, float* bb, integer_t const ldbb, float* x,
- integer_t const ldx, float* work, integer_t& info ) {
+ inline void sbgst( const char vect, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, float* ab,
+ const integer_t ldab, const float* bb, const integer_t ldbb,
+ float* x, const integer_t ldx, float* work, integer_t& info ) {
         LAPACK_SSBGST( &vect, &uplo, &n, &ka, &kb, ab, &ldab, bb, &ldbb, x,
                 &ldx, work, &info );
     }
- inline void sbgst( char const vect, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, double* ab,
- integer_t const ldab, double* bb, integer_t const ldbb, double* x,
- integer_t const ldx, double* work, integer_t& info ) {
+ inline void sbgst( const char vect, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, double* ab,
+ const integer_t ldab, const double* bb, const integer_t ldbb,
+ double* x, const integer_t ldx, double* work, integer_t& info ) {
         LAPACK_DSBGST( &vect, &uplo, &n, &ka, &kb, ab, &ldab, bb, &ldbb, x,
                 &ldx, work, &info );
     }
@@ -59,10 +59,10 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename MatrixX,
             typename WORK >
- static void invoke( char const vect, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixX& x, integer_t& info, detail::workspace1<
- WORK > work ) {
+ static void invoke( const char vect, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ const MatrixBB& bb, MatrixX& x, integer_t& info,
+ detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
                 MatrixBB >::value_type >::value) );
@@ -88,9 +88,9 @@
 
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename MatrixX >
- static void invoke( char const vect, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixX& x, integer_t& info,
+ static void invoke( const char vect, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ const MatrixBB& bb, MatrixX& x, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( vect, n, ka, kb, ab, bb, x, info, workspace( tmp_work ) );
@@ -98,14 +98,14 @@
 
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename MatrixX >
- static void invoke( char const vect, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixX& x, integer_t& info,
+ static void invoke( const char vect, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ const MatrixBB& bb, MatrixX& x, integer_t& info,
             optimal_workspace work ) {
         invoke( vect, n, ka, kb, ab, bb, x, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 };
@@ -114,9 +114,9 @@
 // template function to call sbgst
 template< typename MatrixAB, typename MatrixBB, typename MatrixX,
         typename Workspace >
-inline integer_t sbgst( char const vect, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
- MatrixX& x, Workspace work ) {
+inline integer_t sbgst( const char vect, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ const MatrixBB& bb, MatrixX& x, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     sbgst_impl< value_type >::invoke( vect, n, ka, kb, ab, bb, x, info,
@@ -126,9 +126,9 @@
 
 // template function to call sbgst, default workspace type
 template< typename MatrixAB, typename MatrixBB, typename MatrixX >
-inline integer_t sbgst( char const vect, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
- MatrixX& x ) {
+inline integer_t sbgst( const char vect, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ const MatrixBB& bb, MatrixX& x ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     sbgst_impl< value_type >::invoke( vect, n, ka, kb, ab, bb, x, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sbtrd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sbtrd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sbtrd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,16 +33,16 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sbtrd( char const vect, char const uplo, integer_t const n,
- integer_t const kd, float* ab, integer_t const ldab, float* d,
- float* e, float* q, integer_t const ldq, float* work,
+ inline void sbtrd( const char vect, const char uplo, const integer_t n,
+ const integer_t kd, float* ab, const integer_t ldab, float* d,
+ float* e, float* q, const integer_t ldq, float* work,
             integer_t& info ) {
         LAPACK_SSBTRD( &vect, &uplo, &n, &kd, ab, &ldab, d, e, q, &ldq, work,
                 &info );
     }
- inline void sbtrd( char const vect, char const uplo, integer_t const n,
- integer_t const kd, double* ab, integer_t const ldab, double* d,
- double* e, double* q, integer_t const ldq, double* work,
+ inline void sbtrd( const char vect, const char uplo, const integer_t n,
+ const integer_t kd, double* ab, const integer_t ldab, double* d,
+ double* e, double* q, const integer_t ldq, double* work,
             integer_t& info ) {
         LAPACK_DSBTRD( &vect, &uplo, &n, &kd, ab, &ldab, d, e, q, &ldq, work,
                 &info );
@@ -59,8 +59,8 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ, typename WORK >
- static void invoke( char const vect, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorD& d, VectorE& e,
+ static void invoke( const char vect, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorD& d, VectorE& e,
             MatrixQ& q, integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::vector_traits<
@@ -90,8 +90,8 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ >
- static void invoke( char const vect, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorD& d, VectorE& e,
+ static void invoke( const char vect, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorD& d, VectorE& e,
             MatrixQ& q, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( vect, n, kd, ab, d, e, q, info, workspace( tmp_work ) );
@@ -100,13 +100,13 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename VectorD, typename VectorE,
             typename MatrixQ >
- static void invoke( char const vect, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorD& d, VectorE& e,
+ static void invoke( const char vect, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorD& d, VectorE& e,
             MatrixQ& q, integer_t& info, optimal_workspace work ) {
         invoke( vect, n, kd, ab, d, e, q, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n;
     }
 };
@@ -115,8 +115,8 @@
 // template function to call sbtrd
 template< typename MatrixAB, typename VectorD, typename VectorE,
         typename MatrixQ, typename Workspace >
-inline integer_t sbtrd( char const vect, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorD& d, VectorE& e, MatrixQ& q,
+inline integer_t sbtrd( const char vect, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorD& d, VectorE& e, MatrixQ& q,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
@@ -128,8 +128,8 @@
 // template function to call sbtrd, default workspace type
 template< typename MatrixAB, typename VectorD, typename VectorE,
         typename MatrixQ >
-inline integer_t sbtrd( char const vect, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorD& d, VectorE& e,
+inline integer_t sbtrd( const char vect, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorD& d, VectorE& e,
         MatrixQ& q ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sprfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sprfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sprfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,39 +36,41 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sprfs( char const uplo, integer_t const n,
- integer_t const nrhs, float* ap, float* afp, integer_t* ipiv,
- float* b, integer_t const ldb, float* x, integer_t const ldx,
- float* ferr, float* berr, float* work, integer_t* iwork,
- integer_t& info ) {
+ inline void sprfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const float* ap, const float* afp,
+ const integer_t* ipiv, const float* b, const integer_t ldb,
+ float* x, const integer_t ldx, float* ferr, float* berr,
+ float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SSPRFS( &uplo, &n, &nrhs, ap, afp, ipiv, b, &ldb, x, &ldx,
                 ferr, berr, work, iwork, &info );
     }
- inline void sprfs( char const uplo, integer_t const n,
- integer_t const nrhs, double* ap, double* afp, integer_t* ipiv,
- double* b, integer_t const ldb, double* x, integer_t const ldx,
- double* ferr, double* berr, double* work, integer_t* iwork,
- integer_t& info ) {
+ inline void sprfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const double* ap, const double* afp,
+ const integer_t* ipiv, const double* b, const integer_t ldb,
+ double* x, const integer_t ldx, double* ferr, double* berr,
+ double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DSPRFS( &uplo, &n, &nrhs, ap, afp, ipiv, b, &ldb, x, &ldx,
                 ferr, berr, work, iwork, &info );
     }
- inline void sprfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap,
- traits::complex_f* afp, integer_t* ipiv, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* x, integer_t const ldx,
- float* ferr, float* berr, traits::complex_f* work, float* rwork,
+ inline void sprfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* ap,
+ const traits::complex_f* afp, const integer_t* ipiv,
+ const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float* ferr,
+ float* berr, traits::complex_f* work, float* rwork,
             integer_t& info ) {
         LAPACK_CSPRFS( &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), ipiv, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void sprfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap,
- traits::complex_d* afp, integer_t* ipiv, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* x, integer_t const ldx,
- double* ferr, double* berr, traits::complex_d* work,
- double* rwork, integer_t& info ) {
+ inline void sprfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* ap,
+ const traits::complex_d* afp, const integer_t* ipiv,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double* ferr,
+ double* berr, traits::complex_d* work, double* rwork,
+ integer_t& info ) {
         LAPACK_ZSPRFS( &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), ipiv, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, ferr, berr,
@@ -91,10 +93,10 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename IWORK >
- static void invoke( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
- IWORK > work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAP >::value_type, typename traits::matrix_traits<
                 MatrixAFP >::value_type >::value) );
@@ -138,9 +140,10 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, minimal_workspace work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
         invoke( n, ap, afp, ipiv, b, x, ferr, berr, info, workspace( tmp_work,
@@ -151,18 +154,19 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, optimal_workspace work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( n, ap, afp, ipiv, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -178,10 +182,10 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
- RWORK > work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -222,9 +226,10 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, minimal_workspace work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
         invoke( n, ap, afp, ipiv, b, x, ferr, berr, info, workspace( tmp_work,
@@ -235,18 +240,19 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, optimal_workspace work ) {
+ static void invoke( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( n, ap, afp, ipiv, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -256,9 +262,9 @@
 template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t sprfs( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, Workspace work ) {
+inline integer_t sprfs( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     sprfs_impl< value_type >::invoke( n, ap, afp, ipiv, b, x, ferr, berr,
@@ -270,9 +276,9 @@
 template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t sprfs( integer_t const n, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr ) {
+inline integer_t sprfs( const integer_t n, const MatrixAP& ap,
+ const MatrixAFP& afp, const VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     sprfs_impl< value_type >::invoke( n, ap, afp, ipiv, b, x, ferr, berr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sptrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sptrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sptrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,25 +31,27 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sptrs( char const uplo, integer_t const n,
- integer_t const nrhs, float* ap, integer_t* ipiv, float* b,
- integer_t const ldb, integer_t& info ) {
+ inline void sptrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const float* ap, const integer_t* ipiv,
+ float* b, const integer_t ldb, integer_t& info ) {
         LAPACK_SSPTRS( &uplo, &n, &nrhs, ap, ipiv, b, &ldb, &info );
     }
- inline void sptrs( char const uplo, integer_t const n,
- integer_t const nrhs, double* ap, integer_t* ipiv, double* b,
- integer_t const ldb, integer_t& info ) {
+ inline void sptrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const double* ap, const integer_t* ipiv,
+ double* b, const integer_t ldb, integer_t& info ) {
         LAPACK_DSPTRS( &uplo, &n, &nrhs, ap, ipiv, b, &ldb, &info );
     }
- inline void sptrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void sptrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* ap,
+ const integer_t* ipiv, traits::complex_f* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_CSPTRS( &uplo, &n, &nrhs, traits::complex_ptr(ap), ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void sptrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void sptrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* ap,
+ const integer_t* ipiv, traits::complex_d* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_ZSPTRS( &uplo, &n, &nrhs, traits::complex_ptr(ap), ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -64,8 +66,9 @@
 
     // templated specialization
     template< typename MatrixAP, typename VectorIPIV, typename MatrixB >
- static void invoke( char const uplo, integer_t const n, MatrixAP& ap,
- VectorIPIV& ipiv, MatrixB& b, integer_t& info ) {
+ static void invoke( const char uplo, const integer_t n,
+ const MatrixAP& ap, const VectorIPIV& ipiv, MatrixB& b,
+ integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAP >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -85,8 +88,8 @@
 
 // template function to call sptrs
 template< typename MatrixAP, typename VectorIPIV, typename MatrixB >
-inline integer_t sptrs( char const uplo, integer_t const n, MatrixAP& ap,
- VectorIPIV& ipiv, MatrixB& b ) {
+inline integer_t sptrs( const char uplo, const integer_t n,
+ const MatrixAP& ap, const VectorIPIV& ipiv, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     sptrs_impl< value_type >::invoke( uplo, n, ap, ipiv, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stebz.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stebz.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stebz.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,21 +33,21 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void stebz( char const range, char const order, integer_t const n,
- float const vl, float const vu, integer_t const il,
- integer_t const iu, float const abstol, float* d, float* e,
- integer_t& m, integer_t& nsplit, float* w, integer_t* iblock,
- integer_t* isplit, float* work, integer_t* iwork,
- integer_t& info ) {
+ inline void stebz( const char range, const char order, const integer_t n,
+ const float vl, const float vu, const integer_t il,
+ const integer_t iu, const float abstol, const float* d,
+ const float* e, integer_t& m, integer_t& nsplit, float* w,
+ integer_t* iblock, integer_t* isplit, float* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_SSTEBZ( &range, &order, &n, &vl, &vu, &il, &iu, &abstol, d, e,
                 &m, &nsplit, w, iblock, isplit, work, iwork, &info );
     }
- inline void stebz( char const range, char const order, integer_t const n,
- double const vl, double const vu, integer_t const il,
- integer_t const iu, double const abstol, double* d, double* e,
- integer_t& m, integer_t& nsplit, double* w, integer_t* iblock,
- integer_t* isplit, double* work, integer_t* iwork,
- integer_t& info ) {
+ inline void stebz( const char range, const char order, const integer_t n,
+ const double vl, const double vu, const integer_t il,
+ const integer_t iu, const double abstol, const double* d,
+ const double* e, integer_t& m, integer_t& nsplit, double* w,
+ integer_t* iblock, integer_t* isplit, double* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_DSTEBZ( &range, &order, &n, &vl, &vu, &il, &iu, &abstol, d, e,
                 &m, &nsplit, w, iblock, isplit, work, iwork, &info );
     }
@@ -64,10 +64,10 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename VectorIBLOCK, typename VectorISPLIT, typename WORK,
             typename IWORK >
- static void invoke( char const range, char const order, integer_t const n,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, VectorD& d,
- VectorE& e, integer_t& m, integer_t& nsplit, VectorW& w,
+ static void invoke( const char range, const char order, const integer_t n,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, const VectorD& d,
+ const VectorE& e, integer_t& m, integer_t& nsplit, VectorW& w,
             VectorIBLOCK& iblock, VectorISPLIT& isplit, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -102,10 +102,10 @@
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename VectorIBLOCK, typename VectorISPLIT >
- static void invoke( char const range, char const order, integer_t const n,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, VectorD& d,
- VectorE& e, integer_t& m, integer_t& nsplit, VectorW& w,
+ static void invoke( const char range, const char order, const integer_t n,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, const VectorD& d,
+ const VectorE& e, integer_t& m, integer_t& nsplit, VectorW& w,
             VectorIBLOCK& iblock, VectorISPLIT& isplit, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
@@ -117,21 +117,21 @@
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename VectorIBLOCK, typename VectorISPLIT >
- static void invoke( char const range, char const order, integer_t const n,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, VectorD& d,
- VectorE& e, integer_t& m, integer_t& nsplit, VectorW& w,
+ static void invoke( const char range, const char order, const integer_t n,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, const VectorD& d,
+ const VectorE& e, integer_t& m, integer_t& nsplit, VectorW& w,
             VectorIBLOCK& iblock, VectorISPLIT& isplit, integer_t& info,
             optimal_workspace work ) {
         invoke( range, order, n, vl, vu, il, iu, abstol, d, e, m, nsplit, w,
                 iblock, isplit, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 4*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 3*n;
     }
 };
@@ -140,16 +140,15 @@
 // template function to call stebz
 template< typename VectorD, typename VectorE, typename VectorW,
         typename VectorIBLOCK, typename VectorISPLIT, typename Workspace >
-inline integer_t stebz( char const range, char const order,
- integer_t const n, typename traits::type_traits<
+inline integer_t stebz( const char range, const char order,
+ const integer_t n, const typename traits::type_traits<
+ typename traits::vector_traits< VectorD >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::vector_traits<
- VectorD >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
- typename traits::vector_traits<
- VectorD >::value_type >::real_type const abstol, VectorD& d,
- VectorE& e, integer_t& m, integer_t& nsplit, VectorW& w,
+ VectorD >::value_type >::real_type abstol, const VectorD& d,
+ const VectorE& e, integer_t& m, integer_t& nsplit, VectorW& w,
         VectorIBLOCK& iblock, VectorISPLIT& isplit, Workspace work ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);
@@ -161,16 +160,15 @@
 // template function to call stebz, default workspace type
 template< typename VectorD, typename VectorE, typename VectorW,
         typename VectorIBLOCK, typename VectorISPLIT >
-inline integer_t stebz( char const range, char const order,
- integer_t const n, typename traits::type_traits<
- typename traits::vector_traits<
- VectorD >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t stebz( const char range, const char order,
+ const integer_t n, const typename traits::type_traits<
+ typename traits::vector_traits< VectorD >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::vector_traits<
- VectorD >::value_type >::real_type const abstol, VectorD& d,
- VectorE& e, integer_t& m, integer_t& nsplit, VectorW& w,
+ VectorD >::value_type >::real_type abstol, const VectorD& d,
+ const VectorE& e, integer_t& m, integer_t& nsplit, VectorW& w,
         VectorIBLOCK& iblock, VectorISPLIT& isplit ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stedc.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stedc.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stedc.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,33 +37,33 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void stedc( char const compz, integer_t const n, float* d,
- float* e, float* z, integer_t const ldz, float* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void stedc( const char compz, const integer_t n, float* d,
+ float* e, float* z, const integer_t ldz, float* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_SSTEDC( &compz, &n, d, e, z, &ldz, work, &lwork, iwork,
                 &liwork, &info );
     }
- inline void stedc( char const compz, integer_t const n, double* d,
- double* e, double* z, integer_t const ldz, double* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void stedc( const char compz, const integer_t n, double* d,
+ double* e, double* z, const integer_t ldz, double* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_DSTEDC( &compz, &n, d, e, z, &ldz, work, &lwork, iwork,
                 &liwork, &info );
     }
- inline void stedc( char const compz, integer_t const n, float* d,
- float* e, traits::complex_f* z, integer_t const ldz,
- traits::complex_f* work, integer_t const lwork, float* rwork,
- integer_t const lrwork, integer_t* iwork, integer_t const liwork,
+ inline void stedc( const char compz, const integer_t n, float* d,
+ float* e, traits::complex_f* z, const integer_t ldz,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
+ const integer_t lrwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_CSTEDC( &compz, &n, d, e, traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), &lwork, rwork, &lrwork, iwork,
                 &liwork, &info );
     }
- inline void stedc( char const compz, integer_t const n, double* d,
- double* e, traits::complex_d* z, integer_t const ldz,
- traits::complex_d* work, integer_t const lwork, double* rwork,
- integer_t const lrwork, integer_t* iwork, integer_t const liwork,
+ inline void stedc( const char compz, const integer_t n, double* d,
+ double* e, traits::complex_d* z, const integer_t ldz,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
+ const integer_t lrwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_ZSTEDC( &compz, &n, d, e, traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), &lwork, rwork, &lrwork, iwork,
@@ -85,7 +85,7 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ,
             typename WORK, typename IWORK >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -112,7 +112,7 @@
 
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
@@ -123,7 +123,7 @@
 
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         integer_t opt_size_iwork;
@@ -141,7 +141,7 @@
         $MIN_SIZE
     }
 
- static integer_t min_size_iwork( char const compz, integer_t const n ) {
+ static integer_t min_size_iwork( const char compz, const integer_t n ) {
         // some formula
     }
 };
@@ -156,7 +156,7 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ,
             typename WORK, typename RWORK, typename IWORK >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, detail::workspace3< WORK,
             RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -184,7 +184,7 @@
 
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
@@ -198,7 +198,7 @@
 
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         real_type opt_size_rwork;
@@ -224,7 +224,7 @@
         $MIN_SIZE
     }
 
- static integer_t min_size_iwork( char const compz, integer_t const n ) {
+ static integer_t min_size_iwork( const char compz, const integer_t n ) {
         // some formula
     }
 };
@@ -233,7 +233,7 @@
 // template function to call stedc
 template< typename VectorD, typename VectorE, typename MatrixZ,
         typename Workspace >
-inline integer_t stedc( char const compz, integer_t const n, VectorD& d,
+inline integer_t stedc( const char compz, const integer_t n, VectorD& d,
         VectorE& e, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);
@@ -243,7 +243,7 @@
 
 // template function to call stedc, default workspace type
 template< typename VectorD, typename VectorE, typename MatrixZ >
-inline integer_t stedc( char const compz, integer_t const n, VectorD& d,
+inline integer_t stedc( const char compz, const integer_t n, VectorD& d,
         VectorE& e, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stegr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stegr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stegr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,40 +37,40 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void stegr( char const jobz, char const range, integer_t const n,
- float* d, float* e, float const vl, float const vu,
- integer_t const il, integer_t const iu, float const abstol,
- integer_t& m, float* w, float* z, integer_t const ldz,
- integer_t* isuppz, float* work, integer_t const lwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ inline void stegr( const char jobz, const char range, const integer_t n,
+ float* d, float* e, const float vl, const float vu,
+ const integer_t il, const integer_t iu, const float abstol,
+ integer_t& m, float* w, float* z, const integer_t ldz,
+ integer_t* isuppz, float* work, const integer_t lwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_SSTEGR( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &abstol,
                 &m, w, z, &ldz, isuppz, work, &lwork, iwork, &liwork, &info );
     }
- inline void stegr( char const jobz, char const range, integer_t const n,
- double* d, double* e, double const vl, double const vu,
- integer_t const il, integer_t const iu, double const abstol,
- integer_t& m, double* w, double* z, integer_t const ldz,
- integer_t* isuppz, double* work, integer_t const lwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ inline void stegr( const char jobz, const char range, const integer_t n,
+ double* d, double* e, const double vl, const double vu,
+ const integer_t il, const integer_t iu, const double abstol,
+ integer_t& m, double* w, double* z, const integer_t ldz,
+ integer_t* isuppz, double* work, const integer_t lwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_DSTEGR( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &abstol,
                 &m, w, z, &ldz, isuppz, work, &lwork, iwork, &liwork, &info );
     }
- inline void stegr( char const jobz, char const range, integer_t const n,
- float* d, float* e, float const vl, float const vu,
- integer_t const il, integer_t const iu, float const abstol,
- integer_t& m, float* w, traits::complex_f* z, integer_t const ldz,
- integer_t* isuppz, float* work, integer_t const lwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ inline void stegr( const char jobz, const char range, const integer_t n,
+ float* d, float* e, const float vl, const float vu,
+ const integer_t il, const integer_t iu, const float abstol,
+ integer_t& m, float* w, traits::complex_f* z, const integer_t ldz,
+ integer_t* isuppz, float* work, const integer_t lwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_CSTEGR( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &abstol,
                 &m, w, traits::complex_ptr(z), &ldz, isuppz, work, &lwork,
                 iwork, &liwork, &info );
     }
- inline void stegr( char const jobz, char const range, integer_t const n,
- double* d, double* e, double const vl, double const vu,
- integer_t const il, integer_t const iu, double const abstol,
+ inline void stegr( const char jobz, const char range, const integer_t n,
+ double* d, double* e, const double vl, const double vu,
+ const integer_t il, const integer_t iu, const double abstol,
             integer_t& m, double* w, traits::complex_d* z,
- integer_t const ldz, integer_t* isuppz, double* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ const integer_t ldz, integer_t* isuppz, double* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_ZSTEGR( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &abstol,
                 &m, w, traits::complex_ptr(z), &ldz, isuppz, work, &lwork,
@@ -93,9 +93,9 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ, typename WORK,
             typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -130,9 +130,9 @@
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n,
@@ -146,9 +146,9 @@
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
@@ -165,7 +165,7 @@
                 info, workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n, char const jobz ) {
+ static integer_t min_size_work( const integer_t n, const char jobz ) {
         if ( jobz == 'V' ) {
             return std::max( 1, 18*n );
         } else {
@@ -173,7 +173,7 @@
         }
     }
 
- static integer_t min_size_iwork( integer_t const n, char const jobz ) {
+ static integer_t min_size_iwork( const integer_t n, const char jobz ) {
         if ( jobz == 'V' ) {
             return std::max( 1, 10*n );
         } else {
@@ -193,9 +193,9 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ, typename WORK,
             typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -227,9 +227,9 @@
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n,
@@ -243,9 +243,9 @@
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
@@ -262,7 +262,7 @@
                 info, workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n, char const jobz ) {
+ static integer_t min_size_work( const integer_t n, const char jobz ) {
         if ( jobz == 'V' ) {
             return std::max( 1, 18*n );
         } else {
@@ -270,7 +270,7 @@
         }
     }
 
- static integer_t min_size_iwork( integer_t const n, char const jobz ) {
+ static integer_t min_size_iwork( const integer_t n, const char jobz ) {
         if ( jobz == 'V' ) {
             return std::max( 1, 10*n );
         } else {
@@ -283,16 +283,16 @@
 // template function to call stegr
 template< typename VectorD, typename VectorE, typename VectorW,
         typename MatrixZ, typename VectorISUPPZ, typename Workspace >
-inline integer_t stegr( char const jobz, char const range,
- integer_t const n, VectorD& d, VectorE& e,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixZ >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixZ >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t stegr( const char jobz, const char range,
+ const integer_t n, VectorD& d, VectorE& e,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixZ >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixZ >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixZ >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz, Workspace work ) {
+ MatrixZ >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorISUPPZ& isuppz, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);
     stegr_impl< value_type >::invoke( jobz, range, n, d, e, vl, vu, il,
@@ -303,16 +303,16 @@
 // template function to call stegr, default workspace type
 template< typename VectorD, typename VectorE, typename VectorW,
         typename MatrixZ, typename VectorISUPPZ >
-inline integer_t stegr( char const jobz, char const range,
- integer_t const n, VectorD& d, VectorE& e,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixZ >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixZ >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t stegr( const char jobz, const char range,
+ const integer_t n, VectorD& d, VectorE& e,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixZ >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixZ >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixZ >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz ) {
+ MatrixZ >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorISUPPZ& isuppz ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);
     stegr_impl< value_type >::invoke( jobz, range, n, d, e, vl, vu, il,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stein.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stein.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stein.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,32 +36,35 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void stein( integer_t const n, float* d, float* e,
- integer_t const m, float* w, integer_t* iblock, integer_t* isplit,
- float* z, integer_t const ldz, float* work, integer_t* iwork,
- integer_t* ifail, integer_t& info ) {
+ inline void stein( const integer_t n, const float* d, const float* e,
+ const integer_t m, const float* w, const integer_t* iblock,
+ const integer_t* isplit, float* z, const integer_t ldz,
+ float* work, integer_t* iwork, integer_t* ifail,
+ integer_t& info ) {
         LAPACK_SSTEIN( &n, d, e, &m, w, iblock, isplit, z, &ldz, work, iwork,
                 ifail, &info );
     }
- inline void stein( integer_t const n, double* d, double* e,
- integer_t const m, double* w, integer_t* iblock,
- integer_t* isplit, double* z, integer_t const ldz, double* work,
- integer_t* iwork, integer_t* ifail, integer_t& info ) {
+ inline void stein( const integer_t n, const double* d, const double* e,
+ const integer_t m, const double* w, const integer_t* iblock,
+ const integer_t* isplit, double* z, const integer_t ldz,
+ double* work, integer_t* iwork, integer_t* ifail,
+ integer_t& info ) {
         LAPACK_DSTEIN( &n, d, e, &m, w, iblock, isplit, z, &ldz, work, iwork,
                 ifail, &info );
     }
- inline void stein( integer_t const n, float* d, float* e,
- integer_t const m, float* w, integer_t* iblock, integer_t* isplit,
- traits::complex_f* z, integer_t const ldz, float* work,
- integer_t* iwork, integer_t* ifail, integer_t& info ) {
+ inline void stein( const integer_t n, const float* d, const float* e,
+ const integer_t m, const float* w, const integer_t* iblock,
+ const integer_t* isplit, traits::complex_f* z,
+ const integer_t ldz, float* work, integer_t* iwork,
+ integer_t* ifail, integer_t& info ) {
         LAPACK_CSTEIN( &n, d, e, &m, w, iblock, isplit,
                 traits::complex_ptr(z), &ldz, work, iwork, ifail, &info );
     }
- inline void stein( integer_t const n, double* d, double* e,
- integer_t const m, double* w, integer_t* iblock,
- integer_t* isplit, traits::complex_d* z, integer_t const ldz,
- double* work, integer_t* iwork, integer_t* ifail,
- integer_t& info ) {
+ inline void stein( const integer_t n, const double* d, const double* e,
+ const integer_t m, const double* w, const integer_t* iblock,
+ const integer_t* isplit, traits::complex_d* z,
+ const integer_t ldz, double* work, integer_t* iwork,
+ integer_t* ifail, integer_t& info ) {
         LAPACK_ZSTEIN( &n, d, e, &m, w, iblock, isplit,
                 traits::complex_ptr(z), &ldz, work, iwork, ifail, &info );
     }
@@ -82,9 +85,9 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename VectorIBLOCK, typename VectorISPLIT, typename MatrixZ,
             typename VectorIFAIL, typename WORK, typename IWORK >
- static void invoke( integer_t const n, VectorD& d, VectorE& e,
- integer_t const m, VectorW& w, VectorIBLOCK& iblock,
- VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
+ static void invoke( const integer_t n, const VectorD& d, const VectorE& e,
+ const integer_t m, const VectorW& w, const VectorIBLOCK& iblock,
+ const VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
@@ -125,9 +128,9 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename VectorIBLOCK, typename VectorISPLIT, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( integer_t const n, VectorD& d, VectorE& e,
- integer_t const m, VectorW& w, VectorIBLOCK& iblock,
- VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
+ static void invoke( const integer_t n, const VectorD& d, const VectorE& e,
+ const integer_t m, const VectorW& w, const VectorIBLOCK& iblock,
+ const VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
@@ -139,19 +142,19 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename VectorIBLOCK, typename VectorISPLIT, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( integer_t const n, VectorD& d, VectorE& e,
- integer_t const m, VectorW& w, VectorIBLOCK& iblock,
- VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
+ static void invoke( const integer_t n, const VectorD& d, const VectorE& e,
+ const integer_t m, const VectorW& w, const VectorIBLOCK& iblock,
+ const VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, optimal_workspace work ) {
         invoke( n, d, e, m, w, iblock, isplit, z, ifail, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 5*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -167,9 +170,9 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename VectorIBLOCK, typename VectorISPLIT, typename MatrixZ,
             typename VectorIFAIL, typename WORK, typename IWORK >
- static void invoke( integer_t const n, VectorD& d, VectorE& e,
- integer_t const m, VectorW& w, VectorIBLOCK& iblock,
- VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
+ static void invoke( const integer_t n, const VectorD& d, const VectorE& e,
+ const integer_t m, const VectorW& w, const VectorIBLOCK& iblock,
+ const VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
@@ -207,9 +210,9 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename VectorIBLOCK, typename VectorISPLIT, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( integer_t const n, VectorD& d, VectorE& e,
- integer_t const m, VectorW& w, VectorIBLOCK& iblock,
- VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
+ static void invoke( const integer_t n, const VectorD& d, const VectorE& e,
+ const integer_t m, const VectorW& w, const VectorIBLOCK& iblock,
+ const VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
@@ -221,19 +224,19 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename VectorIBLOCK, typename VectorISPLIT, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( integer_t const n, VectorD& d, VectorE& e,
- integer_t const m, VectorW& w, VectorIBLOCK& iblock,
- VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
+ static void invoke( const integer_t n, const VectorD& d, const VectorE& e,
+ const integer_t m, const VectorW& w, const VectorIBLOCK& iblock,
+ const VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, optimal_workspace work ) {
         invoke( n, d, e, m, w, iblock, isplit, z, ifail, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 5*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -243,10 +246,10 @@
 template< typename VectorD, typename VectorE, typename VectorW,
         typename VectorIBLOCK, typename VectorISPLIT, typename MatrixZ,
         typename VectorIFAIL, typename Workspace >
-inline integer_t stein( integer_t const n, VectorD& d, VectorE& e,
- integer_t const m, VectorW& w, VectorIBLOCK& iblock,
- VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail,
- Workspace work ) {
+inline integer_t stein( const integer_t n, const VectorD& d,
+ const VectorE& e, const integer_t m, const VectorW& w,
+ const VectorIBLOCK& iblock, const VectorISPLIT& isplit, MatrixZ& z,
+ VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);
     stein_impl< value_type >::invoke( n, d, e, m, w, iblock, isplit, z,
@@ -258,9 +261,10 @@
 template< typename VectorD, typename VectorE, typename VectorW,
         typename VectorIBLOCK, typename VectorISPLIT, typename MatrixZ,
         typename VectorIFAIL >
-inline integer_t stein( integer_t const n, VectorD& d, VectorE& e,
- integer_t const m, VectorW& w, VectorIBLOCK& iblock,
- VectorISPLIT& isplit, MatrixZ& z, VectorIFAIL& ifail ) {
+inline integer_t stein( const integer_t n, const VectorD& d,
+ const VectorE& e, const integer_t m, const VectorW& w,
+ const VectorIBLOCK& iblock, const VectorISPLIT& isplit, MatrixZ& z,
+ VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);
     stein_impl< value_type >::invoke( n, d, e, m, w, iblock, isplit, z,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stemr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stemr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/stemr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,45 +37,45 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void stemr( char const jobz, char const range, integer_t const n,
- float* d, float* e, float const vl, float const vu,
- integer_t const il, integer_t const iu, integer_t& m, float* w,
- float* z, integer_t const ldz, integer_t const nzc,
+ inline void stemr( const char jobz, const char range, const integer_t n,
+ float* d, float* e, const float vl, const float vu,
+ const integer_t il, const integer_t iu, integer_t& m, float* w,
+ float* z, const integer_t ldz, const integer_t nzc,
             integer_t* isuppz, logical_t& tryrac, float* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_SSTEMR( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &m, w, z,
                 &ldz, &nzc, isuppz, &tryrac, work, &lwork, iwork, &liwork,
                 &info );
     }
- inline void stemr( char const jobz, char const range, integer_t const n,
- double* d, double* e, double const vl, double const vu,
- integer_t const il, integer_t const iu, integer_t& m, double* w,
- double* z, integer_t const ldz, integer_t const nzc,
+ inline void stemr( const char jobz, const char range, const integer_t n,
+ double* d, double* e, const double vl, const double vu,
+ const integer_t il, const integer_t iu, integer_t& m, double* w,
+ double* z, const integer_t ldz, const integer_t nzc,
             integer_t* isuppz, logical_t& tryrac, double* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_DSTEMR( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &m, w, z,
                 &ldz, &nzc, isuppz, &tryrac, work, &lwork, iwork, &liwork,
                 &info );
     }
- inline void stemr( char const jobz, char const range, integer_t const n,
- float* d, float* e, float const vl, float const vu,
- integer_t const il, integer_t const iu, integer_t& m, float* w,
- traits::complex_f* z, integer_t const ldz, integer_t const nzc,
+ inline void stemr( const char jobz, const char range, const integer_t n,
+ float* d, float* e, const float vl, const float vu,
+ const integer_t il, const integer_t iu, integer_t& m, float* w,
+ traits::complex_f* z, const integer_t ldz, const integer_t nzc,
             integer_t* isuppz, logical_t& tryrac, float* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_CSTEMR( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &m, w,
                 traits::complex_ptr(z), &ldz, &nzc, isuppz, &tryrac, work,
                 &lwork, iwork, &liwork, &info );
     }
- inline void stemr( char const jobz, char const range, integer_t const n,
- double* d, double* e, double const vl, double const vu,
- integer_t const il, integer_t const iu, integer_t& m, double* w,
- traits::complex_d* z, integer_t const ldz, integer_t const nzc,
+ inline void stemr( const char jobz, const char range, const integer_t n,
+ double* d, double* e, const double vl, const double vu,
+ const integer_t il, const integer_t iu, integer_t& m, double* w,
+ traits::complex_d* z, const integer_t ldz, const integer_t nzc,
             integer_t* isuppz, logical_t& tryrac, double* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_ZSTEMR( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &m, w,
                 traits::complex_ptr(z), &ldz, &nzc, isuppz, &tryrac, work,
@@ -98,10 +98,10 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ, typename WORK,
             typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, integer_t& m, VectorW& w,
- MatrixZ& z, integer_t const nzc, VectorISUPPZ& isuppz,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, integer_t& m, VectorW& w,
+ MatrixZ& z, const integer_t nzc, VectorISUPPZ& isuppz,
             logical_t& tryrac, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -137,10 +137,10 @@
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, integer_t& m, VectorW& w,
- MatrixZ& z, integer_t const nzc, VectorISUPPZ& isuppz,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, integer_t& m, VectorW& w,
+ MatrixZ& z, const integer_t nzc, VectorISUPPZ& isuppz,
             logical_t& tryrac, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n,
                 jobz ) );
@@ -153,10 +153,10 @@
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, integer_t& m, VectorW& w,
- MatrixZ& z, integer_t const nzc, VectorISUPPZ& isuppz,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, integer_t& m, VectorW& w,
+ MatrixZ& z, const integer_t nzc, VectorISUPPZ& isuppz,
             logical_t& tryrac, integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         integer_t opt_size_iwork;
@@ -173,7 +173,7 @@
                 tryrac, info, workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n, char const jobz ) {
+ static integer_t min_size_work( const integer_t n, const char jobz ) {
         if ( jobz == 'V' ) {
             return std::max( 1, 18*n );
         } else {
@@ -181,7 +181,7 @@
         }
     }
 
- static integer_t min_size_iwork( integer_t const n, char const jobz ) {
+ static integer_t min_size_iwork( const integer_t n, const char jobz ) {
         if ( jobz == 'V' ) {
             return std::max( 1, 10*n );
         } else {
@@ -201,10 +201,10 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ, typename WORK,
             typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, integer_t& m, VectorW& w,
- MatrixZ& z, integer_t const nzc, VectorISUPPZ& isuppz,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, integer_t& m, VectorW& w,
+ MatrixZ& z, const integer_t nzc, VectorISUPPZ& isuppz,
             logical_t& tryrac, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -237,10 +237,10 @@
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, integer_t& m, VectorW& w,
- MatrixZ& z, integer_t const nzc, VectorISUPPZ& isuppz,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, integer_t& m, VectorW& w,
+ MatrixZ& z, const integer_t nzc, VectorISUPPZ& isuppz,
             logical_t& tryrac, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n,
                 jobz ) );
@@ -253,10 +253,10 @@
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, integer_t& m, VectorW& w,
- MatrixZ& z, integer_t const nzc, VectorISUPPZ& isuppz,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, integer_t& m, VectorW& w,
+ MatrixZ& z, const integer_t nzc, VectorISUPPZ& isuppz,
             logical_t& tryrac, integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         integer_t opt_size_iwork;
@@ -273,7 +273,7 @@
                 tryrac, info, workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n, char const jobz ) {
+ static integer_t min_size_work( const integer_t n, const char jobz ) {
         if ( jobz == 'V' ) {
             return std::max( 1, 18*n );
         } else {
@@ -281,7 +281,7 @@
         }
     }
 
- static integer_t min_size_iwork( integer_t const n, char const jobz ) {
+ static integer_t min_size_iwork( const integer_t n, const char jobz ) {
         if ( jobz == 'V' ) {
             return std::max( 1, 10*n );
         } else {
@@ -294,14 +294,14 @@
 // template function to call stemr
 template< typename VectorD, typename VectorE, typename VectorW,
         typename MatrixZ, typename VectorISUPPZ, typename Workspace >
-inline integer_t stemr( char const jobz, char const range,
- integer_t const n, VectorD& d, VectorE& e,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixZ >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixZ >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, integer_t& m, VectorW& w, MatrixZ& z,
- integer_t const nzc, VectorISUPPZ& isuppz, logical_t& tryrac,
+inline integer_t stemr( const char jobz, const char range,
+ const integer_t n, VectorD& d, VectorE& e,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixZ >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixZ >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, integer_t& m, VectorW& w, MatrixZ& z,
+ const integer_t nzc, VectorISUPPZ& isuppz, logical_t& tryrac,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);
@@ -313,14 +313,14 @@
 // template function to call stemr, default workspace type
 template< typename VectorD, typename VectorE, typename VectorW,
         typename MatrixZ, typename VectorISUPPZ >
-inline integer_t stemr( char const jobz, char const range,
- integer_t const n, VectorD& d, VectorE& e,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixZ >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixZ >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, integer_t& m, VectorW& w, MatrixZ& z,
- integer_t const nzc, VectorISUPPZ& isuppz, logical_t& tryrac ) {
+inline integer_t stemr( const char jobz, const char range,
+ const integer_t n, VectorD& d, VectorE& e,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixZ >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixZ >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, integer_t& m, VectorW& w, MatrixZ& z,
+ const integer_t nzc, VectorISUPPZ& isuppz, logical_t& tryrac ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);
     stemr_impl< value_type >::invoke( jobz, range, n, d, e, vl, vu, il,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/steqr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/steqr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/steqr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,24 +36,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void steqr( char const compz, integer_t const n, float* d,
- float* e, float* z, integer_t const ldz, float* work,
+ inline void steqr( const char compz, const integer_t n, float* d,
+ float* e, float* z, const integer_t ldz, float* work,
             integer_t& info ) {
         LAPACK_SSTEQR( &compz, &n, d, e, z, &ldz, work, &info );
     }
- inline void steqr( char const compz, integer_t const n, double* d,
- double* e, double* z, integer_t const ldz, double* work,
+ inline void steqr( const char compz, const integer_t n, double* d,
+ double* e, double* z, const integer_t ldz, double* work,
             integer_t& info ) {
         LAPACK_DSTEQR( &compz, &n, d, e, z, &ldz, work, &info );
     }
- inline void steqr( char const compz, integer_t const n, float* d,
- float* e, traits::complex_f* z, integer_t const ldz, float* work,
+ inline void steqr( const char compz, const integer_t n, float* d,
+ float* e, traits::complex_f* z, const integer_t ldz, float* work,
             integer_t& info ) {
         LAPACK_CSTEQR( &compz, &n, d, e, traits::complex_ptr(z), &ldz, work,
                 &info );
     }
- inline void steqr( char const compz, integer_t const n, double* d,
- double* e, traits::complex_d* z, integer_t const ldz,
+ inline void steqr( const char compz, const integer_t n, double* d,
+ double* e, traits::complex_d* z, const integer_t ldz,
             double* work, integer_t& info ) {
         LAPACK_ZSTEQR( &compz, &n, d, e, traits::complex_ptr(z), &ldz, work,
                 &info );
@@ -74,7 +74,7 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ,
             typename WORK >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, detail::workspace1<
             WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -96,7 +96,7 @@
 
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
@@ -105,7 +105,7 @@
 
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         invoke( compz, n, d, e, z, info, minimal_workspace() );
     }
@@ -125,7 +125,7 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ,
             typename WORK >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, detail::workspace1<
             WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -144,7 +144,7 @@
 
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
@@ -153,7 +153,7 @@
 
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const compz, integer_t const n, VectorD& d,
+ static void invoke( const char compz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         invoke( compz, n, d, e, z, info, minimal_workspace() );
     }
@@ -167,7 +167,7 @@
 // template function to call steqr
 template< typename VectorD, typename VectorE, typename MatrixZ,
         typename Workspace >
-inline integer_t steqr( char const compz, integer_t const n, VectorD& d,
+inline integer_t steqr( const char compz, const integer_t n, VectorD& d,
         VectorE& e, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);
@@ -177,7 +177,7 @@
 
 // template function to call steqr, default workspace type
 template< typename VectorD, typename VectorE, typename MatrixZ >
-inline integer_t steqr( char const compz, integer_t const n, VectorD& d,
+inline integer_t steqr( const char compz, const integer_t n, VectorD& d,
         VectorE& e, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixZ >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sterf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sterf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sterf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,11 +31,11 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sterf( integer_t const n, float* d, float* e,
+ inline void sterf( const integer_t n, float* d, float* e,
             integer_t& info ) {
         LAPACK_SSTERF( &n, d, e, &info );
     }
- inline void sterf( integer_t const n, double* d, double* e,
+ inline void sterf( const integer_t n, double* d, double* e,
             integer_t& info ) {
         LAPACK_DSTERF( &n, d, e, &info );
     }
@@ -50,7 +50,7 @@
 
     // templated specialization
     template< typename VectorD, typename VectorE >
- static void invoke( integer_t const n, VectorD& d, VectorE& e,
+ static void invoke( const integer_t n, VectorD& d, VectorE& e,
             integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
@@ -65,7 +65,7 @@
 
 // template function to call sterf
 template< typename VectorD, typename VectorE >
-inline integer_t sterf( integer_t const n, VectorD& d, VectorE& e ) {
+inline integer_t sterf( const integer_t n, VectorD& d, VectorE& e ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);
     sterf_impl< value_type >::invoke( n, d, e, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sycon.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sycon.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sycon.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,29 +36,29 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sycon( char const uplo, integer_t const n, float* a,
- integer_t const lda, integer_t* ipiv, float const anorm,
+ inline void sycon( const char uplo, const integer_t n, const float* a,
+ const integer_t lda, const integer_t* ipiv, const float anorm,
             float& rcond, float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SSYCON( &uplo, &n, a, &lda, ipiv, &anorm, &rcond, work, iwork,
                 &info );
     }
- inline void sycon( char const uplo, integer_t const n, double* a,
- integer_t const lda, integer_t* ipiv, double const anorm,
+ inline void sycon( const char uplo, const integer_t n, const double* a,
+ const integer_t lda, const integer_t* ipiv, const double anorm,
             double& rcond, double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DSYCON( &uplo, &n, a, &lda, ipiv, &anorm, &rcond, work, iwork,
                 &info );
     }
- inline void sycon( char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t* ipiv,
- float const anorm, float& rcond, traits::complex_f* work,
- integer_t& info ) {
+ inline void sycon( const char uplo, const integer_t n,
+ const traits::complex_f* a, const integer_t lda,
+ const integer_t* ipiv, const float anorm, float& rcond,
+ traits::complex_f* work, integer_t& info ) {
         LAPACK_CSYCON( &uplo, &n, traits::complex_ptr(a), &lda, ipiv, &anorm,
                 &rcond, traits::complex_ptr(work), &info );
     }
- inline void sycon( char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t* ipiv,
- double const anorm, double& rcond, traits::complex_d* work,
- integer_t& info ) {
+ inline void sycon( const char uplo, const integer_t n,
+ const traits::complex_d* a, const integer_t lda,
+ const integer_t* ipiv, const double anorm, double& rcond,
+ traits::complex_d* work, integer_t& info ) {
         LAPACK_ZSYCON( &uplo, &n, traits::complex_ptr(a), &lda, ipiv, &anorm,
                 &rcond, traits::complex_ptr(work), &info );
     }
@@ -78,9 +78,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename WORK,
             typename IWORK >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- real_type const anorm, real_type& rcond, integer_t& info,
- detail::workspace2< WORK, IWORK > work ) {
+ static void invoke( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
+ integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_ASSERT( uplo == 'U' || uplo == 'L' );
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
         BOOST_ASSERT( traits::leading_dimension(a) >= std::max(1,
@@ -100,9 +100,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- real_type const anorm, real_type& rcond, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
@@ -113,17 +113,17 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- real_type const anorm, real_type& rcond, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
+ integer_t& info, optimal_workspace work ) {
         invoke( uplo, a, ipiv, anorm, rcond, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -137,9 +137,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename WORK >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- real_type const anorm, real_type& rcond, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_ASSERT( uplo == 'U' || uplo == 'L' );
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
         BOOST_ASSERT( traits::leading_dimension(a) >= std::max(1,
@@ -156,9 +156,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- real_type const anorm, real_type& rcond, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         invoke( uplo, a, ipiv, anorm, rcond, info, workspace( tmp_work ) );
@@ -166,13 +166,13 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- real_type const anorm, real_type& rcond, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const real_type anorm, real_type& rcond,
+ integer_t& info, optimal_workspace work ) {
         invoke( uplo, a, ipiv, anorm, rcond, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 };
@@ -180,9 +180,10 @@
 
 // template function to call sycon
 template< typename MatrixA, typename VectorIPIV, typename Workspace >
-inline integer_t sycon( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const anorm,
+inline integer_t sycon( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const typename traits::type_traits<
+ typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -194,9 +195,10 @@
 
 // template function to call sycon, default workspace type
 template< typename MatrixA, typename VectorIPIV >
-inline integer_t sycon( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const anorm,
+inline integer_t sycon( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, const typename traits::type_traits<
+ typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type anorm,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sygst.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sygst.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sygst.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,14 +31,14 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sygst( integer_t const itype, char const uplo,
- integer_t const n, float* a, integer_t const lda, float* b,
- integer_t const ldb, integer_t& info ) {
+ inline void sygst( const integer_t itype, const char uplo,
+ const integer_t n, float* a, const integer_t lda, const float* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_SSYGST( &itype, &uplo, &n, a, &lda, b, &ldb, &info );
     }
- inline void sygst( integer_t const itype, char const uplo,
- integer_t const n, double* a, integer_t const lda, double* b,
- integer_t const ldb, integer_t& info ) {
+ inline void sygst( const integer_t itype, const char uplo,
+ const integer_t n, double* a, const integer_t lda,
+ const double* b, const integer_t ldb, integer_t& info ) {
         LAPACK_DSYGST( &itype, &uplo, &n, a, &lda, b, &ldb, &info );
     }
 }
@@ -52,8 +52,8 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB >
- static void invoke( integer_t const itype, integer_t const n, MatrixA& a,
- MatrixB& b, integer_t& info ) {
+ static void invoke( const integer_t itype, const integer_t n, MatrixA& a,
+ const MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -72,8 +72,8 @@
 
 // template function to call sygst
 template< typename MatrixA, typename MatrixB >
-inline integer_t sygst( integer_t const itype, integer_t const n,
- MatrixA& a, MatrixB& b ) {
+inline integer_t sygst( const integer_t itype, const integer_t n,
+ MatrixA& a, const MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     sygst_impl< value_type >::invoke( itype, n, a, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/syrfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/syrfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/syrfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,39 +36,45 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void syrfs( char const uplo, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* af,
- integer_t const ldaf, integer_t* ipiv, float* b,
- integer_t const ldb, float* x, integer_t const ldx, float* ferr,
- float* berr, float* work, integer_t* iwork, integer_t& info ) {
+ inline void syrfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const float* a, const integer_t lda,
+ const float* af, const integer_t ldaf, const integer_t* ipiv,
+ const float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float* ferr, float* berr, float* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_SSYRFS( &uplo, &n, &nrhs, a, &lda, af, &ldaf, ipiv, b, &ldb, x,
                 &ldx, ferr, berr, work, iwork, &info );
     }
- inline void syrfs( char const uplo, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* af,
- integer_t const ldaf, integer_t* ipiv, double* b,
- integer_t const ldb, double* x, integer_t const ldx, double* ferr,
- double* berr, double* work, integer_t* iwork, integer_t& info ) {
+ inline void syrfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const double* a, const integer_t lda,
+ const double* af, const integer_t ldaf, const integer_t* ipiv,
+ const double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double* ferr, double* berr, double* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_DSYRFS( &uplo, &n, &nrhs, a, &lda, af, &ldaf, ipiv, b, &ldb, x,
                 &ldx, ferr, berr, work, iwork, &info );
     }
- inline void syrfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* af, integer_t const ldaf, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* x,
- integer_t const ldx, float* ferr, float* berr,
- traits::complex_f* work, float* rwork, integer_t& info ) {
+ inline void syrfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* a,
+ const integer_t lda, const traits::complex_f* af,
+ const integer_t ldaf, const integer_t* ipiv,
+ const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float* ferr,
+ float* berr, traits::complex_f* work, float* rwork,
+ integer_t& info ) {
         LAPACK_CSYRFS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(af), &ldaf, ipiv, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void syrfs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* af, integer_t const ldaf, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, double* ferr, double* berr,
- traits::complex_d* work, double* rwork, integer_t& info ) {
+ inline void syrfs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ const integer_t lda, const traits::complex_d* af,
+ const integer_t ldaf, const integer_t* ipiv,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double* ferr,
+ double* berr, traits::complex_d* work, double* rwork,
+ integer_t& info ) {
         LAPACK_ZSYRFS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(af), &ldaf, ipiv, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, ferr, berr,
@@ -91,9 +97,10 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename IWORK >
- static void invoke( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, detail::workspace2< WORK, IWORK > work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixAF >::value_type >::value) );
@@ -145,9 +152,10 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
@@ -160,17 +168,18 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( a, af, ipiv, b, x, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -186,9 +195,10 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, detail::workspace2< WORK, RWORK > work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -237,9 +247,10 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork(
@@ -252,17 +263,18 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( a, af, ipiv, b, x, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -272,9 +284,9 @@
 template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t syrfs( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- Workspace work ) {
+inline integer_t syrfs( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     syrfs_impl< value_type >::invoke( a, af, ipiv, b, x, ferr, berr,
@@ -286,8 +298,9 @@
 template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t syrfs( MatrixA& a, MatrixAF& af, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
+inline integer_t syrfs( const MatrixA& a, const MatrixAF& af,
+ const VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     syrfs_impl< value_type >::invoke( a, af, ipiv, b, x, ferr, berr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,14 +34,14 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sytrd( char const uplo, integer_t const n, float* a,
- integer_t const lda, float* d, float* e, float* tau, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void sytrd( const char uplo, const integer_t n, float* a,
+ const integer_t lda, float* d, float* e, float* tau, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SSYTRD( &uplo, &n, a, &lda, d, e, tau, work, &lwork, &info );
     }
- inline void sytrd( char const uplo, integer_t const n, double* a,
- integer_t const lda, double* d, double* e, double* tau,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void sytrd( const char uplo, const integer_t n, double* a,
+ const integer_t lda, double* d, double* e, double* tau,
+ double* work, const integer_t lwork, integer_t& info ) {
         LAPACK_DSYTRD( &uplo, &n, a, &lda, d, e, tau, work, &lwork, &info );
     }
 }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,25 +37,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sytrf( char const uplo, integer_t const n, float* a,
- integer_t const lda, integer_t* ipiv, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void sytrf( const char uplo, const integer_t n, float* a,
+ const integer_t lda, integer_t* ipiv, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SSYTRF( &uplo, &n, a, &lda, ipiv, work, &lwork, &info );
     }
- inline void sytrf( char const uplo, integer_t const n, double* a,
- integer_t const lda, integer_t* ipiv, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void sytrf( const char uplo, const integer_t n, double* a,
+ const integer_t lda, integer_t* ipiv, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DSYTRF( &uplo, &n, a, &lda, ipiv, work, &lwork, &info );
     }
- inline void sytrf( char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t* ipiv,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void sytrf( const char uplo, const integer_t n,
+ traits::complex_f* a, const integer_t lda, integer_t* ipiv,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CSYTRF( &uplo, &n, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void sytrf( char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t* ipiv,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void sytrf( const char uplo, const integer_t n,
+ traits::complex_d* a, const integer_t lda, integer_t* ipiv,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZSYTRF( &uplo, &n, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(work), &lwork, &info );
     }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytri.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytri.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytri.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,24 +36,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sytri( char const uplo, integer_t const n, float* a,
- integer_t const lda, integer_t* ipiv, float* work,
+ inline void sytri( const char uplo, const integer_t n, float* a,
+ const integer_t lda, const integer_t* ipiv, float* work,
             integer_t& info ) {
         LAPACK_SSYTRI( &uplo, &n, a, &lda, ipiv, work, &info );
     }
- inline void sytri( char const uplo, integer_t const n, double* a,
- integer_t const lda, integer_t* ipiv, double* work,
+ inline void sytri( const char uplo, const integer_t n, double* a,
+ const integer_t lda, const integer_t* ipiv, double* work,
             integer_t& info ) {
         LAPACK_DSYTRI( &uplo, &n, a, &lda, ipiv, work, &info );
     }
- inline void sytri( char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t* ipiv,
+ inline void sytri( const char uplo, const integer_t n,
+ traits::complex_f* a, const integer_t lda, const integer_t* ipiv,
             traits::complex_f* work, integer_t& info ) {
         LAPACK_CSYTRI( &uplo, &n, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(work), &info );
     }
- inline void sytri( char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t* ipiv,
+ inline void sytri( const char uplo, const integer_t n,
+ traits::complex_d* a, const integer_t lda, const integer_t* ipiv,
             traits::complex_d* work, integer_t& info ) {
         LAPACK_ZSYTRI( &uplo, &n, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(work), &info );
@@ -73,7 +73,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename WORK >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
+ static void invoke( const char uplo, MatrixA& a, const VectorIPIV& ipiv,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_ASSERT( uplo == 'U' || uplo == 'L' );
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
@@ -91,7 +91,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
+ static void invoke( const char uplo, MatrixA& a, const VectorIPIV& ipiv,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
@@ -100,12 +100,12 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
+ static void invoke( const char uplo, MatrixA& a, const VectorIPIV& ipiv,
             integer_t& info, optimal_workspace work ) {
         invoke( uplo, a, ipiv, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n;
     }
 };
@@ -119,7 +119,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename WORK >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
+ static void invoke( const char uplo, MatrixA& a, const VectorIPIV& ipiv,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_ASSERT( uplo == 'U' || uplo == 'L' );
         BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
@@ -137,7 +137,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
+ static void invoke( const char uplo, MatrixA& a, const VectorIPIV& ipiv,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
@@ -146,12 +146,12 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorIPIV >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
+ static void invoke( const char uplo, MatrixA& a, const VectorIPIV& ipiv,
             integer_t& info, optimal_workspace work ) {
         invoke( uplo, a, ipiv, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 };
@@ -159,8 +159,8 @@
 
 // template function to call sytri
 template< typename MatrixA, typename VectorIPIV, typename Workspace >
-inline integer_t sytri( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- Workspace work ) {
+inline integer_t sytri( const char uplo, MatrixA& a,
+ const VectorIPIV& ipiv, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     sytri_impl< value_type >::invoke( uplo, a, ipiv, info, work );
@@ -169,7 +169,8 @@
 
 // template function to call sytri, default workspace type
 template< typename MatrixA, typename VectorIPIV >
-inline integer_t sytri( char const uplo, MatrixA& a, VectorIPIV& ipiv ) {
+inline integer_t sytri( const char uplo, MatrixA& a,
+ const VectorIPIV& ipiv ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     sytri_impl< value_type >::invoke( uplo, a, ipiv, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/sytrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,28 +31,29 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sytrs( char const uplo, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda,
- integer_t* ipiv, float* b, integer_t const ldb, integer_t& info ) {
+ inline void sytrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const float* a, const integer_t lda,
+ const integer_t* ipiv, float* b, const integer_t ldb,
+ integer_t& info ) {
         LAPACK_SSYTRS( &uplo, &n, &nrhs, a, &lda, ipiv, b, &ldb, &info );
     }
- inline void sytrs( char const uplo, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda,
- integer_t* ipiv, double* b, integer_t const ldb,
+ inline void sytrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const double* a, const integer_t lda,
+ const integer_t* ipiv, double* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_DSYTRS( &uplo, &n, &nrhs, a, &lda, ipiv, b, &ldb, &info );
     }
- inline void sytrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- integer_t* ipiv, traits::complex_f* b, integer_t const ldb,
- integer_t& info ) {
+ inline void sytrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* a,
+ const integer_t lda, const integer_t* ipiv, traits::complex_f* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_CSYTRS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void sytrs( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- integer_t* ipiv, traits::complex_d* b, integer_t const ldb,
- integer_t& info ) {
+ inline void sytrs( const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ const integer_t lda, const integer_t* ipiv, traits::complex_d* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_ZSYTRS( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -67,8 +68,8 @@
 
     // templated specialization
     template< typename MatrixA, typename VectorIPIV, typename MatrixB >
- static void invoke( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- MatrixB& b, integer_t& info ) {
+ static void invoke( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -92,8 +93,8 @@
 
 // template function to call sytrs
 template< typename MatrixA, typename VectorIPIV, typename MatrixB >
-inline integer_t sytrs( char const uplo, MatrixA& a, VectorIPIV& ipiv,
- MatrixB& b ) {
+inline integer_t sytrs( const char uplo, const MatrixA& a,
+ const VectorIPIV& ipiv, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     sytrs_impl< value_type >::invoke( uplo, a, ipiv, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbcon.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbcon.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbcon.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,31 +36,31 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tbcon( char const norm, char const uplo, char const diag,
- integer_t const n, integer_t const kd, float* ab,
- integer_t const ldab, float& rcond, float* work, integer_t* iwork,
+ inline void tbcon( const char norm, const char uplo, const char diag,
+ const integer_t n, const integer_t kd, const float* ab,
+ const integer_t ldab, float& rcond, float* work, integer_t* iwork,
             integer_t& info ) {
         LAPACK_STBCON( &norm, &uplo, &diag, &n, &kd, ab, &ldab, &rcond, work,
                 iwork, &info );
     }
- inline void tbcon( char const norm, char const uplo, char const diag,
- integer_t const n, integer_t const kd, double* ab,
- integer_t const ldab, double& rcond, double* work,
+ inline void tbcon( const char norm, const char uplo, const char diag,
+ const integer_t n, const integer_t kd, const double* ab,
+ const integer_t ldab, double& rcond, double* work,
             integer_t* iwork, integer_t& info ) {
         LAPACK_DTBCON( &norm, &uplo, &diag, &n, &kd, ab, &ldab, &rcond, work,
                 iwork, &info );
     }
- inline void tbcon( char const norm, char const uplo, char const diag,
- integer_t const n, integer_t const kd, traits::complex_f* ab,
- integer_t const ldab, float& rcond, traits::complex_f* work,
- float* rwork, integer_t& info ) {
+ inline void tbcon( const char norm, const char uplo, const char diag,
+ const integer_t n, const integer_t kd,
+ const traits::complex_f* ab, const integer_t ldab, float& rcond,
+ traits::complex_f* work, float* rwork, integer_t& info ) {
         LAPACK_CTBCON( &norm, &uplo, &diag, &n, &kd, traits::complex_ptr(ab),
                 &ldab, &rcond, traits::complex_ptr(work), rwork, &info );
     }
- inline void tbcon( char const norm, char const uplo, char const diag,
- integer_t const n, integer_t const kd, traits::complex_d* ab,
- integer_t const ldab, double& rcond, traits::complex_d* work,
- double* rwork, integer_t& info ) {
+ inline void tbcon( const char norm, const char uplo, const char diag,
+ const integer_t n, const integer_t kd,
+ const traits::complex_d* ab, const integer_t ldab, double& rcond,
+ traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZTBCON( &norm, &uplo, &diag, &n, &kd, traits::complex_ptr(ab),
                 &ldab, &rcond, traits::complex_ptr(work), rwork, &info );
     }
@@ -79,8 +79,8 @@
 
     // user-defined workspace specialization
     template< typename MatrixAB, typename WORK, typename IWORK >
- static void invoke( char const norm, char const uplo, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab,
+ static void invoke( const char norm, const char uplo, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
             real_type& rcond, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
         BOOST_ASSERT( norm == '1' || norm == 'O' || norm == 'I' );
@@ -101,8 +101,8 @@
 
     // minimal workspace specialization
     template< typename MatrixAB >
- static void invoke( char const norm, char const uplo, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab,
+ static void invoke( const char norm, const char uplo, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
             real_type& rcond, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
@@ -112,18 +112,18 @@
 
     // optimal workspace specialization
     template< typename MatrixAB >
- static void invoke( char const norm, char const uplo, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab,
+ static void invoke( const char norm, const char uplo, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
             real_type& rcond, integer_t& info, optimal_workspace work ) {
         invoke( norm, uplo, diag, n, kd, ab, rcond, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -137,8 +137,8 @@
 
     // user-defined workspace specialization
     template< typename MatrixAB, typename WORK, typename RWORK >
- static void invoke( char const norm, char const uplo, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab,
+ static void invoke( const char norm, const char uplo, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
             real_type& rcond, integer_t& info, detail::workspace2< WORK,
             RWORK > work ) {
         BOOST_ASSERT( norm == '1' || norm == 'O' || norm == 'I' );
@@ -159,8 +159,8 @@
 
     // minimal workspace specialization
     template< typename MatrixAB >
- static void invoke( char const norm, char const uplo, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab,
+ static void invoke( const char norm, const char uplo, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
             real_type& rcond, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -170,18 +170,18 @@
 
     // optimal workspace specialization
     template< typename MatrixAB >
- static void invoke( char const norm, char const uplo, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab,
+ static void invoke( const char norm, const char uplo, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
             real_type& rcond, integer_t& info, optimal_workspace work ) {
         invoke( norm, uplo, diag, n, kd, ab, rcond, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -189,9 +189,10 @@
 
 // template function to call tbcon
 template< typename MatrixAB, typename Workspace >
-inline integer_t tbcon( char const norm, char const uplo,
- char const diag, integer_t const n, integer_t const kd, MatrixAB& ab,
- typename traits::type_traits< typename traits::matrix_traits<
+inline integer_t tbcon( const char norm, const char uplo,
+ const char diag, const integer_t n, const integer_t kd,
+ const MatrixAB& ab, typename traits::type_traits<
+ typename traits::matrix_traits<
         MatrixAB >::value_type >::real_type& rcond, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
@@ -202,9 +203,10 @@
 
 // template function to call tbcon, default workspace type
 template< typename MatrixAB >
-inline integer_t tbcon( char const norm, char const uplo,
- char const diag, integer_t const n, integer_t const kd, MatrixAB& ab,
- typename traits::type_traits< typename traits::matrix_traits<
+inline integer_t tbcon( const char norm, const char uplo,
+ const char diag, const integer_t n, const integer_t kd,
+ const MatrixAB& ab, typename traits::type_traits<
+ typename traits::matrix_traits<
         MatrixAB >::value_type >::real_type& rcond ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbrfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbrfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbrfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,39 +36,43 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tbrfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, integer_t const nrhs,
- float* ab, integer_t const ldab, float* b, integer_t const ldb,
- float* x, integer_t const ldx, float* ferr, float* berr,
- float* work, integer_t* iwork, integer_t& info ) {
+ inline void tbrfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const integer_t nrhs,
+ const float* ab, const integer_t ldab, const float* b,
+ const integer_t ldb, const float* x, const integer_t ldx,
+ float* ferr, float* berr, float* work, integer_t* iwork,
+ integer_t& info ) {
         LAPACK_STBRFS( &uplo, &trans, &diag, &n, &kd, &nrhs, ab, &ldab, b,
                 &ldb, x, &ldx, ferr, berr, work, iwork, &info );
     }
- inline void tbrfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, integer_t const nrhs,
- double* ab, integer_t const ldab, double* b, integer_t const ldb,
- double* x, integer_t const ldx, double* ferr, double* berr,
- double* work, integer_t* iwork, integer_t& info ) {
+ inline void tbrfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const integer_t nrhs,
+ const double* ab, const integer_t ldab, const double* b,
+ const integer_t ldb, const double* x, const integer_t ldx,
+ double* ferr, double* berr, double* work, integer_t* iwork,
+ integer_t& info ) {
         LAPACK_DTBRFS( &uplo, &trans, &diag, &n, &kd, &nrhs, ab, &ldab, b,
                 &ldb, x, &ldx, ferr, berr, work, iwork, &info );
     }
- inline void tbrfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, integer_t const nrhs,
- traits::complex_f* ab, integer_t const ldab, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* x, integer_t const ldx,
- float* ferr, float* berr, traits::complex_f* work, float* rwork,
+ inline void tbrfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const integer_t nrhs,
+ const traits::complex_f* ab, const integer_t ldab,
+ const traits::complex_f* b, const integer_t ldb,
+ const traits::complex_f* x, const integer_t ldx, float* ferr,
+ float* berr, traits::complex_f* work, float* rwork,
             integer_t& info ) {
         LAPACK_CTBRFS( &uplo, &trans, &diag, &n, &kd, &nrhs,
                 traits::complex_ptr(ab), &ldab, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void tbrfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, integer_t const nrhs,
- traits::complex_d* ab, integer_t const ldab, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* x, integer_t const ldx,
- double* ferr, double* berr, traits::complex_d* work,
- double* rwork, integer_t& info ) {
+ inline void tbrfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const integer_t nrhs,
+ const traits::complex_d* ab, const integer_t ldab,
+ const traits::complex_d* b, const integer_t ldb,
+ const traits::complex_d* x, const integer_t ldx, double* ferr,
+ double* berr, traits::complex_d* work, double* rwork,
+ integer_t& info ) {
         LAPACK_ZTBRFS( &uplo, &trans, &diag, &n, &kd, &nrhs,
                 traits::complex_ptr(ab), &ldab, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, ferr, berr,
@@ -91,10 +95,11 @@
     template< typename MatrixAB, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR, typename WORK,
             typename IWORK >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab, MatrixB& b,
- MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- detail::workspace2< WORK, IWORK > work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
+ const MatrixB& b, const MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
+ IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -135,10 +140,10 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab, MatrixB& b,
- MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
+ const MatrixB& b, const MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
         invoke( uplo, trans, diag, n, kd, ab, b, x, ferr, berr, info,
@@ -148,19 +153,19 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab, MatrixB& b,
- MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
+ const MatrixB& b, const MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr, integer_t& info, optimal_workspace work ) {
         invoke( uplo, trans, diag, n, kd, ab, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -176,10 +181,11 @@
     template< typename MatrixAB, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR, typename WORK,
             typename RWORK >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab, MatrixB& b,
- MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- detail::workspace2< WORK, RWORK > work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
+ const MatrixB& b, const MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
+ RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -217,10 +223,10 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab, MatrixB& b,
- MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
+ const MatrixB& b, const MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
         invoke( uplo, trans, diag, n, kd, ab, b, x, ferr, berr, info,
@@ -230,19 +236,19 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab, MatrixB& b,
- MatrixX& x, VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
+ const MatrixB& b, const MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr, integer_t& info, optimal_workspace work ) {
         invoke( uplo, trans, diag, n, kd, ab, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -251,10 +257,10 @@
 // template function to call tbrfs
 template< typename MatrixAB, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR, typename Workspace >
-inline integer_t tbrfs( char const uplo, char const trans,
- char const diag, integer_t const n, integer_t const kd, MatrixAB& ab,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
- Workspace work ) {
+inline integer_t tbrfs( const char uplo, const char trans,
+ const char diag, const integer_t n, const integer_t kd,
+ const MatrixAB& ab, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     tbrfs_impl< value_type >::invoke( uplo, trans, diag, n, kd, ab, b, x,
@@ -265,9 +271,10 @@
 // template function to call tbrfs, default workspace type
 template< typename MatrixAB, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR >
-inline integer_t tbrfs( char const uplo, char const trans,
- char const diag, integer_t const n, integer_t const kd, MatrixAB& ab,
- MatrixB& b, MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
+inline integer_t tbrfs( const char uplo, const char trans,
+ const char diag, const integer_t n, const integer_t kd,
+ const MatrixAB& ab, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     tbrfs_impl< value_type >::invoke( uplo, trans, diag, n, kd, ab, b, x,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbtrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbtrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tbtrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,32 +31,32 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tbtrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, integer_t const nrhs,
- float* ab, integer_t const ldab, float* b, integer_t const ldb,
- integer_t& info ) {
+ inline void tbtrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const integer_t nrhs,
+ const float* ab, const integer_t ldab, float* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_STBTRS( &uplo, &trans, &diag, &n, &kd, &nrhs, ab, &ldab, b,
                 &ldb, &info );
     }
- inline void tbtrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, integer_t const nrhs,
- double* ab, integer_t const ldab, double* b, integer_t const ldb,
- integer_t& info ) {
+ inline void tbtrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const integer_t nrhs,
+ const double* ab, const integer_t ldab, double* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_DTBTRS( &uplo, &trans, &diag, &n, &kd, &nrhs, ab, &ldab, b,
                 &ldb, &info );
     }
- inline void tbtrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, integer_t const nrhs,
- traits::complex_f* ab, integer_t const ldab, traits::complex_f* b,
- integer_t const ldb, integer_t& info ) {
+ inline void tbtrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const integer_t nrhs,
+ const traits::complex_f* ab, const integer_t ldab,
+ traits::complex_f* b, const integer_t ldb, integer_t& info ) {
         LAPACK_CTBTRS( &uplo, &trans, &diag, &n, &kd, &nrhs,
                 traits::complex_ptr(ab), &ldab, traits::complex_ptr(b), &ldb,
                 &info );
     }
- inline void tbtrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, integer_t const nrhs,
- traits::complex_d* ab, integer_t const ldab, traits::complex_d* b,
- integer_t const ldb, integer_t& info ) {
+ inline void tbtrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const integer_t nrhs,
+ const traits::complex_d* ab, const integer_t ldab,
+ traits::complex_d* b, const integer_t ldb, integer_t& info ) {
         LAPACK_ZTBTRS( &uplo, &trans, &diag, &n, &kd, &nrhs,
                 traits::complex_ptr(ab), &ldab, traits::complex_ptr(b), &ldb,
                 &info );
@@ -72,9 +72,9 @@
 
     // templated specialization
     template< typename MatrixAB, typename MatrixB >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const kd, MatrixAB& ab, MatrixB& b,
- integer_t& info ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t kd, const MatrixAB& ab,
+ MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -96,9 +96,9 @@
 
 // template function to call tbtrs
 template< typename MatrixAB, typename MatrixB >
-inline integer_t tbtrs( char const uplo, char const trans,
- char const diag, integer_t const n, integer_t const kd, MatrixAB& ab,
- MatrixB& b ) {
+inline integer_t tbtrs( const char uplo, const char trans,
+ const char diag, const integer_t n, const integer_t kd,
+ const MatrixAB& ab, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     tbtrs_impl< value_type >::invoke( uplo, trans, diag, n, kd, ab, b,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgevc.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgevc.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgevc.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,39 +36,44 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tgevc( char const side, char const howmny, logical_t* select,
- integer_t const n, float* s, integer_t const lds, float* p,
- integer_t const ldp, float* vl, integer_t const ldvl, float* vr,
- integer_t const ldvr, integer_t const mm, integer_t& m,
- float* work, integer_t& info ) {
+ inline void tgevc( const char side, const char howmny,
+ const logical_t* select, const integer_t n, const float* s,
+ const integer_t lds, const float* p, const integer_t ldp,
+ float* vl, const integer_t ldvl, float* vr, const integer_t ldvr,
+ const integer_t mm, integer_t& m, float* work, integer_t& info ) {
         LAPACK_STGEVC( &side, &howmny, select, &n, s, &lds, p, &ldp, vl,
                 &ldvl, vr, &ldvr, &mm, &m, work, &info );
     }
- inline void tgevc( char const side, char const howmny, logical_t* select,
- integer_t const n, double* s, integer_t const lds, double* p,
- integer_t const ldp, double* vl, integer_t const ldvl, double* vr,
- integer_t const ldvr, integer_t const mm, integer_t& m,
+ inline void tgevc( const char side, const char howmny,
+ const logical_t* select, const integer_t n, const double* s,
+ const integer_t lds, const double* p, const integer_t ldp,
+ double* vl, const integer_t ldvl, double* vr,
+ const integer_t ldvr, const integer_t mm, integer_t& m,
             double* work, integer_t& info ) {
         LAPACK_DTGEVC( &side, &howmny, select, &n, s, &lds, p, &ldp, vl,
                 &ldvl, vr, &ldvr, &mm, &m, work, &info );
     }
- inline void tgevc( char const side, char const howmny, logical_t* select,
- integer_t const n, traits::complex_f* s, integer_t const lds,
- traits::complex_f* p, integer_t const ldp, traits::complex_f* vl,
- integer_t const ldvl, traits::complex_f* vr, integer_t const ldvr,
- integer_t const mm, integer_t& m, traits::complex_f* work,
- float* rwork, integer_t& info ) {
+ inline void tgevc( const char side, const char howmny,
+ const logical_t* select, const integer_t n,
+ const traits::complex_f* s, const integer_t lds,
+ const traits::complex_f* p, const integer_t ldp,
+ traits::complex_f* vl, const integer_t ldvl,
+ traits::complex_f* vr, const integer_t ldvr, const integer_t mm,
+ integer_t& m, traits::complex_f* work, float* rwork,
+ integer_t& info ) {
         LAPACK_CTGEVC( &side, &howmny, select, &n, traits::complex_ptr(s),
                 &lds, traits::complex_ptr(p), &ldp, traits::complex_ptr(vl),
                 &ldvl, traits::complex_ptr(vr), &ldvr, &mm, &m,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void tgevc( char const side, char const howmny, logical_t* select,
- integer_t const n, traits::complex_d* s, integer_t const lds,
- traits::complex_d* p, integer_t const ldp, traits::complex_d* vl,
- integer_t const ldvl, traits::complex_d* vr, integer_t const ldvr,
- integer_t const mm, integer_t& m, traits::complex_d* work,
- double* rwork, integer_t& info ) {
+ inline void tgevc( const char side, const char howmny,
+ const logical_t* select, const integer_t n,
+ const traits::complex_d* s, const integer_t lds,
+ const traits::complex_d* p, const integer_t ldp,
+ traits::complex_d* vl, const integer_t ldvl,
+ traits::complex_d* vr, const integer_t ldvr, const integer_t mm,
+ integer_t& m, traits::complex_d* work, double* rwork,
+ integer_t& info ) {
         LAPACK_ZTGEVC( &side, &howmny, select, &n, traits::complex_ptr(s),
                 &lds, traits::complex_ptr(p), &ldp, traits::complex_ptr(vl),
                 &ldvl, traits::complex_ptr(vr), &ldvr, &mm, &m,
@@ -90,10 +95,10 @@
     // user-defined workspace specialization
     template< typename VectorSELECT, typename MatrixS, typename MatrixP,
             typename MatrixVL, typename MatrixVR, typename WORK >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixS& s, MatrixP& p,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- integer_t& info, detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixS& s,
+ const MatrixP& p, MatrixVL& vl, MatrixVR& vr, const integer_t mm,
+ integer_t& m, integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixS >::value_type, typename traits::matrix_traits<
                 MatrixP >::value_type >::value) );
@@ -122,10 +127,10 @@
     // minimal workspace specialization
     template< typename VectorSELECT, typename MatrixS, typename MatrixP,
             typename MatrixVL, typename MatrixVR >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixS& s, MatrixP& p,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const char side, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixS& s,
+ const MatrixP& p, MatrixVL& vl, MatrixVR& vr, const integer_t mm,
+ integer_t& m, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( side, howmny, select, n, s, p, vl, vr, mm, m, info,
                 workspace( tmp_work ) );
@@ -134,15 +139,15 @@
     // optimal workspace specialization
     template< typename VectorSELECT, typename MatrixS, typename MatrixP,
             typename MatrixVL, typename MatrixVR >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixS& s, MatrixP& p,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const char side, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixS& s,
+ const MatrixP& p, MatrixVL& vl, MatrixVR& vr, const integer_t mm,
+ integer_t& m, integer_t& info, optimal_workspace work ) {
         invoke( side, howmny, select, n, s, p, vl, vr, mm, m, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 6*n;
     }
 };
@@ -158,10 +163,11 @@
     template< typename VectorSELECT, typename MatrixS, typename MatrixP,
             typename MatrixVL, typename MatrixVR, typename WORK,
             typename RWORK >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixS& s, MatrixP& p,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- integer_t& info, detail::workspace2< WORK, RWORK > work ) {
+ static void invoke( const char side, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixS& s,
+ const MatrixP& p, MatrixVL& vl, MatrixVR& vr, const integer_t mm,
+ integer_t& m, integer_t& info, detail::workspace2< WORK,
+ RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixS >::value_type, typename traits::matrix_traits<
                 MatrixP >::value_type >::value) );
@@ -193,10 +199,10 @@
     // minimal workspace specialization
     template< typename VectorSELECT, typename MatrixS, typename MatrixP,
             typename MatrixVL, typename MatrixVR >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixS& s, MatrixP& p,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const char side, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixS& s,
+ const MatrixP& p, MatrixVL& vl, MatrixVR& vr, const integer_t mm,
+ integer_t& m, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
         invoke( side, howmny, select, n, s, p, vl, vr, mm, m, info,
@@ -206,19 +212,19 @@
     // optimal workspace specialization
     template< typename VectorSELECT, typename MatrixS, typename MatrixP,
             typename MatrixVL, typename MatrixVR >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixS& s, MatrixP& p,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const char side, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixS& s,
+ const MatrixP& p, MatrixVL& vl, MatrixVR& vr, const integer_t mm,
+ integer_t& m, integer_t& info, optimal_workspace work ) {
         invoke( side, howmny, select, n, s, p, vl, vr, mm, m, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 2*n;
     }
 };
@@ -227,10 +233,10 @@
 // template function to call tgevc
 template< typename VectorSELECT, typename MatrixS, typename MatrixP,
         typename MatrixVL, typename MatrixVR, typename Workspace >
-inline integer_t tgevc( char const side, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixS& s, MatrixP& p,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m,
- Workspace work ) {
+inline integer_t tgevc( const char side, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixS& s,
+ const MatrixP& p, MatrixVL& vl, MatrixVR& vr, const integer_t mm,
+ integer_t& m, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixS >::value_type value_type;
     integer_t info(0);
     tgevc_impl< value_type >::invoke( side, howmny, select, n, s, p, vl,
@@ -241,9 +247,10 @@
 // template function to call tgevc, default workspace type
 template< typename VectorSELECT, typename MatrixS, typename MatrixP,
         typename MatrixVL, typename MatrixVR >
-inline integer_t tgevc( char const side, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixS& s, MatrixP& p,
- MatrixVL& vl, MatrixVR& vr, integer_t const mm, integer_t& m ) {
+inline integer_t tgevc( const char side, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixS& s,
+ const MatrixP& p, MatrixVL& vl, MatrixVR& vr, const integer_t mm,
+ integer_t& m ) {
     typedef typename traits::matrix_traits< MatrixS >::value_type value_type;
     integer_t info(0);
     tgevc_impl< value_type >::invoke( side, howmny, select, n, s, p, vl,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgexc.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgexc.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgexc.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,36 +37,36 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tgexc( logical_t const wantq, logical_t const wantz,
- integer_t const n, float* a, integer_t const lda, float* b,
- integer_t const ldb, float* q, integer_t const ldq, float* z,
- integer_t const ldz, integer_t& ifst, integer_t& ilst,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void tgexc( const logical_t wantq, const logical_t wantz,
+ const integer_t n, float* a, const integer_t lda, float* b,
+ const integer_t ldb, float* q, const integer_t ldq, float* z,
+ const integer_t ldz, integer_t& ifst, integer_t& ilst,
+ float* work, const integer_t lwork, integer_t& info ) {
         LAPACK_STGEXC( &wantq, &wantz, &n, a, &lda, b, &ldb, q, &ldq, z, &ldz,
                 &ifst, &ilst, work, &lwork, &info );
     }
- inline void tgexc( logical_t const wantq, logical_t const wantz,
- integer_t const n, double* a, integer_t const lda, double* b,
- integer_t const ldb, double* q, integer_t const ldq, double* z,
- integer_t const ldz, integer_t& ifst, integer_t& ilst,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void tgexc( const logical_t wantq, const logical_t wantz,
+ const integer_t n, double* a, const integer_t lda, double* b,
+ const integer_t ldb, double* q, const integer_t ldq, double* z,
+ const integer_t ldz, integer_t& ifst, integer_t& ilst,
+ double* work, const integer_t lwork, integer_t& info ) {
         LAPACK_DTGEXC( &wantq, &wantz, &n, a, &lda, b, &ldb, q, &ldq, z, &ldz,
                 &ifst, &ilst, work, &lwork, &info );
     }
- inline void tgexc( logical_t const wantq, logical_t const wantz,
- integer_t const n, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* q,
- integer_t const ldq, traits::complex_f* z, integer_t const ldz,
- integer_t const ifst, integer_t& ilst, integer_t& info ) {
+ inline void tgexc( const logical_t wantq, const logical_t wantz,
+ const integer_t n, traits::complex_f* a, const integer_t lda,
+ traits::complex_f* b, const integer_t ldb, traits::complex_f* q,
+ const integer_t ldq, traits::complex_f* z, const integer_t ldz,
+ const integer_t ifst, integer_t& ilst, integer_t& info ) {
         LAPACK_CTGEXC( &wantq, &wantz, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(q), &ldq,
                 traits::complex_ptr(z), &ldz, &ifst, &ilst, &info );
     }
- inline void tgexc( logical_t const wantq, logical_t const wantz,
- integer_t const n, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* q,
- integer_t const ldq, traits::complex_d* z, integer_t const ldz,
- integer_t const ifst, integer_t& ilst, integer_t& info ) {
+ inline void tgexc( const logical_t wantq, const logical_t wantz,
+ const integer_t n, traits::complex_d* a, const integer_t lda,
+ traits::complex_d* b, const integer_t ldb, traits::complex_d* q,
+ const integer_t ldq, traits::complex_d* z, const integer_t ldz,
+ const integer_t ifst, integer_t& ilst, integer_t& info ) {
         LAPACK_ZTGEXC( &wantq, &wantz, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(q), &ldq,
                 traits::complex_ptr(z), &ldz, &ifst, &ilst, &info );
@@ -87,8 +87,8 @@
     // templated specialization
     template< typename MatrixA, typename MatrixB, typename MatrixQ,
             typename MatrixZ >
- static void invoke( logical_t const wantq, logical_t const wantz,
- integer_t const n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
+ static void invoke( const logical_t wantq, const logical_t wantz,
+ const integer_t n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
             integer_t& ifst, integer_t& ilst, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -124,9 +124,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixQ,
             typename MatrixZ, $WORKSPACE_TYPENAMES >
- static void invoke( logical_t const wantq, logical_t const wantz,
- integer_t const n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
- integer_t const ifst, integer_t& ilst, integer_t& info,
+ static void invoke( const logical_t wantq, const logical_t wantz,
+ const integer_t n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
+ const integer_t ifst, integer_t& ilst, integer_t& info,
             detail::workspace$WORKSPACE_SIZE< $WORKSPACE_TYPES > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -150,9 +150,9 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixQ,
             typename MatrixZ >
- static void invoke( logical_t const wantq, logical_t const wantz,
- integer_t const n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
- integer_t const ifst, integer_t& ilst, integer_t& info,
+ static void invoke( const logical_t wantq, const logical_t wantz,
+ const integer_t n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
+ const integer_t ifst, integer_t& ilst, integer_t& info,
             minimal_workspace work ) {
 $SETUP_MIN_WORKARRAYS_POST
         invoke( wantq, wantz, n, a, b, q, z, ifst, ilst, info,
@@ -162,9 +162,9 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixQ,
             typename MatrixZ >
- static void invoke( logical_t const wantq, logical_t const wantz,
- integer_t const n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
- integer_t const ifst, integer_t& ilst, integer_t& info,
+ static void invoke( const logical_t wantq, const logical_t wantz,
+ const integer_t n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
+ const integer_t ifst, integer_t& ilst, integer_t& info,
             optimal_workspace work ) {
 $OPT_WORKSPACE_FUNC
     }
@@ -176,8 +176,8 @@
 // template function to call tgexc
 template< typename MatrixA, typename MatrixB, typename MatrixQ,
         typename MatrixZ >
-inline integer_t tgexc( logical_t const wantq, logical_t const wantz,
- integer_t const n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
+inline integer_t tgexc( const logical_t wantq, const logical_t wantz,
+ const integer_t n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
         integer_t& ifst, integer_t& ilst ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -188,9 +188,9 @@
 // template function to call tgexc
 template< typename MatrixA, typename MatrixB, typename MatrixQ,
         typename MatrixZ, typename Workspace >
-inline integer_t tgexc( logical_t const wantq, logical_t const wantz,
- integer_t const n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
- integer_t const ifst, integer_t& ilst, Workspace work ) {
+inline integer_t tgexc( const logical_t wantq, const logical_t wantz,
+ const integer_t n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
+ const integer_t ifst, integer_t& ilst, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     tgexc_impl< value_type >::invoke( wantq, wantz, n, a, b, q, z, ifst,
@@ -201,9 +201,9 @@
 // template function to call tgexc, default workspace type
 template< typename MatrixA, typename MatrixB, typename MatrixQ,
         typename MatrixZ >
-inline integer_t tgexc( logical_t const wantq, logical_t const wantz,
- integer_t const n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
- integer_t const ifst, integer_t& ilst ) {
+inline integer_t tgexc( const logical_t wantq, const logical_t wantz,
+ const integer_t n, MatrixA& a, MatrixB& b, MatrixQ& q, MatrixZ& z,
+ const integer_t ifst, integer_t& ilst ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     tgexc_impl< value_type >::invoke( wantq, wantz, n, a, b, q, z, ifst,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsen.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsen.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsen.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,39 +37,39 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tgsen( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, logical_t* select, integer_t const n,
- float* a, integer_t const lda, float* b, integer_t const ldb,
+ inline void tgsen( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const logical_t* select, const integer_t n,
+ float* a, const integer_t lda, float* b, const integer_t ldb,
             float* alphar, float* alphai, float* beta, float* q,
- integer_t const ldq, float* z, integer_t const ldz, integer_t& m,
+ const integer_t ldq, float* z, const integer_t ldz, integer_t& m,
             float& pl, float& pr, float* dif, float* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_STGSEN( &ijob, &wantq, &wantz, select, &n, a, &lda, b, &ldb,
                 alphar, alphai, beta, q, &ldq, z, &ldz, &m, &pl, &pr, dif,
                 work, &lwork, iwork, &liwork, &info );
     }
- inline void tgsen( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, logical_t* select, integer_t const n,
- double* a, integer_t const lda, double* b, integer_t const ldb,
+ inline void tgsen( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const logical_t* select, const integer_t n,
+ double* a, const integer_t lda, double* b, const integer_t ldb,
             double* alphar, double* alphai, double* beta, double* q,
- integer_t const ldq, double* z, integer_t const ldz, integer_t& m,
+ const integer_t ldq, double* z, const integer_t ldz, integer_t& m,
             double& pl, double& pr, double* dif, double* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_DTGSEN( &ijob, &wantq, &wantz, select, &n, a, &lda, b, &ldb,
                 alphar, alphai, beta, q, &ldq, z, &ldz, &m, &pl, &pr, dif,
                 work, &lwork, iwork, &liwork, &info );
     }
- inline void tgsen( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, logical_t* select, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* alpha,
+ inline void tgsen( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const logical_t* select, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* b,
+ const integer_t ldb, traits::complex_f* alpha,
             traits::complex_f* beta, traits::complex_f* q,
- integer_t const ldq, traits::complex_f* z, integer_t const ldz,
+ const integer_t ldq, traits::complex_f* z, const integer_t ldz,
             integer_t& m, float& pl, float& pr, float* dif,
- traits::complex_f* work, integer_t const lwork, integer_t* iwork,
- integer_t const liwork, integer_t& info ) {
+ traits::complex_f* work, const integer_t lwork, integer_t* iwork,
+ const integer_t liwork, integer_t& info ) {
         LAPACK_CTGSEN( &ijob, &wantq, &wantz, select, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(alpha), traits::complex_ptr(beta),
@@ -77,15 +77,15 @@
                 &m, &pl, &pr, dif, traits::complex_ptr(work), &lwork, iwork,
                 &liwork, &info );
     }
- inline void tgsen( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, logical_t* select, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* alpha,
+ inline void tgsen( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const logical_t* select, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* b,
+ const integer_t ldb, traits::complex_d* alpha,
             traits::complex_d* beta, traits::complex_d* q,
- integer_t const ldq, traits::complex_d* z, integer_t const ldz,
+ const integer_t ldq, traits::complex_d* z, const integer_t ldz,
             integer_t& m, double& pl, double& pr, double* dif,
- traits::complex_d* work, integer_t const lwork, integer_t* iwork,
- integer_t const liwork, integer_t& info ) {
+ traits::complex_d* work, const integer_t lwork, integer_t* iwork,
+ const integer_t liwork, integer_t& info ) {
         LAPACK_ZTGSEN( &ijob, &wantq, &wantz, select, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(alpha), traits::complex_ptr(beta),
@@ -111,9 +111,9 @@
             typename VectorALPHAR, typename VectorALPHAI, typename VectorBETA,
             typename MatrixQ, typename MatrixZ, typename VectorDIF,
             typename WORK, typename IWORK >
- static void invoke( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, VectorSELECT& select, integer_t const n,
- MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
+ static void invoke( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
             VectorALPHAI& alphai, VectorBETA& beta, MatrixQ& q, MatrixZ& z,
             integer_t& m, real_type& pl, real_type& pr, VectorDIF& dif,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
@@ -166,9 +166,9 @@
     template< typename VectorSELECT, typename MatrixA, typename MatrixB,
             typename VectorALPHAR, typename VectorALPHAI, typename VectorBETA,
             typename MatrixQ, typename MatrixZ, typename VectorDIF >
- static void invoke( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, VectorSELECT& select, integer_t const n,
- MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
+ static void invoke( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
             VectorALPHAI& alphai, VectorBETA& beta, MatrixQ& q, MatrixZ& z,
             integer_t& m, real_type& pl, real_type& pr, VectorDIF& dif,
             integer_t& info, minimal_workspace work ) {
@@ -184,9 +184,9 @@
     template< typename VectorSELECT, typename MatrixA, typename MatrixB,
             typename VectorALPHAR, typename VectorALPHAI, typename VectorBETA,
             typename MatrixQ, typename MatrixZ, typename VectorDIF >
- static void invoke( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, VectorSELECT& select, integer_t const n,
- MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
+ static void invoke( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
             VectorALPHAI& alphai, VectorBETA& beta, MatrixQ& q, MatrixZ& z,
             integer_t& m, real_type& pl, real_type& pr, VectorDIF& dif,
             integer_t& info, optimal_workspace work ) {
@@ -229,11 +229,11 @@
             typename VectorALPHA, typename VectorBETA, typename MatrixQ,
             typename MatrixZ, typename VectorDIF, typename WORK,
             typename IWORK >
- static void invoke( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, VectorSELECT& select, integer_t const n,
- MatrixA& a, MatrixB& b, VectorALPHA& alpha, VectorBETA& beta,
- MatrixQ& q, MatrixZ& z, integer_t& m, real_type& pl,
- real_type& pr, VectorDIF& dif, integer_t& info,
+ static void invoke( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorALPHA& alpha,
+ VectorBETA& beta, MatrixQ& q, MatrixZ& z, integer_t& m,
+ real_type& pl, real_type& pr, VectorDIF& dif, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -276,11 +276,11 @@
     template< typename VectorSELECT, typename MatrixA, typename MatrixB,
             typename VectorALPHA, typename VectorBETA, typename MatrixQ,
             typename MatrixZ, typename VectorDIF >
- static void invoke( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, VectorSELECT& select, integer_t const n,
- MatrixA& a, MatrixB& b, VectorALPHA& alpha, VectorBETA& beta,
- MatrixQ& q, MatrixZ& z, integer_t& m, real_type& pl,
- real_type& pr, VectorDIF& dif, integer_t& info,
+ static void invoke( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorALPHA& alpha,
+ VectorBETA& beta, MatrixQ& q, MatrixZ& z, integer_t& m,
+ real_type& pl, real_type& pr, VectorDIF& dif, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
@@ -294,11 +294,11 @@
     template< typename VectorSELECT, typename MatrixA, typename MatrixB,
             typename VectorALPHA, typename VectorBETA, typename MatrixQ,
             typename MatrixZ, typename VectorDIF >
- static void invoke( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, VectorSELECT& select, integer_t const n,
- MatrixA& a, MatrixB& b, VectorALPHA& alpha, VectorBETA& beta,
- MatrixQ& q, MatrixZ& z, integer_t& m, real_type& pl,
- real_type& pr, VectorDIF& dif, integer_t& info,
+ static void invoke( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorALPHA& alpha,
+ VectorBETA& beta, MatrixQ& q, MatrixZ& z, integer_t& m,
+ real_type& pl, real_type& pr, VectorDIF& dif, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
         integer_t opt_size_iwork;
@@ -333,8 +333,8 @@
         typename VectorALPHAR, typename VectorALPHAI, typename VectorBETA,
         typename MatrixQ, typename MatrixZ, typename VectorDIF,
         typename Workspace >
-inline integer_t tgsen( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, VectorSELECT& select, integer_t const n,
+inline integer_t tgsen( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select, const integer_t n,
         MatrixA& a, MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
         VectorBETA& beta, MatrixQ& q, MatrixZ& z, integer_t& m,
         typename traits::type_traits< typename traits::matrix_traits<
@@ -353,8 +353,8 @@
 template< typename VectorSELECT, typename MatrixA, typename MatrixB,
         typename VectorALPHAR, typename VectorALPHAI, typename VectorBETA,
         typename MatrixQ, typename MatrixZ, typename VectorDIF >
-inline integer_t tgsen( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, VectorSELECT& select, integer_t const n,
+inline integer_t tgsen( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select, const integer_t n,
         MatrixA& a, MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
         VectorBETA& beta, MatrixQ& q, MatrixZ& z, integer_t& m,
         typename traits::type_traits< typename traits::matrix_traits<
@@ -372,8 +372,8 @@
 template< typename VectorSELECT, typename MatrixA, typename MatrixB,
         typename VectorALPHA, typename VectorBETA, typename MatrixQ,
         typename MatrixZ, typename VectorDIF, typename Workspace >
-inline integer_t tgsen( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, VectorSELECT& select, integer_t const n,
+inline integer_t tgsen( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select, const integer_t n,
         MatrixA& a, MatrixB& b, VectorALPHA& alpha, VectorBETA& beta,
         MatrixQ& q, MatrixZ& z, integer_t& m, typename traits::type_traits<
         typename traits::matrix_traits<
@@ -392,8 +392,8 @@
 template< typename VectorSELECT, typename MatrixA, typename MatrixB,
         typename VectorALPHA, typename VectorBETA, typename MatrixQ,
         typename MatrixZ, typename VectorDIF >
-inline integer_t tgsen( integer_t const ijob, logical_t const wantq,
- logical_t const wantz, VectorSELECT& select, integer_t const n,
+inline integer_t tgsen( const integer_t ijob, const logical_t wantq,
+ const logical_t wantz, const VectorSELECT& select, const integer_t n,
         MatrixA& a, MatrixB& b, VectorALPHA& alpha, VectorBETA& beta,
         MatrixQ& q, MatrixZ& z, integer_t& m, typename traits::type_traits<
         typename traits::matrix_traits<

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsja.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsja.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsja.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,37 +36,37 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tgsja( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const p, integer_t const n,
- integer_t const k, integer_t const l, float* a,
- integer_t const lda, float* b, integer_t const ldb,
- float const tola, float const tolb, float* alpha, float* beta,
- float* u, integer_t const ldu, float* v, integer_t const ldv,
- float* q, integer_t const ldq, float* work, integer_t& ncycle,
+ inline void tgsja( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t p, const integer_t n,
+ const integer_t k, const integer_t l, float* a,
+ const integer_t lda, float* b, const integer_t ldb,
+ const float tola, const float tolb, float* alpha, float* beta,
+ float* u, const integer_t ldu, float* v, const integer_t ldv,
+ float* q, const integer_t ldq, float* work, integer_t& ncycle,
             integer_t& info ) {
         LAPACK_STGSJA( &jobu, &jobv, &jobq, &m, &p, &n, &k, &l, a, &lda, b,
                 &ldb, &tola, &tolb, alpha, beta, u, &ldu, v, &ldv, q, &ldq,
                 work, &ncycle, &info );
     }
- inline void tgsja( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const p, integer_t const n,
- integer_t const k, integer_t const l, double* a,
- integer_t const lda, double* b, integer_t const ldb,
- double const tola, double const tolb, double* alpha, double* beta,
- double* u, integer_t const ldu, double* v, integer_t const ldv,
- double* q, integer_t const ldq, double* work, integer_t& ncycle,
+ inline void tgsja( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t p, const integer_t n,
+ const integer_t k, const integer_t l, double* a,
+ const integer_t lda, double* b, const integer_t ldb,
+ const double tola, const double tolb, double* alpha, double* beta,
+ double* u, const integer_t ldu, double* v, const integer_t ldv,
+ double* q, const integer_t ldq, double* work, integer_t& ncycle,
             integer_t& info ) {
         LAPACK_DTGSJA( &jobu, &jobv, &jobq, &m, &p, &n, &k, &l, a, &lda, b,
                 &ldb, &tola, &tolb, alpha, beta, u, &ldu, v, &ldv, q, &ldq,
                 work, &ncycle, &info );
     }
- inline void tgsja( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const p, integer_t const n,
- integer_t const k, integer_t const l, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb,
- float const tola, float const tolb, float* alpha, float* beta,
- traits::complex_f* u, integer_t const ldu, traits::complex_f* v,
- integer_t const ldv, traits::complex_f* q, integer_t const ldq,
+ inline void tgsja( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t p, const integer_t n,
+ const integer_t k, const integer_t l, traits::complex_f* a,
+ const integer_t lda, traits::complex_f* b, const integer_t ldb,
+ const float tola, const float tolb, float* alpha, float* beta,
+ traits::complex_f* u, const integer_t ldu, traits::complex_f* v,
+ const integer_t ldv, traits::complex_f* q, const integer_t ldq,
             traits::complex_f* work, integer_t& ncycle, integer_t& info ) {
         LAPACK_CTGSJA( &jobu, &jobv, &jobq, &m, &p, &n, &k, &l,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
@@ -74,13 +74,13 @@
                 traits::complex_ptr(v), &ldv, traits::complex_ptr(q), &ldq,
                 traits::complex_ptr(work), &ncycle, &info );
     }
- inline void tgsja( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const p, integer_t const n,
- integer_t const k, integer_t const l, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb,
- double const tola, double const tolb, double* alpha, double* beta,
- traits::complex_d* u, integer_t const ldu, traits::complex_d* v,
- integer_t const ldv, traits::complex_d* q, integer_t const ldq,
+ inline void tgsja( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t p, const integer_t n,
+ const integer_t k, const integer_t l, traits::complex_d* a,
+ const integer_t lda, traits::complex_d* b, const integer_t ldb,
+ const double tola, const double tolb, double* alpha, double* beta,
+ traits::complex_d* u, const integer_t ldu, traits::complex_d* v,
+ const integer_t ldv, traits::complex_d* q, const integer_t ldq,
             traits::complex_d* work, integer_t& ncycle, integer_t& info ) {
         LAPACK_ZTGSJA( &jobu, &jobv, &jobq, &m, &p, &n, &k, &l,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
@@ -105,9 +105,9 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ, typename WORK >
- static void invoke( char const jobu, char const jobv, char const jobq,
- integer_t const k, integer_t const l, MatrixA& a, MatrixB& b,
- real_type const tola, real_type const tolb, VectorALPHA& alpha,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ const integer_t k, const integer_t l, MatrixA& a, MatrixB& b,
+ const real_type tola, const real_type tolb, VectorALPHA& alpha,
             VectorBETA& beta, MatrixU& u, MatrixV& v, MatrixQ& q,
             integer_t& ncycle, integer_t& info, detail::workspace1<
             WORK > work ) {
@@ -160,9 +160,9 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
- integer_t const k, integer_t const l, MatrixA& a, MatrixB& b,
- real_type const tola, real_type const tolb, VectorALPHA& alpha,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ const integer_t k, const integer_t l, MatrixA& a, MatrixB& b,
+ const real_type tola, const real_type tolb, VectorALPHA& alpha,
             VectorBETA& beta, MatrixU& u, MatrixV& v, MatrixQ& q,
             integer_t& ncycle, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
@@ -175,16 +175,16 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
- integer_t const k, integer_t const l, MatrixA& a, MatrixB& b,
- real_type const tola, real_type const tolb, VectorALPHA& alpha,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ const integer_t k, const integer_t l, MatrixA& a, MatrixB& b,
+ const real_type tola, const real_type tolb, VectorALPHA& alpha,
             VectorBETA& beta, MatrixU& u, MatrixV& v, MatrixQ& q,
             integer_t& ncycle, integer_t& info, optimal_workspace work ) {
         invoke( jobu, jobv, jobq, k, l, a, b, tola, tolb, alpha, beta, u, v,
                 q, ncycle, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 };
@@ -200,9 +200,9 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ, typename WORK >
- static void invoke( char const jobu, char const jobv, char const jobq,
- integer_t const k, integer_t const l, MatrixA& a, MatrixB& b,
- real_type const tola, real_type const tolb, VectorALPHA& alpha,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ const integer_t k, const integer_t l, MatrixA& a, MatrixB& b,
+ const real_type tola, const real_type tolb, VectorALPHA& alpha,
             VectorBETA& beta, MatrixU& u, MatrixV& v, MatrixQ& q,
             integer_t& ncycle, integer_t& info, detail::workspace1<
             WORK > work ) {
@@ -252,9 +252,9 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
- integer_t const k, integer_t const l, MatrixA& a, MatrixB& b,
- real_type const tola, real_type const tolb, VectorALPHA& alpha,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ const integer_t k, const integer_t l, MatrixA& a, MatrixB& b,
+ const real_type tola, const real_type tolb, VectorALPHA& alpha,
             VectorBETA& beta, MatrixU& u, MatrixV& v, MatrixQ& q,
             integer_t& ncycle, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -267,16 +267,16 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
- integer_t const k, integer_t const l, MatrixA& a, MatrixB& b,
- real_type const tola, real_type const tolb, VectorALPHA& alpha,
+ static void invoke( const char jobu, const char jobv, const char jobq,
+ const integer_t k, const integer_t l, MatrixA& a, MatrixB& b,
+ const real_type tola, const real_type tolb, VectorALPHA& alpha,
             VectorBETA& beta, MatrixU& u, MatrixV& v, MatrixQ& q,
             integer_t& ncycle, integer_t& info, optimal_workspace work ) {
         invoke( jobu, jobv, jobq, k, l, a, b, tola, tolb, alpha, beta, u, v,
                 q, ncycle, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 };
@@ -286,13 +286,13 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixU, typename MatrixV,
         typename MatrixQ, typename Workspace >
-inline integer_t tgsja( char const jobu, char const jobv,
- char const jobq, integer_t const k, integer_t const l, MatrixA& a,
- MatrixB& b, typename traits::type_traits<
+inline integer_t tgsja( const char jobu, const char jobv,
+ const char jobq, const integer_t k, const integer_t l, MatrixA& a,
+ MatrixB& b, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const tola,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const tolb, VectorALPHA& alpha,
+ MatrixA >::value_type >::real_type tola,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type tolb, VectorALPHA& alpha,
         VectorBETA& beta, MatrixU& u, MatrixV& v, MatrixQ& q,
         integer_t& ncycle, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -306,13 +306,13 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixU, typename MatrixV,
         typename MatrixQ >
-inline integer_t tgsja( char const jobu, char const jobv,
- char const jobq, integer_t const k, integer_t const l, MatrixA& a,
- MatrixB& b, typename traits::type_traits<
+inline integer_t tgsja( const char jobu, const char jobv,
+ const char jobq, const integer_t k, const integer_t l, MatrixA& a,
+ MatrixB& b, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const tola,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const tolb, VectorALPHA& alpha,
+ MatrixA >::value_type >::real_type tola,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type tolb, VectorALPHA& alpha,
         VectorBETA& beta, MatrixU& u, MatrixV& v, MatrixQ& q,
         integer_t& ncycle ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsna.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsna.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsna.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,42 +37,48 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tgsna( char const job, char const howmny, logical_t* select,
- integer_t const n, float* a, integer_t const lda, float* b,
- integer_t const ldb, float* vl, integer_t const ldvl, float* vr,
- integer_t const ldvr, float* s, float* dif, integer_t const mm,
- integer_t& m, float* work, integer_t const lwork,
+ inline void tgsna( const char job, const char howmny,
+ const logical_t* select, const integer_t n, const float* a,
+ const integer_t lda, const float* b, const integer_t ldb,
+ const float* vl, const integer_t ldvl, const float* vr,
+ const integer_t ldvr, float* s, float* dif, const integer_t mm,
+ integer_t& m, float* work, const integer_t lwork,
             integer_t* iwork, integer_t& info ) {
         LAPACK_STGSNA( &job, &howmny, select, &n, a, &lda, b, &ldb, vl, &ldvl,
                 vr, &ldvr, s, dif, &mm, &m, work, &lwork, iwork, &info );
     }
- inline void tgsna( char const job, char const howmny, logical_t* select,
- integer_t const n, double* a, integer_t const lda, double* b,
- integer_t const ldb, double* vl, integer_t const ldvl, double* vr,
- integer_t const ldvr, double* s, double* dif, integer_t const mm,
- integer_t& m, double* work, integer_t const lwork,
+ inline void tgsna( const char job, const char howmny,
+ const logical_t* select, const integer_t n, const double* a,
+ const integer_t lda, const double* b, const integer_t ldb,
+ const double* vl, const integer_t ldvl, const double* vr,
+ const integer_t ldvr, double* s, double* dif, const integer_t mm,
+ integer_t& m, double* work, const integer_t lwork,
             integer_t* iwork, integer_t& info ) {
         LAPACK_DTGSNA( &job, &howmny, select, &n, a, &lda, b, &ldb, vl, &ldvl,
                 vr, &ldvr, s, dif, &mm, &m, work, &lwork, iwork, &info );
     }
- inline void tgsna( char const job, char const howmny, logical_t* select,
- integer_t const n, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* vl,
- integer_t const ldvl, traits::complex_f* vr, integer_t const ldvr,
- float* s, float* dif, integer_t const mm, integer_t& m,
- traits::complex_f* work, integer_t const lwork, integer_t* iwork,
+ inline void tgsna( const char job, const char howmny,
+ const logical_t* select, const integer_t n,
+ const traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* b, const integer_t ldb,
+ const traits::complex_f* vl, const integer_t ldvl,
+ const traits::complex_f* vr, const integer_t ldvr, float* s,
+ float* dif, const integer_t mm, integer_t& m,
+ traits::complex_f* work, const integer_t lwork, integer_t* iwork,
             integer_t& info ) {
         LAPACK_CTGSNA( &job, &howmny, select, &n, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(b), &ldb, traits::complex_ptr(vl),
                 &ldvl, traits::complex_ptr(vr), &ldvr, s, dif, &mm, &m,
                 traits::complex_ptr(work), &lwork, iwork, &info );
     }
- inline void tgsna( char const job, char const howmny, logical_t* select,
- integer_t const n, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* vl,
- integer_t const ldvl, traits::complex_d* vr, integer_t const ldvr,
- double* s, double* dif, integer_t const mm, integer_t& m,
- traits::complex_d* work, integer_t const lwork, integer_t* iwork,
+ inline void tgsna( const char job, const char howmny,
+ const logical_t* select, const integer_t n,
+ const traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* b, const integer_t ldb,
+ const traits::complex_d* vl, const integer_t ldvl,
+ const traits::complex_d* vr, const integer_t ldvr, double* s,
+ double* dif, const integer_t mm, integer_t& m,
+ traits::complex_d* work, const integer_t lwork, integer_t* iwork,
             integer_t& info ) {
         LAPACK_ZTGSNA( &job, &howmny, select, &n, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(b), &ldb, traits::complex_ptr(vl),
@@ -96,11 +102,11 @@
     template< typename VectorSELECT, typename MatrixA, typename MatrixB,
             typename MatrixVL, typename MatrixVR, typename VectorS,
             typename VectorDIF, typename WORK, typename IWORK >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixVL& vl, MatrixVR& vr, VectorS& s, VectorDIF& dif,
- integer_t const mm, integer_t& m, integer_t& info,
- detail::workspace2< WORK, IWORK > work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixA& a,
+ const MatrixB& b, const MatrixVL& vl, const MatrixVR& vr,
+ VectorS& s, VectorDIF& dif, const integer_t mm, integer_t& m,
+ integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -141,11 +147,11 @@
     template< typename VectorSELECT, typename MatrixA, typename MatrixB,
             typename MatrixVL, typename MatrixVR, typename VectorS,
             typename VectorDIF >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixVL& vl, MatrixVR& vr, VectorS& s, VectorDIF& dif,
- integer_t const mm, integer_t& m, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixA& a,
+ const MatrixB& b, const MatrixVL& vl, const MatrixVR& vr,
+ VectorS& s, VectorDIF& dif, const integer_t mm, integer_t& m,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
@@ -158,11 +164,11 @@
     template< typename VectorSELECT, typename MatrixA, typename MatrixB,
             typename MatrixVL, typename MatrixVR, typename VectorS,
             typename VectorDIF >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixVL& vl, MatrixVR& vr, VectorS& s, VectorDIF& dif,
- integer_t const mm, integer_t& m, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixA& a,
+ const MatrixB& b, const MatrixVL& vl, const MatrixVR& vr,
+ VectorS& s, VectorDIF& dif, const integer_t mm, integer_t& m,
+ integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
                 $CALL_MIN_SIZE ) );
@@ -199,11 +205,11 @@
     template< typename VectorSELECT, typename MatrixA, typename MatrixB,
             typename MatrixVL, typename MatrixVR, typename VectorS,
             typename VectorDIF, typename WORK, typename IWORK >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixVL& vl, MatrixVR& vr, VectorS& s, VectorDIF& dif,
- integer_t const mm, integer_t& m, integer_t& info,
- detail::workspace2< WORK, IWORK > work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixA& a,
+ const MatrixB& b, const MatrixVL& vl, const MatrixVR& vr,
+ VectorS& s, VectorDIF& dif, const integer_t mm, integer_t& m,
+ integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorS >::value_type, typename traits::vector_traits<
                 VectorDIF >::value_type >::value) );
@@ -241,11 +247,11 @@
     template< typename VectorSELECT, typename MatrixA, typename MatrixB,
             typename MatrixVL, typename MatrixVR, typename VectorS,
             typename VectorDIF >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixVL& vl, MatrixVR& vr, VectorS& s, VectorDIF& dif,
- integer_t const mm, integer_t& m, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixA& a,
+ const MatrixB& b, const MatrixVL& vl, const MatrixVR& vr,
+ VectorS& s, VectorDIF& dif, const integer_t mm, integer_t& m,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
@@ -258,11 +264,11 @@
     template< typename VectorSELECT, typename MatrixA, typename MatrixB,
             typename MatrixVL, typename MatrixVR, typename VectorS,
             typename VectorDIF >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixVL& vl, MatrixVR& vr, VectorS& s, VectorDIF& dif,
- integer_t const mm, integer_t& m, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixA& a,
+ const MatrixB& b, const MatrixVL& vl, const MatrixVR& vr,
+ VectorS& s, VectorDIF& dif, const integer_t mm, integer_t& m,
+ integer_t& info, optimal_workspace work ) {
         invoke( job, howmny, select, n, a, b, vl, vr, s, dif, mm, m, info,
                 minimal_workspace() );
     }
@@ -281,10 +287,10 @@
 template< typename VectorSELECT, typename MatrixA, typename MatrixB,
         typename MatrixVL, typename MatrixVR, typename VectorS,
         typename VectorDIF, typename Workspace >
-inline integer_t tgsna( char const job, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixVL& vl, MatrixVR& vr, VectorS& s, VectorDIF& dif,
- integer_t const mm, integer_t& m, Workspace work ) {
+inline integer_t tgsna( const char job, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixA& a,
+ const MatrixB& b, const MatrixVL& vl, const MatrixVR& vr, VectorS& s,
+ VectorDIF& dif, const integer_t mm, integer_t& m, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     tgsna_impl< value_type >::invoke( job, howmny, select, n, a, b, vl,
@@ -296,10 +302,10 @@
 template< typename VectorSELECT, typename MatrixA, typename MatrixB,
         typename MatrixVL, typename MatrixVR, typename VectorS,
         typename VectorDIF >
-inline integer_t tgsna( char const job, char const howmny,
- VectorSELECT& select, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixVL& vl, MatrixVR& vr, VectorS& s, VectorDIF& dif,
- integer_t const mm, integer_t& m ) {
+inline integer_t tgsna( const char job, const char howmny,
+ const VectorSELECT& select, const integer_t n, const MatrixA& a,
+ const MatrixB& b, const MatrixVL& vl, const MatrixVR& vr, VectorS& s,
+ VectorDIF& dif, const integer_t mm, integer_t& m ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     tgsna_impl< value_type >::invoke( job, howmny, select, n, a, b, vl,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsyl.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsyl.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tgsyl.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,35 +37,38 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tgsyl( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, float* a,
- integer_t const lda, float* b, integer_t const ldb, float* c,
- integer_t const ldc, float* d, integer_t const ldd, float* e,
- integer_t const lde, float* f, integer_t const ldf, float& scale,
- float& dif, float* work, integer_t const lwork, integer_t* iwork,
+ inline void tgsyl( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const float* a,
+ const integer_t lda, const float* b, const integer_t ldb,
+ float* c, const integer_t ldc, const float* d,
+ const integer_t ldd, const float* e, const integer_t lde,
+ float* f, const integer_t ldf, float& scale, float& dif,
+ float* work, const integer_t lwork, integer_t* iwork,
             integer_t& info ) {
         LAPACK_STGSYL( &trans, &ijob, &m, &n, a, &lda, b, &ldb, c, &ldc, d,
                 &ldd, e, &lde, f, &ldf, &scale, &dif, work, &lwork, iwork,
                 &info );
     }
- inline void tgsyl( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, double* a,
- integer_t const lda, double* b, integer_t const ldb, double* c,
- integer_t const ldc, double* d, integer_t const ldd, double* e,
- integer_t const lde, double* f, integer_t const ldf,
- double& scale, double& dif, double* work, integer_t const lwork,
- integer_t* iwork, integer_t& info ) {
+ inline void tgsyl( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const double* a,
+ const integer_t lda, const double* b, const integer_t ldb,
+ double* c, const integer_t ldc, const double* d,
+ const integer_t ldd, const double* e, const integer_t lde,
+ double* f, const integer_t ldf, double& scale, double& dif,
+ double* work, const integer_t lwork, integer_t* iwork,
+ integer_t& info ) {
         LAPACK_DTGSYL( &trans, &ijob, &m, &n, a, &lda, b, &ldb, c, &ldc, d,
                 &ldd, e, &lde, f, &ldf, &scale, &dif, work, &lwork, iwork,
                 &info );
     }
- inline void tgsyl( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb,
- traits::complex_f* c, integer_t const ldc, traits::complex_f* d,
- integer_t const ldd, traits::complex_f* e, integer_t const lde,
- traits::complex_f* f, integer_t const ldf, float& scale,
- float& dif, traits::complex_f* work, integer_t const lwork,
+ inline void tgsyl( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const traits::complex_f* a,
+ const integer_t lda, const traits::complex_f* b,
+ const integer_t ldb, traits::complex_f* c, const integer_t ldc,
+ const traits::complex_f* d, const integer_t ldd,
+ const traits::complex_f* e, const integer_t lde,
+ traits::complex_f* f, const integer_t ldf, float& scale,
+ float& dif, traits::complex_f* work, const integer_t lwork,
             integer_t* iwork, integer_t& info ) {
         LAPACK_CTGSYL( &trans, &ijob, &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(c), &ldc,
@@ -73,13 +76,14 @@
                 traits::complex_ptr(f), &ldf, &scale, &dif,
                 traits::complex_ptr(work), &lwork, iwork, &info );
     }
- inline void tgsyl( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb,
- traits::complex_d* c, integer_t const ldc, traits::complex_d* d,
- integer_t const ldd, traits::complex_d* e, integer_t const lde,
- traits::complex_d* f, integer_t const ldf, double& scale,
- double& dif, traits::complex_d* work, integer_t const lwork,
+ inline void tgsyl( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const traits::complex_d* a,
+ const integer_t lda, const traits::complex_d* b,
+ const integer_t ldb, traits::complex_d* c, const integer_t ldc,
+ const traits::complex_d* d, const integer_t ldd,
+ const traits::complex_d* e, const integer_t lde,
+ traits::complex_d* f, const integer_t ldf, double& scale,
+ double& dif, traits::complex_d* work, const integer_t lwork,
             integer_t* iwork, integer_t& info ) {
         LAPACK_ZTGSYL( &trans, &ijob, &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(c), &ldc,
@@ -104,11 +108,11 @@
     template< typename MatrixA, typename MatrixB, typename MatrixC,
             typename MatrixD, typename MatrixE, typename MatrixF,
             typename WORK, typename IWORK >
- static void invoke( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixC& c, MatrixD& d, MatrixE& e, MatrixF& f, real_type& scale,
- real_type& dif, integer_t& info, detail::workspace2< WORK,
- IWORK > work ) {
+ static void invoke( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const MatrixA& a,
+ const MatrixB& b, MatrixC& c, const MatrixD& d, const MatrixE& e,
+ MatrixF& f, real_type& scale, real_type& dif, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -144,10 +148,11 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixC,
             typename MatrixD, typename MatrixE, typename MatrixF >
- static void invoke( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixC& c, MatrixD& d, MatrixE& e, MatrixF& f, real_type& scale,
- real_type& dif, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const MatrixA& a,
+ const MatrixB& b, MatrixC& c, const MatrixD& d, const MatrixE& e,
+ MatrixF& f, real_type& scale, real_type& dif, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( m, n ) );
@@ -158,10 +163,11 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixC,
             typename MatrixD, typename MatrixE, typename MatrixF >
- static void invoke( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixC& c, MatrixD& d, MatrixE& e, MatrixF& f, real_type& scale,
- real_type& dif, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const MatrixA& a,
+ const MatrixB& b, MatrixC& c, const MatrixD& d, const MatrixE& e,
+ MatrixF& f, real_type& scale, real_type& dif, integer_t& info,
+ optimal_workspace work ) {
         real_type opt_size_work;
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( m, n ) );
         detail::tgsyl( trans, ijob, m, n, traits::matrix_storage(a),
@@ -182,7 +188,7 @@
         $MIN_SIZE
     }
 
- static integer_t min_size_iwork( integer_t const m, integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t m, const integer_t n ) {
         return m+n+6;
     }
 };
@@ -198,11 +204,11 @@
     template< typename MatrixA, typename MatrixB, typename MatrixC,
             typename MatrixD, typename MatrixE, typename MatrixF,
             typename WORK, typename IWORK >
- static void invoke( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixC& c, MatrixD& d, MatrixE& e, MatrixF& f, real_type& scale,
- real_type& dif, integer_t& info, detail::workspace2< WORK,
- IWORK > work ) {
+ static void invoke( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const MatrixA& a,
+ const MatrixB& b, MatrixC& c, const MatrixD& d, const MatrixE& e,
+ MatrixF& f, real_type& scale, real_type& dif, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -238,10 +244,11 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixC,
             typename MatrixD, typename MatrixE, typename MatrixF >
- static void invoke( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixC& c, MatrixD& d, MatrixE& e, MatrixF& f, real_type& scale,
- real_type& dif, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const MatrixA& a,
+ const MatrixB& b, MatrixC& c, const MatrixD& d, const MatrixE& e,
+ MatrixF& f, real_type& scale, real_type& dif, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( m, n ) );
@@ -252,10 +259,11 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixC,
             typename MatrixD, typename MatrixE, typename MatrixF >
- static void invoke( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixC& c, MatrixD& d, MatrixE& e, MatrixF& f, real_type& scale,
- real_type& dif, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const MatrixA& a,
+ const MatrixB& b, MatrixC& c, const MatrixD& d, const MatrixE& e,
+ MatrixF& f, real_type& scale, real_type& dif, integer_t& info,
+ optimal_workspace work ) {
         value_type opt_size_work;
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( m, n ) );
         detail::tgsyl( trans, ijob, m, n, traits::matrix_storage(a),
@@ -276,7 +284,7 @@
         $MIN_SIZE
     }
 
- static integer_t min_size_iwork( integer_t const m, integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t m, const integer_t n ) {
         return m+n+2;
     }
 };
@@ -286,10 +294,11 @@
 template< typename MatrixA, typename MatrixB, typename MatrixC,
         typename MatrixD, typename MatrixE, typename MatrixF,
         typename Workspace >
-inline integer_t tgsyl( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixC& c, MatrixD& d, MatrixE& e, MatrixF& f,
- typename traits::type_traits< typename traits::matrix_traits<
+inline integer_t tgsyl( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const MatrixA& a,
+ const MatrixB& b, MatrixC& c, const MatrixD& d, const MatrixE& e,
+ MatrixF& f, typename traits::type_traits<
+ typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& scale,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& dif, Workspace work ) {
@@ -303,10 +312,11 @@
 // template function to call tgsyl, default workspace type
 template< typename MatrixA, typename MatrixB, typename MatrixC,
         typename MatrixD, typename MatrixE, typename MatrixF >
-inline integer_t tgsyl( char const trans, integer_t const ijob,
- integer_t const m, integer_t const n, MatrixA& a, MatrixB& b,
- MatrixC& c, MatrixD& d, MatrixE& e, MatrixF& f,
- typename traits::type_traits< typename traits::matrix_traits<
+inline integer_t tgsyl( const char trans, const integer_t ijob,
+ const integer_t m, const integer_t n, const MatrixA& a,
+ const MatrixB& b, MatrixC& c, const MatrixD& d, const MatrixE& e,
+ MatrixF& f, typename traits::type_traits<
+ typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& scale,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& dif ) {

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tprfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tprfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tprfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,34 +36,38 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tprfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, float* ap, float* b,
- integer_t const ldb, float* x, integer_t const ldx, float* ferr,
- float* berr, float* work, integer_t* iwork, integer_t& info ) {
+ inline void tprfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs, const float* ap,
+ const float* b, const integer_t ldb, const float* x,
+ const integer_t ldx, float* ferr, float* berr, float* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_STPRFS( &uplo, &trans, &diag, &n, &nrhs, ap, b, &ldb, x, &ldx,
                 ferr, berr, work, iwork, &info );
     }
- inline void tprfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, double* ap, double* b,
- integer_t const ldb, double* x, integer_t const ldx, double* ferr,
- double* berr, double* work, integer_t* iwork, integer_t& info ) {
+ inline void tprfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs, const double* ap,
+ const double* b, const integer_t ldb, const double* x,
+ const integer_t ldx, double* ferr, double* berr, double* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_DTPRFS( &uplo, &trans, &diag, &n, &nrhs, ap, b, &ldb, x, &ldx,
                 ferr, berr, work, iwork, &info );
     }
- inline void tprfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, traits::complex_f* ap,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* x,
- integer_t const ldx, float* ferr, float* berr,
+ inline void tprfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs,
+ const traits::complex_f* ap, const traits::complex_f* b,
+ const integer_t ldb, const traits::complex_f* x,
+ const integer_t ldx, float* ferr, float* berr,
             traits::complex_f* work, float* rwork, integer_t& info ) {
         LAPACK_CTPRFS( &uplo, &trans, &diag, &n, &nrhs,
                 traits::complex_ptr(ap), traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void tprfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, traits::complex_d* ap,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, double* ferr, double* berr,
+ inline void tprfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs,
+ const traits::complex_d* ap, const traits::complex_d* b,
+ const integer_t ldb, const traits::complex_d* x,
+ const integer_t ldx, double* ferr, double* berr,
             traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZTPRFS( &uplo, &trans, &diag, &n, &nrhs,
                 traits::complex_ptr(ap), traits::complex_ptr(b), &ldb,
@@ -87,10 +91,10 @@
     template< typename MatrixAP, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR, typename WORK,
             typename IWORK >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, MatrixAP& ap, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- detail::workspace2< WORK, IWORK > work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const MatrixAP& ap, const MatrixB& b,
+ const MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAP >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -128,10 +132,10 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, MatrixAP& ap, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const MatrixAP& ap, const MatrixB& b,
+ const MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
         invoke( uplo, trans, diag, n, ap, b, x, ferr, berr, info,
@@ -141,19 +145,19 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, MatrixAP& ap, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const MatrixAP& ap, const MatrixB& b,
+ const MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, optimal_workspace work ) {
         invoke( uplo, trans, diag, n, ap, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -169,10 +173,10 @@
     template< typename MatrixAP, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR, typename WORK,
             typename RWORK >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, MatrixAP& ap, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- detail::workspace2< WORK, RWORK > work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const MatrixAP& ap, const MatrixB& b,
+ const MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -207,10 +211,10 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, MatrixAP& ap, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const MatrixAP& ap, const MatrixB& b,
+ const MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
         invoke( uplo, trans, diag, n, ap, b, x, ferr, berr, info,
@@ -220,19 +224,19 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, MatrixAP& ap, MatrixB& b, MatrixX& x,
- VectorFERR& ferr, VectorBERR& berr, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const MatrixAP& ap, const MatrixB& b,
+ const MatrixX& x, VectorFERR& ferr, VectorBERR& berr,
+ integer_t& info, optimal_workspace work ) {
         invoke( uplo, trans, diag, n, ap, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -241,9 +245,10 @@
 // template function to call tprfs
 template< typename MatrixAP, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR, typename Workspace >
-inline integer_t tprfs( char const uplo, char const trans,
- char const diag, integer_t const n, MatrixAP& ap, MatrixB& b,
- MatrixX& x, VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
+inline integer_t tprfs( const char uplo, const char trans,
+ const char diag, const integer_t n, const MatrixAP& ap,
+ const MatrixB& b, const MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     tprfs_impl< value_type >::invoke( uplo, trans, diag, n, ap, b, x,
@@ -254,9 +259,10 @@
 // template function to call tprfs, default workspace type
 template< typename MatrixAP, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR >
-inline integer_t tprfs( char const uplo, char const trans,
- char const diag, integer_t const n, MatrixAP& ap, MatrixB& b,
- MatrixX& x, VectorFERR& ferr, VectorBERR& berr ) {
+inline integer_t tprfs( const char uplo, const char trans,
+ const char diag, const integer_t n, const MatrixAP& ap,
+ const MatrixB& b, const MatrixX& x, VectorFERR& ferr,
+ VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     tprfs_impl< value_type >::invoke( uplo, trans, diag, n, ap, b, x,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tptri.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tptri.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tptri.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,19 +31,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tptri( char const uplo, char const diag, integer_t const n,
+ inline void tptri( const char uplo, const char diag, const integer_t n,
             float* ap, integer_t& info ) {
         LAPACK_STPTRI( &uplo, &diag, &n, ap, &info );
     }
- inline void tptri( char const uplo, char const diag, integer_t const n,
+ inline void tptri( const char uplo, const char diag, const integer_t n,
             double* ap, integer_t& info ) {
         LAPACK_DTPTRI( &uplo, &diag, &n, ap, &info );
     }
- inline void tptri( char const uplo, char const diag, integer_t const n,
+ inline void tptri( const char uplo, const char diag, const integer_t n,
             traits::complex_f* ap, integer_t& info ) {
         LAPACK_CTPTRI( &uplo, &diag, &n, traits::complex_ptr(ap), &info );
     }
- inline void tptri( char const uplo, char const diag, integer_t const n,
+ inline void tptri( const char uplo, const char diag, const integer_t n,
             traits::complex_d* ap, integer_t& info ) {
         LAPACK_ZTPTRI( &uplo, &diag, &n, traits::complex_ptr(ap), &info );
     }
@@ -58,7 +58,7 @@
 
     // templated specialization
     template< typename MatrixAP >
- static void invoke( char const diag, MatrixAP& ap, integer_t& info ) {
+ static void invoke( const char diag, MatrixAP& ap, integer_t& info ) {
         BOOST_ASSERT( traits::matrix_uplo_tag(ap) == 'U' ||
                 traits::matrix_uplo_tag(ap) == 'L' );
         BOOST_ASSERT( diag == 'N' || diag == 'U' );
@@ -72,7 +72,7 @@
 
 // template function to call tptri
 template< typename MatrixAP >
-inline integer_t tptri( char const diag, MatrixAP& ap ) {
+inline integer_t tptri( const char diag, MatrixAP& ap ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     tptri_impl< value_type >::invoke( diag, ap, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tptrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tptrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tptrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,25 +31,27 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tptrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, float* ap, float* b,
- integer_t const ldb, integer_t& info ) {
+ inline void tptrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs, const float* ap,
+ float* b, const integer_t ldb, integer_t& info ) {
         LAPACK_STPTRS( &uplo, &trans, &diag, &n, &nrhs, ap, b, &ldb, &info );
     }
- inline void tptrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, double* ap, double* b,
- integer_t const ldb, integer_t& info ) {
+ inline void tptrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs, const double* ap,
+ double* b, const integer_t ldb, integer_t& info ) {
         LAPACK_DTPTRS( &uplo, &trans, &diag, &n, &nrhs, ap, b, &ldb, &info );
     }
- inline void tptrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, traits::complex_f* ap,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void tptrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs,
+ const traits::complex_f* ap, traits::complex_f* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_CTPTRS( &uplo, &trans, &diag, &n, &nrhs,
                 traits::complex_ptr(ap), traits::complex_ptr(b), &ldb, &info );
     }
- inline void tptrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, traits::complex_d* ap,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void tptrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs,
+ const traits::complex_d* ap, traits::complex_d* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_ZTPTRS( &uplo, &trans, &diag, &n, &nrhs,
                 traits::complex_ptr(ap), traits::complex_ptr(b), &ldb, &info );
     }
@@ -64,8 +66,9 @@
 
     // templated specialization
     template< typename MatrixAP, typename MatrixB >
- static void invoke( char const uplo, char const trans, char const diag,
- integer_t const n, MatrixAP& ap, MatrixB& b, integer_t& info ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const integer_t n, const MatrixAP& ap, MatrixB& b,
+ integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAP >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -84,8 +87,8 @@
 
 // template function to call tptrs
 template< typename MatrixAP, typename MatrixB >
-inline integer_t tptrs( char const uplo, char const trans,
- char const diag, integer_t const n, MatrixAP& ap, MatrixB& b ) {
+inline integer_t tptrs( const char uplo, const char trans,
+ const char diag, const integer_t n, const MatrixAP& ap, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     tptrs_impl< value_type >::invoke( uplo, trans, diag, n, ap, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trcon.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trcon.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trcon.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,29 +36,29 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void trcon( char const norm, char const uplo, char const diag,
- integer_t const n, float* a, integer_t const lda, float& rcond,
- float* work, integer_t* iwork, integer_t& info ) {
+ inline void trcon( const char norm, const char uplo, const char diag,
+ const integer_t n, const float* a, const integer_t lda,
+ float& rcond, float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_STRCON( &norm, &uplo, &diag, &n, a, &lda, &rcond, work, iwork,
                 &info );
     }
- inline void trcon( char const norm, char const uplo, char const diag,
- integer_t const n, double* a, integer_t const lda, double& rcond,
- double* work, integer_t* iwork, integer_t& info ) {
+ inline void trcon( const char norm, const char uplo, const char diag,
+ const integer_t n, const double* a, const integer_t lda,
+ double& rcond, double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DTRCON( &norm, &uplo, &diag, &n, a, &lda, &rcond, work, iwork,
                 &info );
     }
- inline void trcon( char const norm, char const uplo, char const diag,
- integer_t const n, traits::complex_f* a, integer_t const lda,
- float& rcond, traits::complex_f* work, float* rwork,
- integer_t& info ) {
+ inline void trcon( const char norm, const char uplo, const char diag,
+ const integer_t n, const traits::complex_f* a,
+ const integer_t lda, float& rcond, traits::complex_f* work,
+ float* rwork, integer_t& info ) {
         LAPACK_CTRCON( &norm, &uplo, &diag, &n, traits::complex_ptr(a), &lda,
                 &rcond, traits::complex_ptr(work), rwork, &info );
     }
- inline void trcon( char const norm, char const uplo, char const diag,
- integer_t const n, traits::complex_d* a, integer_t const lda,
- double& rcond, traits::complex_d* work, double* rwork,
- integer_t& info ) {
+ inline void trcon( const char norm, const char uplo, const char diag,
+ const integer_t n, const traits::complex_d* a,
+ const integer_t lda, double& rcond, traits::complex_d* work,
+ double* rwork, integer_t& info ) {
         LAPACK_ZTRCON( &norm, &uplo, &diag, &n, traits::complex_ptr(a), &lda,
                 &rcond, traits::complex_ptr(work), rwork, &info );
     }
@@ -77,9 +77,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename WORK, typename IWORK >
- static void invoke( char const norm, char const uplo, char const diag,
- MatrixA& a, real_type& rcond, integer_t& info, detail::workspace2<
- WORK, IWORK > work ) {
+ static void invoke( const char norm, const char uplo, const char diag,
+ const MatrixA& a, real_type& rcond, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_ASSERT( norm == '1' || norm == 'O' || norm == 'I' );
         BOOST_ASSERT( uplo == 'U' || uplo == 'L' );
         BOOST_ASSERT( diag == 'N' || diag == 'U' );
@@ -98,8 +98,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA >
- static void invoke( char const norm, char const uplo, char const diag,
- MatrixA& a, real_type& rcond, integer_t& info,
+ static void invoke( const char norm, const char uplo, const char diag,
+ const MatrixA& a, real_type& rcond, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
@@ -111,17 +111,17 @@
 
     // optimal workspace specialization
     template< typename MatrixA >
- static void invoke( char const norm, char const uplo, char const diag,
- MatrixA& a, real_type& rcond, integer_t& info,
+ static void invoke( const char norm, const char uplo, const char diag,
+ const MatrixA& a, real_type& rcond, integer_t& info,
             optimal_workspace work ) {
         invoke( norm, uplo, diag, a, rcond, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -135,9 +135,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename WORK, typename RWORK >
- static void invoke( char const norm, char const uplo, char const diag,
- MatrixA& a, real_type& rcond, integer_t& info, detail::workspace2<
- WORK, RWORK > work ) {
+ static void invoke( const char norm, const char uplo, const char diag,
+ const MatrixA& a, real_type& rcond, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_ASSERT( norm == '1' || norm == 'O' || norm == 'I' );
         BOOST_ASSERT( uplo == 'U' || uplo == 'L' );
         BOOST_ASSERT( diag == 'N' || diag == 'U' );
@@ -156,8 +156,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA >
- static void invoke( char const norm, char const uplo, char const diag,
- MatrixA& a, real_type& rcond, integer_t& info,
+ static void invoke( const char norm, const char uplo, const char diag,
+ const MatrixA& a, real_type& rcond, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
@@ -169,17 +169,17 @@
 
     // optimal workspace specialization
     template< typename MatrixA >
- static void invoke( char const norm, char const uplo, char const diag,
- MatrixA& a, real_type& rcond, integer_t& info,
+ static void invoke( const char norm, const char uplo, const char diag,
+ const MatrixA& a, real_type& rcond, integer_t& info,
             optimal_workspace work ) {
         invoke( norm, uplo, diag, a, rcond, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -187,8 +187,8 @@
 
 // template function to call trcon
 template< typename MatrixA, typename Workspace >
-inline integer_t trcon( char const norm, char const uplo,
- char const diag, MatrixA& a, typename traits::type_traits<
+inline integer_t trcon( const char norm, const char uplo,
+ const char diag, const MatrixA& a, typename traits::type_traits<
         typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -200,8 +200,8 @@
 
 // template function to call trcon, default workspace type
 template< typename MatrixA >
-inline integer_t trcon( char const norm, char const uplo,
- char const diag, MatrixA& a, typename traits::type_traits<
+inline integer_t trcon( const char norm, const char uplo,
+ const char diag, const MatrixA& a, typename traits::type_traits<
         typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trevc.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trevc.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trevc.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,34 +36,35 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void trevc( char const side, char const howmny, logical_t* select,
- integer_t const n, float* t, integer_t const ldt, float* vl,
- integer_t const ldvl, float* vr, integer_t const ldvr,
- integer_t const mm, integer_t& m, float* work, integer_t& info ) {
+ inline void trevc( const char side, const char howmny, logical_t* select,
+ const integer_t n, const float* t, const integer_t ldt, float* vl,
+ const integer_t ldvl, float* vr, const integer_t ldvr,
+ const integer_t mm, integer_t& m, float* work, integer_t& info ) {
         LAPACK_STREVC( &side, &howmny, select, &n, t, &ldt, vl, &ldvl, vr,
                 &ldvr, &mm, &m, work, &info );
     }
- inline void trevc( char const side, char const howmny, logical_t* select,
- integer_t const n, double* t, integer_t const ldt, double* vl,
- integer_t const ldvl, double* vr, integer_t const ldvr,
- integer_t const mm, integer_t& m, double* work, integer_t& info ) {
+ inline void trevc( const char side, const char howmny, logical_t* select,
+ const integer_t n, const double* t, const integer_t ldt,
+ double* vl, const integer_t ldvl, double* vr,
+ const integer_t ldvr, const integer_t mm, integer_t& m,
+ double* work, integer_t& info ) {
         LAPACK_DTREVC( &side, &howmny, select, &n, t, &ldt, vl, &ldvl, vr,
                 &ldvr, &mm, &m, work, &info );
     }
- inline void trevc( char const side, char const howmny, logical_t* select,
- integer_t const n, traits::complex_f* t, integer_t const ldt,
- traits::complex_f* vl, integer_t const ldvl,
- traits::complex_f* vr, integer_t const ldvr, integer_t const mm,
+ inline void trevc( const char side, const char howmny,
+ const logical_t* select, const integer_t n, traits::complex_f* t,
+ const integer_t ldt, traits::complex_f* vl, const integer_t ldvl,
+ traits::complex_f* vr, const integer_t ldvr, const integer_t mm,
             integer_t& m, traits::complex_f* work, float* rwork,
             integer_t& info ) {
         LAPACK_CTREVC( &side, &howmny, select, &n, traits::complex_ptr(t),
                 &ldt, traits::complex_ptr(vl), &ldvl, traits::complex_ptr(vr),
                 &ldvr, &mm, &m, traits::complex_ptr(work), rwork, &info );
     }
- inline void trevc( char const side, char const howmny, logical_t* select,
- integer_t const n, traits::complex_d* t, integer_t const ldt,
- traits::complex_d* vl, integer_t const ldvl,
- traits::complex_d* vr, integer_t const ldvr, integer_t const mm,
+ inline void trevc( const char side, const char howmny,
+ const logical_t* select, const integer_t n, traits::complex_d* t,
+ const integer_t ldt, traits::complex_d* vl, const integer_t ldvl,
+ traits::complex_d* vr, const integer_t ldvr, const integer_t mm,
             integer_t& m, traits::complex_d* work, double* rwork,
             integer_t& info ) {
         LAPACK_ZTREVC( &side, &howmny, select, &n, traits::complex_ptr(t),
@@ -86,9 +87,9 @@
     // user-defined workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR, typename WORK >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- integer_t const mm, integer_t& m, integer_t& info,
+ static void invoke( const char side, const char howmny,
+ VectorSELECT& select, const MatrixT& t, MatrixVL& vl,
+ MatrixVR& vr, const integer_t mm, integer_t& m, integer_t& info,
             detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixT >::value_type, typename traits::matrix_traits<
@@ -115,9 +116,9 @@
     // minimal workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- integer_t const mm, integer_t& m, integer_t& info,
+ static void invoke( const char side, const char howmny,
+ VectorSELECT& select, const MatrixT& t, MatrixVL& vl,
+ MatrixVR& vr, const integer_t mm, integer_t& m, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(t) ) );
@@ -128,15 +129,15 @@
     // optimal workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- integer_t const mm, integer_t& m, integer_t& info,
+ static void invoke( const char side, const char howmny,
+ VectorSELECT& select, const MatrixT& t, MatrixVL& vl,
+ MatrixVR& vr, const integer_t mm, integer_t& m, integer_t& info,
             optimal_workspace work ) {
         invoke( side, howmny, select, t, vl, vr, mm, m, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 };
@@ -151,9 +152,9 @@
     // user-defined workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR, typename WORK, typename RWORK >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- integer_t const mm, integer_t& m, integer_t& info,
+ static void invoke( const char side, const char howmny,
+ const VectorSELECT& select, MatrixT& t, MatrixVL& vl,
+ MatrixVR& vr, const integer_t mm, integer_t& m, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixT >::value_type, typename traits::matrix_traits<
@@ -183,9 +184,9 @@
     // minimal workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- integer_t const mm, integer_t& m, integer_t& info,
+ static void invoke( const char side, const char howmny,
+ const VectorSELECT& select, MatrixT& t, MatrixVL& vl,
+ MatrixVR& vr, const integer_t mm, integer_t& m, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(t) ) );
@@ -198,19 +199,19 @@
     // optimal workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR >
- static void invoke( char const side, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- integer_t const mm, integer_t& m, integer_t& info,
+ static void invoke( const char side, const char howmny,
+ const VectorSELECT& select, MatrixT& t, MatrixVL& vl,
+ MatrixVR& vr, const integer_t mm, integer_t& m, integer_t& info,
             optimal_workspace work ) {
         invoke( side, howmny, select, t, vl, vr, mm, m, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -219,9 +220,9 @@
 // template function to call trevc
 template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
         typename MatrixVR, typename Workspace >
-inline integer_t trevc( char const side, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- integer_t const mm, integer_t& m, Workspace work ) {
+inline integer_t trevc( const char side, const char howmny,
+ VectorSELECT& select, const MatrixT& t, MatrixVL& vl, MatrixVR& vr,
+ const integer_t mm, integer_t& m, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixT >::value_type value_type;
     integer_t info(0);
     trevc_impl< value_type >::invoke( side, howmny, select, t, vl, vr,
@@ -232,9 +233,34 @@
 // template function to call trevc, default workspace type
 template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
         typename MatrixVR >
-inline integer_t trevc( char const side, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- integer_t const mm, integer_t& m ) {
+inline integer_t trevc( const char side, const char howmny,
+ VectorSELECT& select, const MatrixT& t, MatrixVL& vl, MatrixVR& vr,
+ const integer_t mm, integer_t& m ) {
+ typedef typename traits::matrix_traits< MatrixT >::value_type value_type;
+ integer_t info(0);
+ trevc_impl< value_type >::invoke( side, howmny, select, t, vl, vr,
+ mm, m, info, optimal_workspace() );
+ return info;
+}
+// template function to call trevc
+template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
+ typename MatrixVR, typename Workspace >
+inline integer_t trevc( const char side, const char howmny,
+ const VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
+ const integer_t mm, integer_t& m, Workspace work ) {
+ typedef typename traits::matrix_traits< MatrixT >::value_type value_type;
+ integer_t info(0);
+ trevc_impl< value_type >::invoke( side, howmny, select, t, vl, vr,
+ mm, m, info, work );
+ return info;
+}
+
+// template function to call trevc, default workspace type
+template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
+ typename MatrixVR >
+inline integer_t trevc( const char side, const char howmny,
+ const VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
+ const integer_t mm, integer_t& m ) {
     typedef typename traits::matrix_traits< MatrixT >::value_type value_type;
     integer_t info(0);
     trevc_impl< value_type >::invoke( side, howmny, select, t, vl, vr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trexc.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trexc.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trexc.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,28 +36,28 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void trexc( char const compq, integer_t const n, float* t,
- integer_t const ldt, float* q, integer_t const ldq,
+ inline void trexc( const char compq, const integer_t n, float* t,
+ const integer_t ldt, float* q, const integer_t ldq,
             integer_t& ifst, integer_t& ilst, float* work, integer_t& info ) {
         LAPACK_STREXC( &compq, &n, t, &ldt, q, &ldq, &ifst, &ilst, work,
                 &info );
     }
- inline void trexc( char const compq, integer_t const n, double* t,
- integer_t const ldt, double* q, integer_t const ldq,
+ inline void trexc( const char compq, const integer_t n, double* t,
+ const integer_t ldt, double* q, const integer_t ldq,
             integer_t& ifst, integer_t& ilst, double* work, integer_t& info ) {
         LAPACK_DTREXC( &compq, &n, t, &ldt, q, &ldq, &ifst, &ilst, work,
                 &info );
     }
- inline void trexc( char const compq, integer_t const n,
- traits::complex_f* t, integer_t const ldt, traits::complex_f* q,
- integer_t const ldq, integer_t const ifst, integer_t const ilst,
+ inline void trexc( const char compq, const integer_t n,
+ traits::complex_f* t, const integer_t ldt, traits::complex_f* q,
+ const integer_t ldq, const integer_t ifst, const integer_t ilst,
             integer_t& info ) {
         LAPACK_CTREXC( &compq, &n, traits::complex_ptr(t), &ldt,
                 traits::complex_ptr(q), &ldq, &ifst, &ilst, &info );
     }
- inline void trexc( char const compq, integer_t const n,
- traits::complex_d* t, integer_t const ldt, traits::complex_d* q,
- integer_t const ldq, integer_t const ifst, integer_t const ilst,
+ inline void trexc( const char compq, const integer_t n,
+ traits::complex_d* t, const integer_t ldt, traits::complex_d* q,
+ const integer_t ldq, const integer_t ifst, const integer_t ilst,
             integer_t& info ) {
         LAPACK_ZTREXC( &compq, &n, traits::complex_ptr(t), &ldt,
                 traits::complex_ptr(q), &ldq, &ifst, &ilst, &info );
@@ -77,7 +77,7 @@
 
     // templated specialization
     template< typename MatrixT, typename MatrixQ >
- static void invoke( char const compq, MatrixT& t, MatrixQ& q,
+ static void invoke( const char compq, MatrixT& t, MatrixQ& q,
             integer_t& ifst, integer_t& ilst, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixT >::value_type, typename traits::matrix_traits<
@@ -106,8 +106,8 @@
 
     // user-defined workspace specialization
     template< typename MatrixT, typename MatrixQ, $WORKSPACE_TYPENAMES >
- static void invoke( char const compq, MatrixT& t, MatrixQ& q,
- integer_t const ifst, integer_t const ilst, integer_t& info,
+ static void invoke( const char compq, MatrixT& t, MatrixQ& q,
+ const integer_t ifst, const integer_t ilst, integer_t& info,
             detail::workspace$WORKSPACE_SIZE< $WORKSPACE_TYPES > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixT >::value_type, typename traits::matrix_traits<
@@ -126,8 +126,8 @@
 
     // minimal workspace specialization
     template< typename MatrixT, typename MatrixQ >
- static void invoke( char const compq, MatrixT& t, MatrixQ& q,
- integer_t const ifst, integer_t const ilst, integer_t& info,
+ static void invoke( const char compq, MatrixT& t, MatrixQ& q,
+ const integer_t ifst, const integer_t ilst, integer_t& info,
             minimal_workspace work ) {
 $SETUP_MIN_WORKARRAYS_POST
         invoke( compq, t, q, ifst, ilst, info, workspace( $TMP_WORKARRAYS ) );
@@ -135,8 +135,8 @@
 
     // optimal workspace specialization
     template< typename MatrixT, typename MatrixQ >
- static void invoke( char const compq, MatrixT& t, MatrixQ& q,
- integer_t const ifst, integer_t const ilst, integer_t& info,
+ static void invoke( const char compq, MatrixT& t, MatrixQ& q,
+ const integer_t ifst, const integer_t ilst, integer_t& info,
             optimal_workspace work ) {
 $OPT_WORKSPACE_FUNC
     }
@@ -147,7 +147,7 @@
 
 // template function to call trexc
 template< typename MatrixT, typename MatrixQ >
-inline integer_t trexc( char const compq, MatrixT& t, MatrixQ& q,
+inline integer_t trexc( const char compq, MatrixT& t, MatrixQ& q,
         integer_t& ifst, integer_t& ilst ) {
     typedef typename traits::matrix_traits< MatrixT >::value_type value_type;
     integer_t info(0);
@@ -156,8 +156,8 @@
 }
 // template function to call trexc
 template< typename MatrixT, typename MatrixQ, typename Workspace >
-inline integer_t trexc( char const compq, MatrixT& t, MatrixQ& q,
- integer_t const ifst, integer_t const ilst, Workspace work ) {
+inline integer_t trexc( const char compq, MatrixT& t, MatrixQ& q,
+ const integer_t ifst, const integer_t ilst, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixT >::value_type value_type;
     integer_t info(0);
     trexc_impl< value_type >::invoke( compq, t, q, ifst, ilst, info,
@@ -167,8 +167,8 @@
 
 // template function to call trexc, default workspace type
 template< typename MatrixT, typename MatrixQ >
-inline integer_t trexc( char const compq, MatrixT& t, MatrixQ& q,
- integer_t const ifst, integer_t const ilst ) {
+inline integer_t trexc( const char compq, MatrixT& t, MatrixQ& q,
+ const integer_t ifst, const integer_t ilst ) {
     typedef typename traits::matrix_traits< MatrixT >::value_type value_type;
     integer_t info(0);
     trexc_impl< value_type >::invoke( compq, t, q, ifst, ilst, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trrfs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trrfs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trrfs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,26 +36,27 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void trrfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, float* a,
- integer_t const lda, float* b, integer_t const ldb, float* x,
- integer_t const ldx, float* ferr, float* berr, float* work,
- integer_t* iwork, integer_t& info ) {
+ inline void trrfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs, const float* a,
+ const integer_t lda, const float* b, const integer_t ldb,
+ const float* x, const integer_t ldx, float* ferr, float* berr,
+ float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_STRRFS( &uplo, &trans, &diag, &n, &nrhs, a, &lda, b, &ldb, x,
                 &ldx, ferr, berr, work, iwork, &info );
     }
- inline void trrfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, double* a,
- integer_t const lda, double* b, integer_t const ldb, double* x,
- integer_t const ldx, double* ferr, double* berr, double* work,
- integer_t* iwork, integer_t& info ) {
+ inline void trrfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs, const double* a,
+ const integer_t lda, const double* b, const integer_t ldb,
+ const double* x, const integer_t ldx, double* ferr, double* berr,
+ double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DTRRFS( &uplo, &trans, &diag, &n, &nrhs, a, &lda, b, &ldb, x,
                 &ldx, ferr, berr, work, iwork, &info );
     }
- inline void trrfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb,
- traits::complex_f* x, integer_t const ldx, float* ferr,
+ inline void trrfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs,
+ const traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* b, const integer_t ldb,
+ const traits::complex_f* x, const integer_t ldx, float* ferr,
             float* berr, traits::complex_f* work, float* rwork,
             integer_t& info ) {
         LAPACK_CTRRFS( &uplo, &trans, &diag, &n, &nrhs,
@@ -63,10 +64,11 @@
                 traits::complex_ptr(x), &ldx, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void trrfs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb,
- traits::complex_d* x, integer_t const ldx, double* ferr,
+ inline void trrfs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs,
+ const traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* b, const integer_t ldb,
+ const traits::complex_d* x, const integer_t ldx, double* ferr,
             double* berr, traits::complex_d* work, double* rwork,
             integer_t& info ) {
         LAPACK_ZTRRFS( &uplo, &trans, &diag, &n, &nrhs,
@@ -91,10 +93,10 @@
     template< typename MatrixA, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR, typename WORK,
             typename IWORK >
- static void invoke( char const uplo, char const trans, char const diag,
- MatrixA& a, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
- IWORK > work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const MatrixA& a, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -137,9 +139,10 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- MatrixA& a, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const MatrixA& a, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
@@ -151,18 +154,19 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- MatrixA& a, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const MatrixA& a, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( uplo, trans, diag, a, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -178,10 +182,10 @@
     template< typename MatrixA, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR, typename WORK,
             typename RWORK >
- static void invoke( char const uplo, char const trans, char const diag,
- MatrixA& a, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
- RWORK > work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const MatrixA& a, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -221,9 +225,10 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- MatrixA& a, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const MatrixA& a, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork(
@@ -235,18 +240,19 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const uplo, char const trans, char const diag,
- MatrixA& a, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const MatrixA& a, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( uplo, trans, diag, a, b, x, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -255,9 +261,9 @@
 // template function to call trrfs
 template< typename MatrixA, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR, typename Workspace >
-inline integer_t trrfs( char const uplo, char const trans,
- char const diag, MatrixA& a, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr, Workspace work ) {
+inline integer_t trrfs( const char uplo, const char trans,
+ const char diag, const MatrixA& a, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     trrfs_impl< value_type >::invoke( uplo, trans, diag, a, b, x, ferr,
@@ -268,9 +274,9 @@
 // template function to call trrfs, default workspace type
 template< typename MatrixA, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR >
-inline integer_t trrfs( char const uplo, char const trans,
- char const diag, MatrixA& a, MatrixB& b, MatrixX& x, VectorFERR& ferr,
- VectorBERR& berr ) {
+inline integer_t trrfs( const char uplo, const char trans,
+ const char diag, const MatrixA& a, const MatrixB& b, const MatrixX& x,
+ VectorFERR& ferr, VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     trrfs_impl< value_type >::invoke( uplo, trans, diag, a, b, x, ferr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsen.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsen.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsen.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,20 +34,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void trsen( char const job, char const compq, logical_t* select,
- integer_t const n, traits::complex_f* t, integer_t const ldt,
- traits::complex_f* q, integer_t const ldq, traits::complex_f* w,
- integer_t& m, float& s, float& sep, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void trsen( const char job, const char compq,
+ const logical_t* select, const integer_t n, traits::complex_f* t,
+ const integer_t ldt, traits::complex_f* q, const integer_t ldq,
+ traits::complex_f* w, integer_t& m, float& s, float& sep,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CTRSEN( &job, &compq, select, &n, traits::complex_ptr(t), &ldt,
                 traits::complex_ptr(q), &ldq, traits::complex_ptr(w), &m, &s,
                 &sep, traits::complex_ptr(work), &lwork, &info );
     }
- inline void trsen( char const job, char const compq, logical_t* select,
- integer_t const n, traits::complex_d* t, integer_t const ldt,
- traits::complex_d* q, integer_t const ldq, traits::complex_d* w,
- integer_t& m, double& s, double& sep, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void trsen( const char job, const char compq,
+ const logical_t* select, const integer_t n, traits::complex_d* t,
+ const integer_t ldt, traits::complex_d* q, const integer_t ldq,
+ traits::complex_d* w, integer_t& m, double& s, double& sep,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZTRSEN( &job, &compq, select, &n, traits::complex_ptr(t), &ldt,
                 traits::complex_ptr(q), &ldq, traits::complex_ptr(w), &m, &s,
                 &sep, traits::complex_ptr(work), &lwork, &info );
@@ -64,8 +64,8 @@
     // user-defined workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixQ,
             typename VectorW, typename WORK >
- static void invoke( char const job, char const compq,
- VectorSELECT& select, MatrixT& t, MatrixQ& q, VectorW& w,
+ static void invoke( const char job, const char compq,
+ const VectorSELECT& select, MatrixT& t, MatrixQ& q, VectorW& w,
             integer_t& m, real_type& s, real_type& sep, integer_t& info,
             detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -96,8 +96,8 @@
     // minimal workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixQ,
             typename VectorW >
- static void invoke( char const job, char const compq,
- VectorSELECT& select, MatrixT& t, MatrixQ& q, VectorW& w,
+ static void invoke( const char job, const char compq,
+ const VectorSELECT& select, MatrixT& t, MatrixQ& q, VectorW& w,
             integer_t& m, real_type& s, real_type& sep, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -109,8 +109,8 @@
     // optimal workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixQ,
             typename VectorW >
- static void invoke( char const job, char const compq,
- VectorSELECT& select, MatrixT& t, MatrixQ& q, VectorW& w,
+ static void invoke( const char job, const char compq,
+ const VectorSELECT& select, MatrixT& t, MatrixQ& q, VectorW& w,
             integer_t& m, real_type& s, real_type& sep, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
@@ -134,8 +134,8 @@
 // template function to call trsen
 template< typename VectorSELECT, typename MatrixT, typename MatrixQ,
         typename VectorW, typename Workspace >
-inline integer_t trsen( char const job, char const compq,
- VectorSELECT& select, MatrixT& t, MatrixQ& q, VectorW& w,
+inline integer_t trsen( const char job, const char compq,
+ const VectorSELECT& select, MatrixT& t, MatrixQ& q, VectorW& w,
         integer_t& m, typename traits::type_traits<
         typename traits::vector_traits<
         VectorSELECT >::value_type >::real_type& s,
@@ -152,8 +152,8 @@
 // template function to call trsen, default workspace type
 template< typename VectorSELECT, typename MatrixT, typename MatrixQ,
         typename VectorW >
-inline integer_t trsen( char const job, char const compq,
- VectorSELECT& select, MatrixT& t, MatrixQ& q, VectorW& w,
+inline integer_t trsen( const char job, const char compq,
+ const VectorSELECT& select, MatrixT& t, MatrixQ& q, VectorW& w,
         integer_t& m, typename traits::type_traits<
         typename traits::vector_traits<
         VectorSELECT >::value_type >::real_type& s,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsna.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsna.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsna.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,39 +36,44 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void trsna( char const job, char const howmny, logical_t* select,
- integer_t const n, float* t, integer_t const ldt, float* vl,
- integer_t const ldvl, float* vr, integer_t const ldvr, float* s,
- float* sep, integer_t const mm, integer_t& m, float* work,
- integer_t const ldwork, integer_t* iwork, integer_t& info ) {
+ inline void trsna( const char job, const char howmny,
+ const logical_t* select, const integer_t n, const float* t,
+ const integer_t ldt, const float* vl, const integer_t ldvl,
+ const float* vr, const integer_t ldvr, float* s, float* sep,
+ const integer_t mm, integer_t& m, float* work,
+ const integer_t ldwork, integer_t* iwork, integer_t& info ) {
         LAPACK_STRSNA( &job, &howmny, select, &n, t, &ldt, vl, &ldvl, vr,
                 &ldvr, s, sep, &mm, &m, work, &ldwork, iwork, &info );
     }
- inline void trsna( char const job, char const howmny, logical_t* select,
- integer_t const n, double* t, integer_t const ldt, double* vl,
- integer_t const ldvl, double* vr, integer_t const ldvr, double* s,
- double* sep, integer_t const mm, integer_t& m, double* work,
- integer_t const ldwork, integer_t* iwork, integer_t& info ) {
+ inline void trsna( const char job, const char howmny,
+ const logical_t* select, const integer_t n, const double* t,
+ const integer_t ldt, const double* vl, const integer_t ldvl,
+ const double* vr, const integer_t ldvr, double* s, double* sep,
+ const integer_t mm, integer_t& m, double* work,
+ const integer_t ldwork, integer_t* iwork, integer_t& info ) {
         LAPACK_DTRSNA( &job, &howmny, select, &n, t, &ldt, vl, &ldvl, vr,
                 &ldvr, s, sep, &mm, &m, work, &ldwork, iwork, &info );
     }
- inline void trsna( char const job, char const howmny, logical_t* select,
- integer_t const n, traits::complex_f* t, integer_t const ldt,
- traits::complex_f* vl, integer_t const ldvl,
- traits::complex_f* vr, integer_t const ldvr, float* s, float* sep,
- integer_t const mm, integer_t& m, traits::complex_f* work,
- integer_t const ldwork, float* rwork, integer_t& info ) {
+ inline void trsna( const char job, const char howmny,
+ const logical_t* select, const integer_t n,
+ const traits::complex_f* t, const integer_t ldt,
+ const traits::complex_f* vl, const integer_t ldvl,
+ const traits::complex_f* vr, const integer_t ldvr, float* s,
+ float* sep, const integer_t mm, integer_t& m,
+ traits::complex_f* work, const integer_t ldwork, float* rwork,
+ integer_t& info ) {
         LAPACK_CTRSNA( &job, &howmny, select, &n, traits::complex_ptr(t),
                 &ldt, traits::complex_ptr(vl), &ldvl, traits::complex_ptr(vr),
                 &ldvr, s, sep, &mm, &m, traits::complex_ptr(work), &ldwork,
                 rwork, &info );
     }
- inline void trsna( char const job, char const howmny, logical_t* select,
- integer_t const n, traits::complex_d* t, integer_t const ldt,
- traits::complex_d* vl, integer_t const ldvl,
- traits::complex_d* vr, integer_t const ldvr, double* s,
- double* sep, integer_t const mm, integer_t& m,
- traits::complex_d* work, integer_t const ldwork, double* rwork,
+ inline void trsna( const char job, const char howmny,
+ const logical_t* select, const integer_t n,
+ const traits::complex_d* t, const integer_t ldt,
+ const traits::complex_d* vl, const integer_t ldvl,
+ const traits::complex_d* vr, const integer_t ldvr, double* s,
+ double* sep, const integer_t mm, integer_t& m,
+ traits::complex_d* work, const integer_t ldwork, double* rwork,
             integer_t& info ) {
         LAPACK_ZTRSNA( &job, &howmny, select, &n, traits::complex_ptr(t),
                 &ldt, traits::complex_ptr(vl), &ldvl, traits::complex_ptr(vr),
@@ -92,10 +97,11 @@
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR, typename VectorS, typename VectorSEP,
             typename WORK, typename IWORK >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- VectorS& s, VectorSEP& sep, integer_t const mm, integer_t& m,
- integer_t& info, detail::workspace2< WORK, IWORK > work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const MatrixT& t, const MatrixVL& vl,
+ const MatrixVR& vr, VectorS& s, VectorSEP& sep,
+ const integer_t mm, integer_t& m, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixT >::value_type, typename traits::matrix_traits<
                 MatrixVL >::value_type >::value) );
@@ -131,10 +137,11 @@
     // minimal workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR, typename VectorS, typename VectorSEP >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- VectorS& s, VectorSEP& sep, integer_t const mm, integer_t& m,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const MatrixT& t, const MatrixVL& vl,
+ const MatrixVR& vr, VectorS& s, VectorSEP& sep,
+ const integer_t mm, integer_t& m, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork(
@@ -146,10 +153,11 @@
     // optimal workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR, typename VectorS, typename VectorSEP >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- VectorS& s, VectorSEP& sep, integer_t const mm, integer_t& m,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const MatrixT& t, const MatrixVL& vl,
+ const MatrixVR& vr, VectorS& s, VectorSEP& sep,
+ const integer_t mm, integer_t& m, integer_t& info,
+ optimal_workspace work ) {
         invoke( job, howmny, select, t, vl, vr, s, sep, mm, m, info,
                 minimal_workspace() );
     }
@@ -174,10 +182,11 @@
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR, typename VectorS, typename VectorSEP,
             typename WORK, typename RWORK >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- VectorS& s, VectorSEP& sep, integer_t const mm, integer_t& m,
- integer_t& info, detail::workspace2< WORK, RWORK > work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const MatrixT& t, const MatrixVL& vl,
+ const MatrixVR& vr, VectorS& s, VectorSEP& sep,
+ const integer_t mm, integer_t& m, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorS >::value_type, typename traits::vector_traits<
                 VectorSEP >::value_type >::value) );
@@ -210,10 +219,11 @@
     // minimal workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR, typename VectorS, typename VectorSEP >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- VectorS& s, VectorSEP& sep, integer_t const mm, integer_t& m,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const MatrixT& t, const MatrixVL& vl,
+ const MatrixVR& vr, VectorS& s, VectorSEP& sep,
+ const integer_t mm, integer_t& m, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork(
@@ -225,10 +235,11 @@
     // optimal workspace specialization
     template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
             typename MatrixVR, typename VectorS, typename VectorSEP >
- static void invoke( char const job, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- VectorS& s, VectorSEP& sep, integer_t const mm, integer_t& m,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const char job, const char howmny,
+ const VectorSELECT& select, const MatrixT& t, const MatrixVL& vl,
+ const MatrixVR& vr, VectorS& s, VectorSEP& sep,
+ const integer_t mm, integer_t& m, integer_t& info,
+ optimal_workspace work ) {
         invoke( job, howmny, select, t, vl, vr, s, sep, mm, m, info,
                 minimal_workspace() );
     }
@@ -247,10 +258,10 @@
 template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
         typename MatrixVR, typename VectorS, typename VectorSEP,
         typename Workspace >
-inline integer_t trsna( char const job, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- VectorS& s, VectorSEP& sep, integer_t const mm, integer_t& m,
- Workspace work ) {
+inline integer_t trsna( const char job, const char howmny,
+ const VectorSELECT& select, const MatrixT& t, const MatrixVL& vl,
+ const MatrixVR& vr, VectorS& s, VectorSEP& sep, const integer_t mm,
+ integer_t& m, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixT >::value_type value_type;
     integer_t info(0);
     trsna_impl< value_type >::invoke( job, howmny, select, t, vl, vr, s,
@@ -261,9 +272,10 @@
 // template function to call trsna, default workspace type
 template< typename VectorSELECT, typename MatrixT, typename MatrixVL,
         typename MatrixVR, typename VectorS, typename VectorSEP >
-inline integer_t trsna( char const job, char const howmny,
- VectorSELECT& select, MatrixT& t, MatrixVL& vl, MatrixVR& vr,
- VectorS& s, VectorSEP& sep, integer_t const mm, integer_t& m ) {
+inline integer_t trsna( const char job, const char howmny,
+ const VectorSELECT& select, const MatrixT& t, const MatrixVL& vl,
+ const MatrixVR& vr, VectorS& s, VectorSEP& sep, const integer_t mm,
+ integer_t& m ) {
     typedef typename traits::matrix_traits< MatrixT >::value_type value_type;
     integer_t info(0);
     trsna_impl< value_type >::invoke( job, howmny, select, t, vl, vr, s,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsyl.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsyl.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trsyl.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,34 +34,38 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void trsyl( char const trana, char const tranb,
- integer_t const isgn, integer_t const m, integer_t const n,
- float* a, integer_t const lda, float* b, integer_t const ldb,
- float* c, integer_t const ldc, float& scale, integer_t& info ) {
+ inline void trsyl( const char trana, const char tranb,
+ const integer_t isgn, const integer_t m, const integer_t n,
+ const float* a, const integer_t lda, const float* b,
+ const integer_t ldb, float* c, const integer_t ldc, float& scale,
+ integer_t& info ) {
         LAPACK_STRSYL( &trana, &tranb, &isgn, &m, &n, a, &lda, b, &ldb, c,
                 &ldc, &scale, &info );
     }
- inline void trsyl( char const trana, char const tranb,
- integer_t const isgn, integer_t const m, integer_t const n,
- double* a, integer_t const lda, double* b, integer_t const ldb,
- double* c, integer_t const ldc, double& scale, integer_t& info ) {
+ inline void trsyl( const char trana, const char tranb,
+ const integer_t isgn, const integer_t m, const integer_t n,
+ const double* a, const integer_t lda, const double* b,
+ const integer_t ldb, double* c, const integer_t ldc,
+ double& scale, integer_t& info ) {
         LAPACK_DTRSYL( &trana, &tranb, &isgn, &m, &n, a, &lda, b, &ldb, c,
                 &ldc, &scale, &info );
     }
- inline void trsyl( char const trana, char const tranb,
- integer_t const isgn, integer_t const m, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* c, integer_t const ldc,
- float& scale, integer_t& info ) {
+ inline void trsyl( const char trana, const char tranb,
+ const integer_t isgn, const integer_t m, const integer_t n,
+ const traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* c, const integer_t ldc, float& scale,
+ integer_t& info ) {
         LAPACK_CTRSYL( &trana, &tranb, &isgn, &m, &n, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(b), &ldb, traits::complex_ptr(c),
                 &ldc, &scale, &info );
     }
- inline void trsyl( char const trana, char const tranb,
- integer_t const isgn, integer_t const m, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* c, integer_t const ldc,
- double& scale, integer_t& info ) {
+ inline void trsyl( const char trana, const char tranb,
+ const integer_t isgn, const integer_t m, const integer_t n,
+ const traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* c, const integer_t ldc, double& scale,
+ integer_t& info ) {
         LAPACK_ZTRSYL( &trana, &tranb, &isgn, &m, &n, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(b), &ldb, traits::complex_ptr(c),
                 &ldc, &scale, &info );
@@ -81,9 +85,9 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB, typename MatrixC >
- static void invoke( char const trana, char const tranb,
- integer_t const isgn, integer_t const m, integer_t const n,
- MatrixA& a, MatrixB& b, MatrixC& c, real_type& scale,
+ static void invoke( const char trana, const char tranb,
+ const integer_t isgn, const integer_t m, const integer_t n,
+ const MatrixA& a, const MatrixB& b, MatrixC& c, real_type& scale,
             integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -114,9 +118,9 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB, typename MatrixC >
- static void invoke( char const trana, char const tranb,
- integer_t const isgn, integer_t const m, integer_t const n,
- MatrixA& a, MatrixB& b, MatrixC& c, real_type& scale,
+ static void invoke( const char trana, const char tranb,
+ const integer_t isgn, const integer_t m, const integer_t n,
+ const MatrixA& a, const MatrixB& b, MatrixC& c, real_type& scale,
             integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -141,10 +145,10 @@
 
 // template function to call trsyl
 template< typename MatrixA, typename MatrixB, typename MatrixC >
-inline integer_t trsyl( char const trana, char const tranb,
- integer_t const isgn, integer_t const m, integer_t const n,
- MatrixA& a, MatrixB& b, MatrixC& c, typename traits::type_traits<
- typename traits::matrix_traits<
+inline integer_t trsyl( const char trana, const char tranb,
+ const integer_t isgn, const integer_t m, const integer_t n,
+ const MatrixA& a, const MatrixB& b, MatrixC& c,
+ typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& scale ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trtri.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trtri.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trtri.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,20 +31,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void trtri( char const uplo, char const diag, integer_t const n,
- float* a, integer_t const lda, integer_t& info ) {
+ inline void trtri( const char uplo, const char diag, const integer_t n,
+ float* a, const integer_t lda, integer_t& info ) {
         LAPACK_STRTRI( &uplo, &diag, &n, a, &lda, &info );
     }
- inline void trtri( char const uplo, char const diag, integer_t const n,
- double* a, integer_t const lda, integer_t& info ) {
+ inline void trtri( const char uplo, const char diag, const integer_t n,
+ double* a, const integer_t lda, integer_t& info ) {
         LAPACK_DTRTRI( &uplo, &diag, &n, a, &lda, &info );
     }
- inline void trtri( char const uplo, char const diag, integer_t const n,
- traits::complex_f* a, integer_t const lda, integer_t& info ) {
+ inline void trtri( const char uplo, const char diag, const integer_t n,
+ traits::complex_f* a, const integer_t lda, integer_t& info ) {
         LAPACK_CTRTRI( &uplo, &diag, &n, traits::complex_ptr(a), &lda, &info );
     }
- inline void trtri( char const uplo, char const diag, integer_t const n,
- traits::complex_d* a, integer_t const lda, integer_t& info ) {
+ inline void trtri( const char uplo, const char diag, const integer_t n,
+ traits::complex_d* a, const integer_t lda, integer_t& info ) {
         LAPACK_ZTRTRI( &uplo, &diag, &n, traits::complex_ptr(a), &lda, &info );
     }
 }
@@ -58,7 +58,7 @@
 
     // templated specialization
     template< typename MatrixA >
- static void invoke( char const diag, MatrixA& a, integer_t& info ) {
+ static void invoke( const char diag, MatrixA& a, integer_t& info ) {
         BOOST_ASSERT( traits::matrix_uplo_tag(a) == 'U' ||
                 traits::matrix_uplo_tag(a) == 'L' );
         BOOST_ASSERT( diag == 'N' || diag == 'U' );
@@ -74,7 +74,7 @@
 
 // template function to call trtri
 template< typename MatrixA >
-inline integer_t trtri( char const diag, MatrixA& a ) {
+inline integer_t trtri( const char diag, MatrixA& a ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     trtri_impl< value_type >::invoke( diag, a, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trtrs.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trtrs.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/trtrs.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,32 +31,32 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void trtrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, float* a,
- integer_t const lda, float* b, integer_t const ldb,
+ inline void trtrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs, const float* a,
+ const integer_t lda, float* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_STRTRS( &uplo, &trans, &diag, &n, &nrhs, a, &lda, b, &ldb,
                 &info );
     }
- inline void trtrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, double* a,
- integer_t const lda, double* b, integer_t const ldb,
+ inline void trtrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs, const double* a,
+ const integer_t lda, double* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_DTRTRS( &uplo, &trans, &diag, &n, &nrhs, a, &lda, b, &ldb,
                 &info );
     }
- inline void trtrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb,
- integer_t& info ) {
+ inline void trtrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs,
+ const traits::complex_f* a, const integer_t lda,
+ traits::complex_f* b, const integer_t ldb, integer_t& info ) {
         LAPACK_CTRTRS( &uplo, &trans, &diag, &n, &nrhs,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 &info );
     }
- inline void trtrs( char const uplo, char const trans, char const diag,
- integer_t const n, integer_t const nrhs, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb,
- integer_t& info ) {
+ inline void trtrs( const char uplo, const char trans, const char diag,
+ const integer_t n, const integer_t nrhs,
+ const traits::complex_d* a, const integer_t lda,
+ traits::complex_d* b, const integer_t ldb, integer_t& info ) {
         LAPACK_ZTRTRS( &uplo, &trans, &diag, &n, &nrhs,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
                 &info );
@@ -72,8 +72,8 @@
 
     // templated specialization
     template< typename MatrixA, typename MatrixB >
- static void invoke( char const uplo, char const trans, char const diag,
- MatrixA& a, MatrixB& b, integer_t& info ) {
+ static void invoke( const char uplo, const char trans, const char diag,
+ const MatrixA& a, MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -96,8 +96,8 @@
 
 // template function to call trtrs
 template< typename MatrixA, typename MatrixB >
-inline integer_t trtrs( char const uplo, char const trans,
- char const diag, MatrixA& a, MatrixB& b ) {
+inline integer_t trtrs( const char uplo, const char trans,
+ const char diag, const MatrixA& a, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     trtrs_impl< value_type >::invoke( uplo, trans, diag, a, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tzrzf.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tzrzf.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/tzrzf.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,26 +37,26 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void tzrzf( integer_t const m, integer_t const n, float* a,
- integer_t const lda, float* tau, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void tzrzf( const integer_t m, const integer_t n, float* a,
+ const integer_t lda, float* tau, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_STZRZF( &m, &n, a, &lda, tau, work, &lwork, &info );
     }
- inline void tzrzf( integer_t const m, integer_t const n, double* a,
- integer_t const lda, double* tau, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void tzrzf( const integer_t m, const integer_t n, double* a,
+ const integer_t lda, double* tau, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DTZRZF( &m, &n, a, &lda, tau, work, &lwork, &info );
     }
- inline void tzrzf( integer_t const m, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* tau,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void tzrzf( const integer_t m, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* tau,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CTZRZF( &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void tzrzf( integer_t const m, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* tau,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void tzrzf( const integer_t m, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* tau,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZTZRZF( &m, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungbr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungbr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungbr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,18 +34,18 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ungbr( char const vect, integer_t const m, integer_t const n,
- integer_t const k, traits::complex_f* a, integer_t const lda,
- traits::complex_f* tau, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ungbr( const char vect, const integer_t m, const integer_t n,
+ const integer_t k, traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* tau, traits::complex_f* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CUNGBR( &vect, &m, &n, &k, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void ungbr( char const vect, integer_t const m, integer_t const n,
- integer_t const k, traits::complex_d* a, integer_t const lda,
- traits::complex_d* tau, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ungbr( const char vect, const integer_t m, const integer_t n,
+ const integer_t k, traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* tau, traits::complex_d* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNGBR( &vect, &m, &n, &k, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
@@ -61,9 +61,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -81,18 +81,18 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( m, n ) );
         invoke( vect, m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( char const vect, integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char vect, const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::ungbr( vect, m, n, k, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -102,7 +102,7 @@
         invoke( vect, m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n ) {
         return std::max( 1, std::min( m, n ) );
     }
 };
@@ -110,9 +110,9 @@
 
 // template function to call ungbr
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t ungbr( char const vect, integer_t const m,
- integer_t const n, integer_t const k, MatrixA& a, VectorTAU& tau,
- Workspace work ) {
+inline integer_t ungbr( const char vect, const integer_t m,
+ const integer_t n, const integer_t k, MatrixA& a,
+ const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ungbr_impl< value_type >::invoke( vect, m, n, k, a, tau, info, work );
@@ -121,8 +121,9 @@
 
 // template function to call ungbr, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t ungbr( char const vect, integer_t const m,
- integer_t const n, integer_t const k, MatrixA& a, VectorTAU& tau ) {
+inline integer_t ungbr( const char vect, const integer_t m,
+ const integer_t n, const integer_t k, MatrixA& a,
+ const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ungbr_impl< value_type >::invoke( vect, m, n, k, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unghr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unghr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unghr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,18 +34,18 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void unghr( integer_t const n, integer_t const ilo,
- integer_t const ihi, traits::complex_f* a, integer_t const lda,
- traits::complex_f* tau, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unghr( const integer_t n, const integer_t ilo,
+ const integer_t ihi, traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* tau, traits::complex_f* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CUNGHR( &n, &ilo, &ihi, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void unghr( integer_t const n, integer_t const ilo,
- integer_t const ihi, traits::complex_d* a, integer_t const lda,
- traits::complex_d* tau, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unghr( const integer_t n, const integer_t ilo,
+ const integer_t ihi, traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* tau, traits::complex_d* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNGHR( &n, &ilo, &ihi, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
@@ -61,9 +61,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const n, integer_t const ilo,
- integer_t const ihi, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const integer_t n, const integer_t ilo,
+ const integer_t ihi, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -80,9 +80,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const n, integer_t const ilo,
- integer_t const ihi, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const integer_t n, const integer_t ilo,
+ const integer_t ihi, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         invoke( n, ilo, ihi, a, tau, info, workspace( tmp_work ) );
@@ -90,9 +90,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const n, integer_t const ilo,
- integer_t const ihi, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const integer_t n, const integer_t ilo,
+ const integer_t ihi, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::unghr( n, ilo, ihi, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -110,8 +110,9 @@
 
 // template function to call unghr
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t unghr( integer_t const n, integer_t const ilo,
- integer_t const ihi, MatrixA& a, VectorTAU& tau, Workspace work ) {
+inline integer_t unghr( const integer_t n, const integer_t ilo,
+ const integer_t ihi, MatrixA& a, const VectorTAU& tau,
+ Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unghr_impl< value_type >::invoke( n, ilo, ihi, a, tau, info, work );
@@ -120,8 +121,8 @@
 
 // template function to call unghr, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t unghr( integer_t const n, integer_t const ilo,
- integer_t const ihi, MatrixA& a, VectorTAU& tau ) {
+inline integer_t unghr( const integer_t n, const integer_t ilo,
+ const integer_t ihi, MatrixA& a, const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unghr_impl< value_type >::invoke( n, ilo, ihi, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unglq.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unglq.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unglq.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,18 +34,18 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void unglq( integer_t const m, integer_t const n,
- integer_t const k, traits::complex_f* a, integer_t const lda,
- traits::complex_f* tau, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unglq( const integer_t m, const integer_t n,
+ const integer_t k, traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* tau, traits::complex_f* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CUNGLQ( &m, &n, &k, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void unglq( integer_t const m, integer_t const n,
- integer_t const k, traits::complex_d* a, integer_t const lda,
- traits::complex_d* tau, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unglq( const integer_t m, const integer_t n,
+ const integer_t k, traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* tau, traits::complex_d* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNGLQ( &m, &n, &k, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
@@ -61,9 +61,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -82,18 +82,18 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( m ) );
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::unglq( m, n, k, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -103,7 +103,7 @@
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m ) {
+ static integer_t min_size_work( const integer_t m ) {
         return std::max( 1, m );
     }
 };
@@ -111,8 +111,8 @@
 
 // template function to call unglq
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t unglq( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, Workspace work ) {
+inline integer_t unglq( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unglq_impl< value_type >::invoke( m, n, k, a, tau, info, work );
@@ -121,8 +121,8 @@
 
 // template function to call unglq, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t unglq( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau ) {
+inline integer_t unglq( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unglq_impl< value_type >::invoke( m, n, k, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungql.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungql.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungql.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,18 +34,18 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ungql( integer_t const m, integer_t const n,
- integer_t const k, traits::complex_f* a, integer_t const lda,
- traits::complex_f* tau, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ungql( const integer_t m, const integer_t n,
+ const integer_t k, traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* tau, traits::complex_f* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CUNGQL( &m, &n, &k, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void ungql( integer_t const m, integer_t const n,
- integer_t const k, traits::complex_d* a, integer_t const lda,
- traits::complex_d* tau, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ungql( const integer_t m, const integer_t n,
+ const integer_t k, traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* tau, traits::complex_d* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNGQL( &m, &n, &k, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
@@ -61,9 +61,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -82,18 +82,18 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::ungql( m, n, k, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -103,7 +103,7 @@
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, n );
     }
 };
@@ -111,8 +111,8 @@
 
 // template function to call ungql
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t ungql( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, Workspace work ) {
+inline integer_t ungql( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ungql_impl< value_type >::invoke( m, n, k, a, tau, info, work );
@@ -121,8 +121,8 @@
 
 // template function to call ungql, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t ungql( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau ) {
+inline integer_t ungql( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ungql_impl< value_type >::invoke( m, n, k, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungqr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungqr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungqr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,18 +34,18 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ungqr( integer_t const m, integer_t const n,
- integer_t const k, traits::complex_f* a, integer_t const lda,
- traits::complex_f* tau, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ungqr( const integer_t m, const integer_t n,
+ const integer_t k, traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* tau, traits::complex_f* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CUNGQR( &m, &n, &k, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void ungqr( integer_t const m, integer_t const n,
- integer_t const k, traits::complex_d* a, integer_t const lda,
- traits::complex_d* tau, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ungqr( const integer_t m, const integer_t n,
+ const integer_t k, traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* tau, traits::complex_d* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNGQR( &m, &n, &k, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
@@ -61,9 +61,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -82,18 +82,18 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::ungqr( m, n, k, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -103,7 +103,7 @@
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, n );
     }
 };
@@ -111,8 +111,8 @@
 
 // template function to call ungqr
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t ungqr( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, Workspace work ) {
+inline integer_t ungqr( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ungqr_impl< value_type >::invoke( m, n, k, a, tau, info, work );
@@ -121,8 +121,8 @@
 
 // template function to call ungqr, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t ungqr( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau ) {
+inline integer_t ungqr( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ungqr_impl< value_type >::invoke( m, n, k, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungrq.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungrq.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungrq.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,18 +34,18 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ungrq( integer_t const m, integer_t const n,
- integer_t const k, traits::complex_f* a, integer_t const lda,
- traits::complex_f* tau, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ungrq( const integer_t m, const integer_t n,
+ const integer_t k, traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* tau, traits::complex_f* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CUNGRQ( &m, &n, &k, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void ungrq( integer_t const m, integer_t const n,
- integer_t const k, traits::complex_d* a, integer_t const lda,
- traits::complex_d* tau, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ungrq( const integer_t m, const integer_t n,
+ const integer_t k, traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* tau, traits::complex_d* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNGRQ( &m, &n, &k, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
@@ -61,9 +61,9 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -82,18 +82,18 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( m ) );
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau,
+ integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::ungrq( m, n, k, traits::matrix_storage(a),
                 traits::leading_dimension(a), traits::vector_storage(tau),
@@ -103,7 +103,7 @@
         invoke( m, n, k, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m ) {
+ static integer_t min_size_work( const integer_t m ) {
         return std::max( 1, m );
     }
 };
@@ -111,8 +111,8 @@
 
 // template function to call ungrq
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t ungrq( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau, Workspace work ) {
+inline integer_t ungrq( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ungrq_impl< value_type >::invoke( m, n, k, a, tau, info, work );
@@ -121,8 +121,8 @@
 
 // template function to call ungrq, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t ungrq( integer_t const m, integer_t const n,
- integer_t const k, MatrixA& a, VectorTAU& tau ) {
+inline integer_t ungrq( const integer_t m, const integer_t n,
+ const integer_t k, MatrixA& a, const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ungrq_impl< value_type >::invoke( m, n, k, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungtr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungtr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/ungtr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,16 +34,18 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ungtr( char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* tau,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void ungtr( const char uplo, const integer_t n,
+ traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* tau, traits::complex_f* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CUNGTR( &uplo, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
     }
- inline void ungtr( char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* tau,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void ungtr( const char uplo, const integer_t n,
+ traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* tau, traits::complex_d* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNGTR( &uplo, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(tau), traits::complex_ptr(work), &lwork,
                 &info );
@@ -59,7 +61,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename WORK >
- static void invoke( integer_t const n, MatrixA& a, VectorTAU& tau,
+ static void invoke( const integer_t n, MatrixA& a, const VectorTAU& tau,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
@@ -80,7 +82,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const n, MatrixA& a, VectorTAU& tau,
+ static void invoke( const integer_t n, MatrixA& a, const VectorTAU& tau,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( side, m,
                 n ) );
@@ -89,7 +91,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU >
- static void invoke( integer_t const n, MatrixA& a, VectorTAU& tau,
+ static void invoke( const integer_t n, MatrixA& a, const VectorTAU& tau,
             integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::ungtr( traits::matrix_uplo_tag(a), n,
@@ -100,8 +102,8 @@
         invoke( n, a, tau, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const integer_t side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -112,8 +114,8 @@
 
 // template function to call ungtr
 template< typename MatrixA, typename VectorTAU, typename Workspace >
-inline integer_t ungtr( integer_t const n, MatrixA& a, VectorTAU& tau,
- Workspace work ) {
+inline integer_t ungtr( const integer_t n, MatrixA& a,
+ const VectorTAU& tau, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ungtr_impl< value_type >::invoke( n, a, tau, info, work );
@@ -122,7 +124,8 @@
 
 // template function to call ungtr, default workspace type
 template< typename MatrixA, typename VectorTAU >
-inline integer_t ungtr( integer_t const n, MatrixA& a, VectorTAU& tau ) {
+inline integer_t ungtr( const integer_t n, MatrixA& a,
+ const VectorTAU& tau ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     ungtr_impl< value_type >::invoke( n, a, tau, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmbr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmbr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmbr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,21 +34,23 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void unmbr( char const vect, char const side, char const trans,
- integer_t const m, integer_t const n, integer_t const k,
- traits::complex_f* a, integer_t const lda, traits::complex_f* tau,
- traits::complex_f* c, integer_t const ldc,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void unmbr( const char vect, const char side, const char trans,
+ const integer_t m, const integer_t n, const integer_t k,
+ const traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* tau, traits::complex_f* c,
+ const integer_t ldc, traits::complex_f* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CUNMBR( &vect, &side, &trans, &m, &n, &k,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(tau),
                 traits::complex_ptr(c), &ldc, traits::complex_ptr(work),
                 &lwork, &info );
     }
- inline void unmbr( char const vect, char const side, char const trans,
- integer_t const m, integer_t const n, integer_t const k,
- traits::complex_d* a, integer_t const lda, traits::complex_d* tau,
- traits::complex_d* c, integer_t const ldc,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void unmbr( const char vect, const char side, const char trans,
+ const integer_t m, const integer_t n, const integer_t k,
+ const traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* tau, traits::complex_d* c,
+ const integer_t ldc, traits::complex_d* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNMBR( &vect, &side, &trans, &m, &n, &k,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(tau),
                 traits::complex_ptr(c), &ldc, traits::complex_ptr(work),
@@ -66,9 +68,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const vect, char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
- integer_t& info, detail::workspace1< WORK > work ) {
+ static void invoke( const char vect, const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c, integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -97,9 +99,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const vect, char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const char vect, const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
         invoke( vect, side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -107,9 +109,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const vect, char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const char vect, const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c, integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::unmbr( vect, side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k, traits::matrix_storage(a),
@@ -121,8 +123,8 @@
         invoke( vect, side, trans, k, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -134,9 +136,9 @@
 // template function to call unmbr
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t unmbr( char const vect, char const side,
- char const trans, integer_t const k, MatrixA& a, VectorTAU& tau,
- MatrixC& c, Workspace work ) {
+inline integer_t unmbr( const char vect, const char side,
+ const char trans, const integer_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unmbr_impl< value_type >::invoke( vect, side, trans, k, a, tau, c,
@@ -146,9 +148,9 @@
 
 // template function to call unmbr, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t unmbr( char const vect, char const side,
- char const trans, integer_t const k, MatrixA& a, VectorTAU& tau,
- MatrixC& c ) {
+inline integer_t unmbr( const char vect, const char side,
+ const char trans, const integer_t k, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unmbr_impl< value_type >::invoke( vect, side, trans, k, a, tau, c,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmhr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmhr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmhr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,21 +34,23 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void unmhr( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const ilo, integer_t const ihi,
- traits::complex_f* a, integer_t const lda, traits::complex_f* tau,
- traits::complex_f* c, integer_t const ldc,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void unmhr( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t ilo, const integer_t ihi,
+ const traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* tau, traits::complex_f* c,
+ const integer_t ldc, traits::complex_f* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CUNMHR( &side, &trans, &m, &n, &ilo, &ihi,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(tau),
                 traits::complex_ptr(c), &ldc, traits::complex_ptr(work),
                 &lwork, &info );
     }
- inline void unmhr( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const ilo, integer_t const ihi,
- traits::complex_d* a, integer_t const lda, traits::complex_d* tau,
- traits::complex_d* c, integer_t const ldc,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void unmhr( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t ilo, const integer_t ihi,
+ const traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* tau, traits::complex_d* c,
+ const integer_t ldc, traits::complex_d* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNMHR( &side, &trans, &m, &n, &ilo, &ihi,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(tau),
                 traits::complex_ptr(c), &ldc, traits::complex_ptr(work),
@@ -66,10 +68,10 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans,
- integer_t const ilo, integer_t const ihi, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info, detail::workspace1<
- WORK > work ) {
+ static void invoke( const char side, const char trans,
+ const integer_t ilo, const integer_t ihi, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
+ detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -96,9 +98,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans,
- integer_t const ilo, integer_t const ihi, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info,
+ static void invoke( const char side, const char trans,
+ const integer_t ilo, const integer_t ihi, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
@@ -108,9 +110,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans,
- integer_t const ilo, integer_t const ihi, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info,
+ static void invoke( const char side, const char trans,
+ const integer_t ilo, const integer_t ihi, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
         detail::unmhr( side, trans, traits::matrix_num_rows(c),
@@ -124,8 +126,8 @@
                 workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -137,9 +139,9 @@
 // template function to call unmhr
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t unmhr( char const side, char const trans,
- integer_t const ilo, integer_t const ihi, MatrixA& a, VectorTAU& tau,
- MatrixC& c, Workspace work ) {
+inline integer_t unmhr( const char side, const char trans,
+ const integer_t ilo, const integer_t ihi, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unmhr_impl< value_type >::invoke( side, trans, ilo, ihi, a, tau, c,
@@ -149,9 +151,9 @@
 
 // template function to call unmhr, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t unmhr( char const side, char const trans,
- integer_t const ilo, integer_t const ihi, MatrixA& a, VectorTAU& tau,
- MatrixC& c ) {
+inline integer_t unmhr( const char side, const char trans,
+ const integer_t ilo, const integer_t ihi, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unmhr_impl< value_type >::invoke( side, trans, ilo, ihi, a, tau, c,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmlq.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmlq.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmlq.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,20 +34,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void unmlq( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, traits::complex_f* a,
- integer_t const lda, traits::complex_f* tau, traits::complex_f* c,
- integer_t const ldc, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unmlq( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const traits::complex_f* a,
+ const integer_t lda, const traits::complex_f* tau,
+ traits::complex_f* c, const integer_t ldc,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CUNMLQ( &side, &trans, &m, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void unmlq( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, traits::complex_d* a,
- integer_t const lda, traits::complex_d* tau, traits::complex_d* c,
- integer_t const ldc, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unmlq( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const traits::complex_d* a,
+ const integer_t lda, const traits::complex_d* tau,
+ traits::complex_d* c, const integer_t ldc,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNMLQ( &side, &trans, &m, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
@@ -64,9 +64,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -94,9 +94,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -104,9 +104,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::unmlq( side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k, traits::matrix_storage(a),
@@ -118,8 +118,8 @@
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -131,8 +131,8 @@
 // template function to call unmlq
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t unmlq( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
+inline integer_t unmlq( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau, MatrixC& c,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -143,8 +143,9 @@
 
 // template function to call unmlq, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t unmlq( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c ) {
+inline integer_t unmlq( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unmlq_impl< value_type >::invoke( side, trans, k, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmql.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmql.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmql.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,20 +34,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void unmql( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, traits::complex_f* a,
- integer_t const lda, traits::complex_f* tau, traits::complex_f* c,
- integer_t const ldc, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unmql( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const traits::complex_f* a,
+ const integer_t lda, const traits::complex_f* tau,
+ traits::complex_f* c, const integer_t ldc,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CUNMQL( &side, &trans, &m, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void unmql( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, traits::complex_d* a,
- integer_t const lda, traits::complex_d* tau, traits::complex_d* c,
- integer_t const ldc, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unmql( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const traits::complex_d* a,
+ const integer_t lda, const traits::complex_d* tau,
+ traits::complex_d* c, const integer_t ldc,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNMQL( &side, &trans, &m, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
@@ -64,9 +64,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -93,9 +93,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -103,9 +103,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::unmql( side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k, traits::matrix_storage(a),
@@ -117,8 +117,8 @@
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -130,8 +130,8 @@
 // template function to call unmql
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t unmql( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
+inline integer_t unmql( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau, MatrixC& c,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -142,8 +142,9 @@
 
 // template function to call unmql, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t unmql( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c ) {
+inline integer_t unmql( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unmql_impl< value_type >::invoke( side, trans, k, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmqr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmqr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmqr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,20 +34,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void unmqr( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, traits::complex_f* a,
- integer_t const lda, traits::complex_f* tau, traits::complex_f* c,
- integer_t const ldc, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unmqr( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const traits::complex_f* a,
+ const integer_t lda, const traits::complex_f* tau,
+ traits::complex_f* c, const integer_t ldc,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CUNMQR( &side, &trans, &m, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void unmqr( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, traits::complex_d* a,
- integer_t const lda, traits::complex_d* tau, traits::complex_d* c,
- integer_t const ldc, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unmqr( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const traits::complex_d* a,
+ const integer_t lda, const traits::complex_d* tau,
+ traits::complex_d* c, const integer_t ldc,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNMQR( &side, &trans, &m, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
@@ -64,9 +64,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -93,9 +93,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -103,9 +103,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::unmqr( side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k, traits::matrix_storage(a),
@@ -117,8 +117,8 @@
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -130,8 +130,8 @@
 // template function to call unmqr
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t unmqr( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
+inline integer_t unmqr( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau, MatrixC& c,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -142,8 +142,9 @@
 
 // template function to call unmqr, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t unmqr( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c ) {
+inline integer_t unmqr( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unmqr_impl< value_type >::invoke( side, trans, k, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmrq.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmrq.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmrq.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,20 +34,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void unmrq( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, traits::complex_f* a,
- integer_t const lda, traits::complex_f* tau, traits::complex_f* c,
- integer_t const ldc, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unmrq( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const traits::complex_f* a,
+ const integer_t lda, const traits::complex_f* tau,
+ traits::complex_f* c, const integer_t ldc,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CUNMRQ( &side, &trans, &m, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void unmrq( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, traits::complex_d* a,
- integer_t const lda, traits::complex_d* tau, traits::complex_d* c,
- integer_t const ldc, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unmrq( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const traits::complex_d* a,
+ const integer_t lda, const traits::complex_d* tau,
+ traits::complex_d* c, const integer_t ldc,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNMRQ( &side, &trans, &m, &n, &k, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
@@ -64,9 +64,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -94,9 +94,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -104,9 +104,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::unmrq( side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k, traits::matrix_storage(a),
@@ -118,8 +118,8 @@
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -131,8 +131,8 @@
 // template function to call unmrq
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t unmrq( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
+inline integer_t unmrq( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau, MatrixC& c,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -143,8 +143,9 @@
 
 // template function to call unmrq, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t unmrq( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c ) {
+inline integer_t unmrq( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unmrq_impl< value_type >::invoke( side, trans, k, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmrz.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmrz.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmrz.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,20 +34,22 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void unmrz( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, integer_t const l,
- traits::complex_f* a, integer_t const lda, traits::complex_f* tau,
- traits::complex_f* c, integer_t const ldc,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void unmrz( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const integer_t l,
+ const traits::complex_f* a, const integer_t lda,
+ const traits::complex_f* tau, traits::complex_f* c,
+ const integer_t ldc, traits::complex_f* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_CUNMRZ( &side, &trans, &m, &n, &k, &l, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void unmrz( char const side, char const trans, integer_t const m,
- integer_t const n, integer_t const k, integer_t const l,
- traits::complex_d* a, integer_t const lda, traits::complex_d* tau,
- traits::complex_d* c, integer_t const ldc,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void unmrz( const char side, const char trans, const integer_t m,
+ const integer_t n, const integer_t k, const integer_t l,
+ const traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* tau, traits::complex_d* c,
+ const integer_t ldc, traits::complex_d* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNMRZ( &side, &trans, &m, &n, &k, &l, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
@@ -64,9 +66,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -94,9 +96,9 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         invoke( side, trans, k, a, tau, c, info, workspace( tmp_work ) );
@@ -104,9 +106,9 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, integer_t const k,
- MatrixA& a, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char trans, const integer_t k,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::unmrz( side, trans, traits::matrix_num_rows(c),
                 traits::matrix_num_columns(c), k,
@@ -128,8 +130,8 @@
 // template function to call unmrz
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t unmrz( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
+inline integer_t unmrz( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau, MatrixC& c,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -140,8 +142,9 @@
 
 // template function to call unmrz, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t unmrz( char const side, char const trans,
- integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c ) {
+inline integer_t unmrz( const char side, const char trans,
+ const integer_t k, const MatrixA& a, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unmrz_impl< value_type >::invoke( side, trans, k, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmtr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmtr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/unmtr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,20 +34,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void unmtr( char const side, char const uplo, char const trans,
- integer_t const m, integer_t const n, traits::complex_f* a,
- integer_t const lda, traits::complex_f* tau, traits::complex_f* c,
- integer_t const ldc, traits::complex_f* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unmtr( const char side, const char uplo, const char trans,
+ const integer_t m, const integer_t n, const traits::complex_f* a,
+ const integer_t lda, const traits::complex_f* tau,
+ traits::complex_f* c, const integer_t ldc,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CUNMTR( &side, &uplo, &trans, &m, &n, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void unmtr( char const side, char const uplo, char const trans,
- integer_t const m, integer_t const n, traits::complex_d* a,
- integer_t const lda, traits::complex_d* tau, traits::complex_d* c,
- integer_t const ldc, traits::complex_d* work,
- integer_t const lwork, integer_t& info ) {
+ inline void unmtr( const char side, const char uplo, const char trans,
+ const integer_t m, const integer_t n, const traits::complex_d* a,
+ const integer_t lda, const traits::complex_d* tau,
+ traits::complex_d* c, const integer_t ldc,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZUNMTR( &side, &uplo, &trans, &m, &n, traits::complex_ptr(a),
                 &lda, traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &lwork, &info );
@@ -64,9 +64,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const trans, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info, detail::workspace1<
- WORK > work ) {
+ static void invoke( const char side, const char trans, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
+ detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -95,8 +95,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info,
+ static void invoke( const char side, const char trans, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( side,
                 traits::matrix_num_rows(c), traits::matrix_num_columns(c) ) );
@@ -105,8 +105,8 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const trans, MatrixA& a,
- VectorTAU& tau, MatrixC& c, integer_t& info,
+ static void invoke( const char side, const char trans, const MatrixA& a,
+ const VectorTAU& tau, MatrixC& c, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
         detail::unmtr( side, traits::matrix_uplo_tag(a), trans,
@@ -119,8 +119,8 @@
         invoke( side, trans, a, tau, c, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const side, integer_t const m,
- integer_t const n ) {
+ static integer_t min_size_work( const char side, const integer_t m,
+ const integer_t n ) {
         if ( side == 'L' )
             return std::max( 1, n );
         else
@@ -132,8 +132,8 @@
 // template function to call unmtr
 template< typename MatrixA, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t unmtr( char const side, char const trans, MatrixA& a,
- VectorTAU& tau, MatrixC& c, Workspace work ) {
+inline integer_t unmtr( const char side, const char trans,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unmtr_impl< value_type >::invoke( side, trans, a, tau, c, info,
@@ -143,8 +143,8 @@
 
 // template function to call unmtr, default workspace type
 template< typename MatrixA, typename VectorTAU, typename MatrixC >
-inline integer_t unmtr( char const side, char const trans, MatrixA& a,
- VectorTAU& tau, MatrixC& c ) {
+inline integer_t unmtr( const char side, const char trans,
+ const MatrixA& a, const VectorTAU& tau, MatrixC& c ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     unmtr_impl< value_type >::invoke( side, trans, a, tau, c, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/upgtr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/upgtr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/upgtr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,17 +33,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void upgtr( char const uplo, integer_t const n,
- traits::complex_f* ap, traits::complex_f* tau,
- traits::complex_f* q, integer_t const ldq,
+ inline void upgtr( const char uplo, const integer_t n,
+ const traits::complex_f* ap, const traits::complex_f* tau,
+ traits::complex_f* q, const integer_t ldq,
             traits::complex_f* work, integer_t& info ) {
         LAPACK_CUPGTR( &uplo, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(tau), traits::complex_ptr(q), &ldq,
                 traits::complex_ptr(work), &info );
     }
- inline void upgtr( char const uplo, integer_t const n,
- traits::complex_d* ap, traits::complex_d* tau,
- traits::complex_d* q, integer_t const ldq,
+ inline void upgtr( const char uplo, const integer_t n,
+ const traits::complex_d* ap, const traits::complex_d* tau,
+ traits::complex_d* q, const integer_t ldq,
             traits::complex_d* work, integer_t& info ) {
         LAPACK_ZUPGTR( &uplo, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(tau), traits::complex_ptr(q), &ldq,
@@ -61,8 +61,9 @@
     // user-defined workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixQ,
             typename WORK >
- static void invoke( char const uplo, VectorAP& ap, VectorTAU& tau,
- MatrixQ& q, integer_t& info, detail::workspace1< WORK > work ) {
+ static void invoke( const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixQ& q, integer_t& info,
+ detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorAP >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -88,8 +89,9 @@
 
     // minimal workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixQ >
- static void invoke( char const uplo, VectorAP& ap, VectorTAU& tau,
- MatrixQ& q, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixQ& q, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(q) ) );
         invoke( uplo, ap, tau, q, info, workspace( tmp_work ) );
@@ -97,12 +99,13 @@
 
     // optimal workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixQ >
- static void invoke( char const uplo, VectorAP& ap, VectorTAU& tau,
- MatrixQ& q, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixQ& q, integer_t& info,
+ optimal_workspace work ) {
         invoke( uplo, ap, tau, q, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n-1;
     }
 };
@@ -111,8 +114,8 @@
 // template function to call upgtr
 template< typename VectorAP, typename VectorTAU, typename MatrixQ,
         typename Workspace >
-inline integer_t upgtr( char const uplo, VectorAP& ap, VectorTAU& tau,
- MatrixQ& q, Workspace work ) {
+inline integer_t upgtr( const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixQ& q, Workspace work ) {
     typedef typename traits::vector_traits< VectorAP >::value_type value_type;
     integer_t info(0);
     upgtr_impl< value_type >::invoke( uplo, ap, tau, q, info, work );
@@ -121,8 +124,8 @@
 
 // template function to call upgtr, default workspace type
 template< typename VectorAP, typename VectorTAU, typename MatrixQ >
-inline integer_t upgtr( char const uplo, VectorAP& ap, VectorTAU& tau,
- MatrixQ& q ) {
+inline integer_t upgtr( const char uplo, const VectorAP& ap,
+ const VectorTAU& tau, MatrixQ& q ) {
     typedef typename traits::vector_traits< VectorAP >::value_type value_type;
     integer_t info(0);
     upgtr_impl< value_type >::invoke( uplo, ap, tau, q, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/upmtr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/upmtr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/computational/upmtr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,18 +33,18 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void upmtr( char const side, char const uplo, char const trans,
- integer_t const m, integer_t const n, traits::complex_f* ap,
- traits::complex_f* tau, traits::complex_f* c, integer_t const ldc,
- traits::complex_f* work, integer_t& info ) {
+ inline void upmtr( const char side, const char uplo, const char trans,
+ const integer_t m, const integer_t n, const traits::complex_f* ap,
+ const traits::complex_f* tau, traits::complex_f* c,
+ const integer_t ldc, traits::complex_f* work, integer_t& info ) {
         LAPACK_CUPMTR( &side, &uplo, &trans, &m, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &info );
     }
- inline void upmtr( char const side, char const uplo, char const trans,
- integer_t const m, integer_t const n, traits::complex_d* ap,
- traits::complex_d* tau, traits::complex_d* c, integer_t const ldc,
- traits::complex_d* work, integer_t& info ) {
+ inline void upmtr( const char side, const char uplo, const char trans,
+ const integer_t m, const integer_t n, const traits::complex_d* ap,
+ const traits::complex_d* tau, traits::complex_d* c,
+ const integer_t ldc, traits::complex_d* work, integer_t& info ) {
         LAPACK_ZUPMTR( &side, &uplo, &trans, &m, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(tau), traits::complex_ptr(c), &ldc,
                 traits::complex_ptr(work), &info );
@@ -61,9 +61,9 @@
     // user-defined workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixC,
             typename WORK >
- static void invoke( char const side, char const uplo, char const trans,
- VectorAP& ap, VectorTAU& tau, MatrixC& c, integer_t& info,
- detail::workspace1< WORK > work ) {
+ static void invoke( const char side, const char uplo, const char trans,
+ const VectorAP& ap, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorAP >::value_type, typename traits::vector_traits<
                 VectorTAU >::value_type >::value) );
@@ -88,9 +88,9 @@
 
     // minimal workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const uplo, char const trans,
- VectorAP& ap, VectorTAU& tau, MatrixC& c, integer_t& info,
- minimal_workspace work ) {
+ static void invoke( const char side, const char uplo, const char trans,
+ const VectorAP& ap, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         invoke( side, uplo, trans, ap, tau, c, info, workspace( tmp_work ) );
@@ -98,9 +98,9 @@
 
     // optimal workspace specialization
     template< typename VectorAP, typename VectorTAU, typename MatrixC >
- static void invoke( char const side, char const uplo, char const trans,
- VectorAP& ap, VectorTAU& tau, MatrixC& c, integer_t& info,
- optimal_workspace work ) {
+ static void invoke( const char side, const char uplo, const char trans,
+ const VectorAP& ap, const VectorTAU& tau, MatrixC& c,
+ integer_t& info, optimal_workspace work ) {
         invoke( side, uplo, trans, ap, tau, c, info, minimal_workspace() );
     }
 
@@ -113,9 +113,9 @@
 // template function to call upmtr
 template< typename VectorAP, typename VectorTAU, typename MatrixC,
         typename Workspace >
-inline integer_t upmtr( char const side, char const uplo,
- char const trans, VectorAP& ap, VectorTAU& tau, MatrixC& c,
- Workspace work ) {
+inline integer_t upmtr( const char side, const char uplo,
+ const char trans, const VectorAP& ap, const VectorTAU& tau,
+ MatrixC& c, Workspace work ) {
     typedef typename traits::vector_traits< VectorAP >::value_type value_type;
     integer_t info(0);
     upmtr_impl< value_type >::invoke( side, uplo, trans, ap, tau, c,
@@ -125,8 +125,9 @@
 
 // template function to call upmtr, default workspace type
 template< typename VectorAP, typename VectorTAU, typename MatrixC >
-inline integer_t upmtr( char const side, char const uplo,
- char const trans, VectorAP& ap, VectorTAU& tau, MatrixC& c ) {
+inline integer_t upmtr( const char side, const char uplo,
+ const char trans, const VectorAP& ap, const VectorTAU& tau,
+ MatrixC& c ) {
     typedef typename traits::vector_traits< VectorAP >::value_type value_type;
     integer_t info(0);
     upmtr_impl< value_type >::invoke( side, uplo, trans, ap, tau, c,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/detail/lapack.h
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/detail/lapack.h (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/detail/lapack.h 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -28,2212 +28,2212 @@
 //
 
 // Value-type variants of hbgst
-void LAPACK_CHBGST( char const* vect, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, fcomplex_t* ab,
- integer_t const* ldab, fcomplex_t const* bb, integer_t const* ldbb,
- fcomplex_t* x, integer_t const* ldx, fcomplex_t* work, float* rwork,
- integer_t* info );
-void LAPACK_ZHBGST( char const* vect, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, dcomplex_t* ab,
- integer_t const* ldab, dcomplex_t const* bb, integer_t const* ldbb,
- dcomplex_t* x, integer_t const* ldx, dcomplex_t* work, double* rwork,
+void LAPACK_CHBGST( const char* vect, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, fcomplex_t* ab,
+ const integer_t* ldab, const fcomplex_t* bb, const integer_t* ldbb,
+ fcomplex_t* x, const integer_t* ldx, fcomplex_t* work, float* rwork,
+ integer_t* info );
+void LAPACK_ZHBGST( const char* vect, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, dcomplex_t* ab,
+ const integer_t* ldab, const dcomplex_t* bb, const integer_t* ldbb,
+ dcomplex_t* x, const integer_t* ldx, dcomplex_t* work, double* rwork,
         integer_t* info );
 
 // Value-type variants of hegst
-void LAPACK_CHEGST( integer_t const* itype, char const* uplo,
- integer_t const* n, fcomplex_t* a, integer_t const* lda,
- fcomplex_t const* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZHEGST( integer_t const* itype, char const* uplo,
- integer_t const* n, dcomplex_t* a, integer_t const* lda,
- dcomplex_t const* b, integer_t const* ldb, integer_t* info );
+void LAPACK_CHEGST( const integer_t* itype, const char* uplo,
+ const integer_t* n, fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZHEGST( const integer_t* itype, const char* uplo,
+ const integer_t* n, dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of pbstf
-void LAPACK_SPBSTF( char const* uplo, integer_t const* n, integer_t const* kd,
- float* ab, integer_t const* ldab, integer_t* info );
-void LAPACK_DPBSTF( char const* uplo, integer_t const* n, integer_t const* kd,
- double* ab, integer_t const* ldab, integer_t* info );
-void LAPACK_CPBSTF( char const* uplo, integer_t const* n, integer_t const* kd,
- fcomplex_t* ab, integer_t const* ldab, integer_t* info );
-void LAPACK_ZPBSTF( char const* uplo, integer_t const* n, integer_t const* kd,
- dcomplex_t* ab, integer_t const* ldab, integer_t* info );
+void LAPACK_SPBSTF( const char* uplo, const integer_t* n, const integer_t* kd,
+ float* ab, const integer_t* ldab, integer_t* info );
+void LAPACK_DPBSTF( const char* uplo, const integer_t* n, const integer_t* kd,
+ double* ab, const integer_t* ldab, integer_t* info );
+void LAPACK_CPBSTF( const char* uplo, const integer_t* n, const integer_t* kd,
+ fcomplex_t* ab, const integer_t* ldab, integer_t* info );
+void LAPACK_ZPBSTF( const char* uplo, const integer_t* n, const integer_t* kd,
+ dcomplex_t* ab, const integer_t* ldab, integer_t* info );
 
 // Value-type variants of sbgst
-void LAPACK_SSBGST( char const* vect, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, float* ab,
- integer_t const* ldab, float const* bb, integer_t const* ldbb,
- float* x, integer_t const* ldx, float* work, integer_t* info );
-void LAPACK_DSBGST( char const* vect, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, double* ab,
- integer_t const* ldab, double const* bb, integer_t const* ldbb,
- double* x, integer_t const* ldx, double* work, integer_t* info );
+void LAPACK_SSBGST( const char* vect, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, float* ab,
+ const integer_t* ldab, const float* bb, const integer_t* ldbb,
+ float* x, const integer_t* ldx, float* work, integer_t* info );
+void LAPACK_DSBGST( const char* vect, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, double* ab,
+ const integer_t* ldab, const double* bb, const integer_t* ldbb,
+ double* x, const integer_t* ldx, double* work, integer_t* info );
 
 // Value-type variants of sygst
-void LAPACK_SSYGST( integer_t const* itype, char const* uplo,
- integer_t const* n, float* a, integer_t const* lda, float const* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_DSYGST( integer_t const* itype, char const* uplo,
- integer_t const* n, double* a, integer_t const* lda, double const* b,
- integer_t const* ldb, integer_t* info );
+void LAPACK_SSYGST( const integer_t* itype, const char* uplo,
+ const integer_t* n, float* a, const integer_t* lda, const float* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_DSYGST( const integer_t* itype, const char* uplo,
+ const integer_t* n, double* a, const integer_t* lda, const double* b,
+ const integer_t* ldb, integer_t* info );
 
 // Value-type variants of ggqrf
-void LAPACK_SGGQRF( integer_t const* n, integer_t const* m,
- integer_t const* p, float* a, integer_t const* lda, float* taua,
- float* b, integer_t const* ldb, float* taub, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DGGQRF( integer_t const* n, integer_t const* m,
- integer_t const* p, double* a, integer_t const* lda, double* taua,
- double* b, integer_t const* ldb, double* taub, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CGGQRF( integer_t const* n, integer_t const* m,
- integer_t const* p, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* taua, fcomplex_t* b, integer_t const* ldb,
- fcomplex_t* taub, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZGGQRF( integer_t const* n, integer_t const* m,
- integer_t const* p, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* taua, dcomplex_t* b, integer_t const* ldb,
- dcomplex_t* taub, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_SGGQRF( const integer_t* n, const integer_t* m,
+ const integer_t* p, float* a, const integer_t* lda, float* taua,
+ float* b, const integer_t* ldb, float* taub, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DGGQRF( const integer_t* n, const integer_t* m,
+ const integer_t* p, double* a, const integer_t* lda, double* taua,
+ double* b, const integer_t* ldb, double* taub, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CGGQRF( const integer_t* n, const integer_t* m,
+ const integer_t* p, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* taua, fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* taub, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZGGQRF( const integer_t* n, const integer_t* m,
+ const integer_t* p, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* taua, dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* taub, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ggrqf
-void LAPACK_SGGRQF( integer_t const* m, integer_t const* p,
- integer_t const* n, float* a, integer_t const* lda, float* taua,
- float* b, integer_t const* ldb, float* taub, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DGGRQF( integer_t const* m, integer_t const* p,
- integer_t const* n, double* a, integer_t const* lda, double* taua,
- double* b, integer_t const* ldb, double* taub, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CGGRQF( integer_t const* m, integer_t const* p,
- integer_t const* n, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* taua, fcomplex_t* b, integer_t const* ldb,
- fcomplex_t* taub, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZGGRQF( integer_t const* m, integer_t const* p,
- integer_t const* n, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* taua, dcomplex_t* b, integer_t const* ldb,
- dcomplex_t* taub, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_SGGRQF( const integer_t* m, const integer_t* p,
+ const integer_t* n, float* a, const integer_t* lda, float* taua,
+ float* b, const integer_t* ldb, float* taub, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DGGRQF( const integer_t* m, const integer_t* p,
+ const integer_t* n, double* a, const integer_t* lda, double* taua,
+ double* b, const integer_t* ldb, double* taub, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CGGRQF( const integer_t* m, const integer_t* p,
+ const integer_t* n, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* taua, fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* taub, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZGGRQF( const integer_t* m, const integer_t* p,
+ const integer_t* n, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* taua, dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* taub, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of gelqf
-void LAPACK_SGELQF( integer_t const* m, integer_t const* n, float* a,
- integer_t const* lda, float* tau, float* work, integer_t const* lwork,
+void LAPACK_SGELQF( const integer_t* m, const integer_t* n, float* a,
+ const integer_t* lda, float* tau, float* work, const integer_t* lwork,
         integer_t* info );
-void LAPACK_DGELQF( integer_t const* m, integer_t const* n, double* a,
- integer_t const* lda, double* tau, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CGELQF( integer_t const* m, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* tau, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZGELQF( integer_t const* m, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* tau, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_DGELQF( const integer_t* m, const integer_t* n, double* a,
+ const integer_t* lda, double* tau, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CGELQF( const integer_t* m, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* tau, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZGELQF( const integer_t* m, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* tau, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of geqlf
-void LAPACK_SGEQLF( integer_t const* m, integer_t const* n, float* a,
- integer_t const* lda, float* tau, float* work, integer_t const* lwork,
+void LAPACK_SGEQLF( const integer_t* m, const integer_t* n, float* a,
+ const integer_t* lda, float* tau, float* work, const integer_t* lwork,
         integer_t* info );
-void LAPACK_DGEQLF( integer_t const* m, integer_t const* n, double* a,
- integer_t const* lda, double* tau, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CGEQLF( integer_t const* m, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* tau, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZGEQLF( integer_t const* m, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* tau, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_DGEQLF( const integer_t* m, const integer_t* n, double* a,
+ const integer_t* lda, double* tau, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CGEQLF( const integer_t* m, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* tau, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZGEQLF( const integer_t* m, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* tau, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of geqp3
-void LAPACK_SGEQP3( integer_t const* m, integer_t const* n, float* a,
- integer_t const* lda, integer_t* jpvt, float* tau, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DGEQP3( integer_t const* m, integer_t const* n, double* a,
- integer_t const* lda, integer_t* jpvt, double* tau, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CGEQP3( integer_t const* m, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, integer_t* jpvt, fcomplex_t* tau,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
- integer_t* info );
-void LAPACK_ZGEQP3( integer_t const* m, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, integer_t* jpvt, dcomplex_t* tau,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
+void LAPACK_SGEQP3( const integer_t* m, const integer_t* n, float* a,
+ const integer_t* lda, integer_t* jpvt, float* tau, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DGEQP3( const integer_t* m, const integer_t* n, double* a,
+ const integer_t* lda, integer_t* jpvt, double* tau, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CGEQP3( const integer_t* m, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, integer_t* jpvt, fcomplex_t* tau,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
+ integer_t* info );
+void LAPACK_ZGEQP3( const integer_t* m, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, integer_t* jpvt, dcomplex_t* tau,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
         integer_t* info );
 
 // Value-type variants of geqrf
-void LAPACK_SGEQRF( integer_t const* m, integer_t const* n, float* a,
- integer_t const* lda, float* tau, float* work, integer_t const* lwork,
+void LAPACK_SGEQRF( const integer_t* m, const integer_t* n, float* a,
+ const integer_t* lda, float* tau, float* work, const integer_t* lwork,
         integer_t* info );
-void LAPACK_DGEQRF( integer_t const* m, integer_t const* n, double* a,
- integer_t const* lda, double* tau, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CGEQRF( integer_t const* m, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* tau, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZGEQRF( integer_t const* m, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* tau, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_DGEQRF( const integer_t* m, const integer_t* n, double* a,
+ const integer_t* lda, double* tau, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CGEQRF( const integer_t* m, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* tau, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZGEQRF( const integer_t* m, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* tau, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of gerqf
-void LAPACK_SGERQF( integer_t const* m, integer_t const* n, float* a,
- integer_t const* lda, float* tau, float* work, integer_t const* lwork,
+void LAPACK_SGERQF( const integer_t* m, const integer_t* n, float* a,
+ const integer_t* lda, float* tau, float* work, const integer_t* lwork,
         integer_t* info );
-void LAPACK_DGERQF( integer_t const* m, integer_t const* n, double* a,
- integer_t const* lda, double* tau, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CGERQF( integer_t const* m, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* tau, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZGERQF( integer_t const* m, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* tau, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_DGERQF( const integer_t* m, const integer_t* n, double* a,
+ const integer_t* lda, double* tau, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CGERQF( const integer_t* m, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* tau, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZGERQF( const integer_t* m, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* tau, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of larz
-void LAPACK_SLARZ( char const* side, integer_t const* m, integer_t const* n,
- integer_t const* l, float const* v, integer_t const* incv,
- float const* tau, float* c, integer_t const* ldc, float* work );
-void LAPACK_DLARZ( char const* side, integer_t const* m, integer_t const* n,
- integer_t const* l, double const* v, integer_t const* incv,
- double const* tau, double* c, integer_t const* ldc, double* work );
-void LAPACK_CLARZ( char const* side, integer_t const* m, integer_t const* n,
- integer_t const* l, fcomplex_t const* v, integer_t const* incv,
- fcomplex_t const* tau, fcomplex_t* c, integer_t const* ldc,
+void LAPACK_SLARZ( const char* side, const integer_t* m, const integer_t* n,
+ const integer_t* l, const float* v, const integer_t* incv,
+ const float* tau, float* c, const integer_t* ldc, float* work );
+void LAPACK_DLARZ( const char* side, const integer_t* m, const integer_t* n,
+ const integer_t* l, const double* v, const integer_t* incv,
+ const double* tau, double* c, const integer_t* ldc, double* work );
+void LAPACK_CLARZ( const char* side, const integer_t* m, const integer_t* n,
+ const integer_t* l, const fcomplex_t* v, const integer_t* incv,
+ const fcomplex_t* tau, fcomplex_t* c, const integer_t* ldc,
         fcomplex_t* work );
-void LAPACK_ZLARZ( char const* side, integer_t const* m, integer_t const* n,
- integer_t const* l, dcomplex_t const* v, integer_t const* incv,
- dcomplex_t const* tau, dcomplex_t* c, integer_t const* ldc,
+void LAPACK_ZLARZ( const char* side, const integer_t* m, const integer_t* n,
+ const integer_t* l, const dcomplex_t* v, const integer_t* incv,
+ const dcomplex_t* tau, dcomplex_t* c, const integer_t* ldc,
         dcomplex_t* work );
 
 // Value-type variants of latrz
-void LAPACK_SLATRZ( integer_t const* m, integer_t const* n,
- integer_t const* l, float* a, integer_t const* lda, float* tau,
+void LAPACK_SLATRZ( const integer_t* m, const integer_t* n,
+ const integer_t* l, float* a, const integer_t* lda, float* tau,
         float* work );
-void LAPACK_DLATRZ( integer_t const* m, integer_t const* n,
- integer_t const* l, double* a, integer_t const* lda, double* tau,
+void LAPACK_DLATRZ( const integer_t* m, const integer_t* n,
+ const integer_t* l, double* a, const integer_t* lda, double* tau,
         double* work );
-void LAPACK_CLATRZ( integer_t const* m, integer_t const* n,
- integer_t const* l, fcomplex_t* a, integer_t const* lda,
+void LAPACK_CLATRZ( const integer_t* m, const integer_t* n,
+ const integer_t* l, fcomplex_t* a, const integer_t* lda,
         fcomplex_t* tau, fcomplex_t* work );
-void LAPACK_ZLATRZ( integer_t const* m, integer_t const* n,
- integer_t const* l, dcomplex_t* a, integer_t const* lda,
+void LAPACK_ZLATRZ( const integer_t* m, const integer_t* n,
+ const integer_t* l, dcomplex_t* a, const integer_t* lda,
         dcomplex_t* tau, dcomplex_t* work );
 
 // Value-type variants of orglq
-void LAPACK_SORGLQ( integer_t const* m, integer_t const* n,
- integer_t const* k, float* a, integer_t const* lda, float const* tau,
- float* work, integer_t const* lwork, integer_t* info );
-void LAPACK_DORGLQ( integer_t const* m, integer_t const* n,
- integer_t const* k, double* a, integer_t const* lda,
- double const* tau, double* work, integer_t const* lwork,
+void LAPACK_SORGLQ( const integer_t* m, const integer_t* n,
+ const integer_t* k, float* a, const integer_t* lda, const float* tau,
+ float* work, const integer_t* lwork, integer_t* info );
+void LAPACK_DORGLQ( const integer_t* m, const integer_t* n,
+ const integer_t* k, double* a, const integer_t* lda,
+ const double* tau, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of orgql
-void LAPACK_SORGQL( integer_t const* m, integer_t const* n,
- integer_t const* k, float* a, integer_t const* lda, float const* tau,
- float* work, integer_t const* lwork, integer_t* info );
-void LAPACK_DORGQL( integer_t const* m, integer_t const* n,
- integer_t const* k, double* a, integer_t const* lda,
- double const* tau, double* work, integer_t const* lwork,
+void LAPACK_SORGQL( const integer_t* m, const integer_t* n,
+ const integer_t* k, float* a, const integer_t* lda, const float* tau,
+ float* work, const integer_t* lwork, integer_t* info );
+void LAPACK_DORGQL( const integer_t* m, const integer_t* n,
+ const integer_t* k, double* a, const integer_t* lda,
+ const double* tau, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of orgqr
-void LAPACK_SORGQR( integer_t const* m, integer_t const* n,
- integer_t const* k, float* a, integer_t const* lda, float const* tau,
- float* work, integer_t const* lwork, integer_t* info );
-void LAPACK_DORGQR( integer_t const* m, integer_t const* n,
- integer_t const* k, double* a, integer_t const* lda,
- double const* tau, double* work, integer_t const* lwork,
+void LAPACK_SORGQR( const integer_t* m, const integer_t* n,
+ const integer_t* k, float* a, const integer_t* lda, const float* tau,
+ float* work, const integer_t* lwork, integer_t* info );
+void LAPACK_DORGQR( const integer_t* m, const integer_t* n,
+ const integer_t* k, double* a, const integer_t* lda,
+ const double* tau, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of orgrq
-void LAPACK_SORGRQ( integer_t const* m, integer_t const* n,
- integer_t const* k, float* a, integer_t const* lda, float const* tau,
- float* work, integer_t const* lwork, integer_t* info );
-void LAPACK_DORGRQ( integer_t const* m, integer_t const* n,
- integer_t const* k, double* a, integer_t const* lda,
- double const* tau, double* work, integer_t const* lwork,
+void LAPACK_SORGRQ( const integer_t* m, const integer_t* n,
+ const integer_t* k, float* a, const integer_t* lda, const float* tau,
+ float* work, const integer_t* lwork, integer_t* info );
+void LAPACK_DORGRQ( const integer_t* m, const integer_t* n,
+ const integer_t* k, double* a, const integer_t* lda,
+ const double* tau, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ormlq
-void LAPACK_SORMLQ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, float const* a,
- integer_t const* lda, float const* tau, float* c,
- integer_t const* ldc, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DORMLQ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, double const* a,
- integer_t const* lda, double const* tau, double* c,
- integer_t const* ldc, double* work, integer_t const* lwork,
+void LAPACK_SORMLQ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const float* a,
+ const integer_t* lda, const float* tau, float* c,
+ const integer_t* ldc, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DORMLQ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const double* a,
+ const integer_t* lda, const double* tau, double* c,
+ const integer_t* ldc, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ormql
-void LAPACK_SORMQL( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, float const* a,
- integer_t const* lda, float const* tau, float* c,
- integer_t const* ldc, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DORMQL( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, double const* a,
- integer_t const* lda, double const* tau, double* c,
- integer_t const* ldc, double* work, integer_t const* lwork,
+void LAPACK_SORMQL( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const float* a,
+ const integer_t* lda, const float* tau, float* c,
+ const integer_t* ldc, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DORMQL( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const double* a,
+ const integer_t* lda, const double* tau, double* c,
+ const integer_t* ldc, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ormqr
-void LAPACK_SORMQR( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, float const* a,
- integer_t const* lda, float const* tau, float* c,
- integer_t const* ldc, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DORMQR( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, double const* a,
- integer_t const* lda, double const* tau, double* c,
- integer_t const* ldc, double* work, integer_t const* lwork,
+void LAPACK_SORMQR( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const float* a,
+ const integer_t* lda, const float* tau, float* c,
+ const integer_t* ldc, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DORMQR( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const double* a,
+ const integer_t* lda, const double* tau, double* c,
+ const integer_t* ldc, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ormrq
-void LAPACK_SORMRQ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, float const* a,
- integer_t const* lda, float const* tau, float* c,
- integer_t const* ldc, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DORMRQ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, double const* a,
- integer_t const* lda, double const* tau, double* c,
- integer_t const* ldc, double* work, integer_t const* lwork,
+void LAPACK_SORMRQ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const float* a,
+ const integer_t* lda, const float* tau, float* c,
+ const integer_t* ldc, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DORMRQ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const double* a,
+ const integer_t* lda, const double* tau, double* c,
+ const integer_t* ldc, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ormrz
-void LAPACK_SORMRZ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, integer_t const* l,
- float const* a, integer_t const* lda, float const* tau, float* c,
- integer_t const* ldc, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DORMRZ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, integer_t const* l,
- double const* a, integer_t const* lda, double const* tau, double* c,
- integer_t const* ldc, double* work, integer_t const* lwork,
+void LAPACK_SORMRZ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const integer_t* l,
+ const float* a, const integer_t* lda, const float* tau, float* c,
+ const integer_t* ldc, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DORMRZ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const integer_t* l,
+ const double* a, const integer_t* lda, const double* tau, double* c,
+ const integer_t* ldc, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of tzrzf
-void LAPACK_STZRZF( integer_t const* m, integer_t const* n, float* a,
- integer_t const* lda, float* tau, float* work, integer_t const* lwork,
+void LAPACK_STZRZF( const integer_t* m, const integer_t* n, float* a,
+ const integer_t* lda, float* tau, float* work, const integer_t* lwork,
         integer_t* info );
-void LAPACK_DTZRZF( integer_t const* m, integer_t const* n, double* a,
- integer_t const* lda, double* tau, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CTZRZF( integer_t const* m, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* tau, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZTZRZF( integer_t const* m, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* tau, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_DTZRZF( const integer_t* m, const integer_t* n, double* a,
+ const integer_t* lda, double* tau, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CTZRZF( const integer_t* m, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* tau, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZTZRZF( const integer_t* m, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* tau, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of unglq
-void LAPACK_CUNGLQ( integer_t const* m, integer_t const* n,
- integer_t const* k, fcomplex_t* a, integer_t const* lda,
- fcomplex_t const* tau, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZUNGLQ( integer_t const* m, integer_t const* n,
- integer_t const* k, dcomplex_t* a, integer_t const* lda,
- dcomplex_t const* tau, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_CUNGLQ( const integer_t* m, const integer_t* n,
+ const integer_t* k, fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* tau, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZUNGLQ( const integer_t* m, const integer_t* n,
+ const integer_t* k, dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* tau, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ungql
-void LAPACK_CUNGQL( integer_t const* m, integer_t const* n,
- integer_t const* k, fcomplex_t* a, integer_t const* lda,
- fcomplex_t const* tau, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZUNGQL( integer_t const* m, integer_t const* n,
- integer_t const* k, dcomplex_t* a, integer_t const* lda,
- dcomplex_t const* tau, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_CUNGQL( const integer_t* m, const integer_t* n,
+ const integer_t* k, fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* tau, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZUNGQL( const integer_t* m, const integer_t* n,
+ const integer_t* k, dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* tau, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ungqr
-void LAPACK_CUNGQR( integer_t const* m, integer_t const* n,
- integer_t const* k, fcomplex_t* a, integer_t const* lda,
- fcomplex_t const* tau, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZUNGQR( integer_t const* m, integer_t const* n,
- integer_t const* k, dcomplex_t* a, integer_t const* lda,
- dcomplex_t const* tau, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_CUNGQR( const integer_t* m, const integer_t* n,
+ const integer_t* k, fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* tau, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZUNGQR( const integer_t* m, const integer_t* n,
+ const integer_t* k, dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* tau, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ungrq
-void LAPACK_CUNGRQ( integer_t const* m, integer_t const* n,
- integer_t const* k, fcomplex_t* a, integer_t const* lda,
- fcomplex_t const* tau, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZUNGRQ( integer_t const* m, integer_t const* n,
- integer_t const* k, dcomplex_t* a, integer_t const* lda,
- dcomplex_t const* tau, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_CUNGRQ( const integer_t* m, const integer_t* n,
+ const integer_t* k, fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* tau, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZUNGRQ( const integer_t* m, const integer_t* n,
+ const integer_t* k, dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* tau, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of unmlq
-void LAPACK_CUNMLQ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* tau, fcomplex_t* c,
- integer_t const* ldc, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZUNMLQ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* tau, dcomplex_t* c,
- integer_t const* ldc, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_CUNMLQ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* tau, fcomplex_t* c,
+ const integer_t* ldc, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZUNMLQ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* tau, dcomplex_t* c,
+ const integer_t* ldc, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of unmql
-void LAPACK_CUNMQL( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* tau, fcomplex_t* c,
- integer_t const* ldc, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZUNMQL( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* tau, dcomplex_t* c,
- integer_t const* ldc, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_CUNMQL( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* tau, fcomplex_t* c,
+ const integer_t* ldc, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZUNMQL( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* tau, dcomplex_t* c,
+ const integer_t* ldc, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of unmqr
-void LAPACK_CUNMQR( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* tau, fcomplex_t* c,
- integer_t const* ldc, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZUNMQR( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* tau, dcomplex_t* c,
- integer_t const* ldc, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_CUNMQR( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* tau, fcomplex_t* c,
+ const integer_t* ldc, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZUNMQR( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* tau, dcomplex_t* c,
+ const integer_t* ldc, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of unmrq
-void LAPACK_CUNMRQ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* tau, fcomplex_t* c,
- integer_t const* ldc, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZUNMRQ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* tau, dcomplex_t* c,
- integer_t const* ldc, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_CUNMRQ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* tau, fcomplex_t* c,
+ const integer_t* ldc, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZUNMRQ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* tau, dcomplex_t* c,
+ const integer_t* ldc, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of unmrz
-void LAPACK_CUNMRZ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, integer_t const* l,
- fcomplex_t const* a, integer_t const* lda, fcomplex_t const* tau,
- fcomplex_t* c, integer_t const* ldc, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZUNMRZ( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* k, integer_t const* l,
- dcomplex_t const* a, integer_t const* lda, dcomplex_t const* tau,
- dcomplex_t* c, integer_t const* ldc, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_CUNMRZ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const integer_t* l,
+ const fcomplex_t* a, const integer_t* lda, const fcomplex_t* tau,
+ fcomplex_t* c, const integer_t* ldc, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZUNMRZ( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* k, const integer_t* l,
+ const dcomplex_t* a, const integer_t* lda, const dcomplex_t* tau,
+ dcomplex_t* c, const integer_t* ldc, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of bdsdc
-void LAPACK_SBDSDC( char const* uplo, char const* compq, integer_t const* n,
- float* d, float* e, float* u, integer_t const* ldu, float* vt,
- integer_t const* ldvt, float* q, integer_t* iq, float* work,
- integer_t* iwork, integer_t* info );
-void LAPACK_DBDSDC( char const* uplo, char const* compq, integer_t const* n,
- double* d, double* e, double* u, integer_t const* ldu, double* vt,
- integer_t const* ldvt, double* q, integer_t* iq, double* work,
+void LAPACK_SBDSDC( const char* uplo, const char* compq, const integer_t* n,
+ float* d, float* e, float* u, const integer_t* ldu, float* vt,
+ const integer_t* ldvt, float* q, integer_t* iq, float* work,
+ integer_t* iwork, integer_t* info );
+void LAPACK_DBDSDC( const char* uplo, const char* compq, const integer_t* n,
+ double* d, double* e, double* u, const integer_t* ldu, double* vt,
+ const integer_t* ldvt, double* q, integer_t* iq, double* work,
         integer_t* iwork, integer_t* info );
 
 // Value-type variants of bdsqr
-void LAPACK_SBDSQR( char const* uplo, integer_t const* n,
- integer_t const* ncvt, integer_t const* nru, integer_t const* ncc,
- float* d, float* e, float* vt, integer_t const* ldvt, float* u,
- integer_t const* ldu, float* c, integer_t const* ldc, float* work,
- integer_t* info );
-void LAPACK_DBDSQR( char const* uplo, integer_t const* n,
- integer_t const* ncvt, integer_t const* nru, integer_t const* ncc,
- double* d, double* e, double* vt, integer_t const* ldvt, double* u,
- integer_t const* ldu, double* c, integer_t const* ldc, double* work,
- integer_t* info );
-void LAPACK_CBDSQR( char const* uplo, integer_t const* n,
- integer_t const* ncvt, integer_t const* nru, integer_t const* ncc,
- float* d, float* e, fcomplex_t* vt, integer_t const* ldvt,
- fcomplex_t* u, integer_t const* ldu, fcomplex_t* c,
- integer_t const* ldc, float* rwork, integer_t* info );
-void LAPACK_ZBDSQR( char const* uplo, integer_t const* n,
- integer_t const* ncvt, integer_t const* nru, integer_t const* ncc,
- double* d, double* e, dcomplex_t* vt, integer_t const* ldvt,
- dcomplex_t* u, integer_t const* ldu, dcomplex_t* c,
- integer_t const* ldc, double* rwork, integer_t* info );
+void LAPACK_SBDSQR( const char* uplo, const integer_t* n,
+ const integer_t* ncvt, const integer_t* nru, const integer_t* ncc,
+ float* d, float* e, float* vt, const integer_t* ldvt, float* u,
+ const integer_t* ldu, float* c, const integer_t* ldc, float* work,
+ integer_t* info );
+void LAPACK_DBDSQR( const char* uplo, const integer_t* n,
+ const integer_t* ncvt, const integer_t* nru, const integer_t* ncc,
+ double* d, double* e, double* vt, const integer_t* ldvt, double* u,
+ const integer_t* ldu, double* c, const integer_t* ldc, double* work,
+ integer_t* info );
+void LAPACK_CBDSQR( const char* uplo, const integer_t* n,
+ const integer_t* ncvt, const integer_t* nru, const integer_t* ncc,
+ float* d, float* e, fcomplex_t* vt, const integer_t* ldvt,
+ fcomplex_t* u, const integer_t* ldu, fcomplex_t* c,
+ const integer_t* ldc, float* rwork, integer_t* info );
+void LAPACK_ZBDSQR( const char* uplo, const integer_t* n,
+ const integer_t* ncvt, const integer_t* nru, const integer_t* ncc,
+ double* d, double* e, dcomplex_t* vt, const integer_t* ldvt,
+ dcomplex_t* u, const integer_t* ldu, dcomplex_t* c,
+ const integer_t* ldc, double* rwork, integer_t* info );
 
 // Value-type variants of gbbrd
-void LAPACK_SGBBRD( char const* vect, integer_t const* m, integer_t const* n,
- integer_t const* ncc, integer_t const* kl, integer_t const* ku,
- float* ab, integer_t const* ldab, float* d, float* e, float* q,
- integer_t const* ldq, float* pt, integer_t const* ldpt, float* c,
- integer_t const* ldc, float* work, integer_t* info );
-void LAPACK_DGBBRD( char const* vect, integer_t const* m, integer_t const* n,
- integer_t const* ncc, integer_t const* kl, integer_t const* ku,
- double* ab, integer_t const* ldab, double* d, double* e, double* q,
- integer_t const* ldq, double* pt, integer_t const* ldpt, double* c,
- integer_t const* ldc, double* work, integer_t* info );
-void LAPACK_CGBBRD( char const* vect, integer_t const* m, integer_t const* n,
- integer_t const* ncc, integer_t const* kl, integer_t const* ku,
- fcomplex_t* ab, integer_t const* ldab, float* d, float* e,
- fcomplex_t* q, integer_t const* ldq, fcomplex_t* pt,
- integer_t const* ldpt, fcomplex_t* c, integer_t const* ldc,
+void LAPACK_SGBBRD( const char* vect, const integer_t* m, const integer_t* n,
+ const integer_t* ncc, const integer_t* kl, const integer_t* ku,
+ float* ab, const integer_t* ldab, float* d, float* e, float* q,
+ const integer_t* ldq, float* pt, const integer_t* ldpt, float* c,
+ const integer_t* ldc, float* work, integer_t* info );
+void LAPACK_DGBBRD( const char* vect, const integer_t* m, const integer_t* n,
+ const integer_t* ncc, const integer_t* kl, const integer_t* ku,
+ double* ab, const integer_t* ldab, double* d, double* e, double* q,
+ const integer_t* ldq, double* pt, const integer_t* ldpt, double* c,
+ const integer_t* ldc, double* work, integer_t* info );
+void LAPACK_CGBBRD( const char* vect, const integer_t* m, const integer_t* n,
+ const integer_t* ncc, const integer_t* kl, const integer_t* ku,
+ fcomplex_t* ab, const integer_t* ldab, float* d, float* e,
+ fcomplex_t* q, const integer_t* ldq, fcomplex_t* pt,
+ const integer_t* ldpt, fcomplex_t* c, const integer_t* ldc,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZGBBRD( char const* vect, integer_t const* m, integer_t const* n,
- integer_t const* ncc, integer_t const* kl, integer_t const* ku,
- dcomplex_t* ab, integer_t const* ldab, double* d, double* e,
- dcomplex_t* q, integer_t const* ldq, dcomplex_t* pt,
- integer_t const* ldpt, dcomplex_t* c, integer_t const* ldc,
+void LAPACK_ZGBBRD( const char* vect, const integer_t* m, const integer_t* n,
+ const integer_t* ncc, const integer_t* kl, const integer_t* ku,
+ dcomplex_t* ab, const integer_t* ldab, double* d, double* e,
+ dcomplex_t* q, const integer_t* ldq, dcomplex_t* pt,
+ const integer_t* ldpt, dcomplex_t* c, const integer_t* ldc,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of gebrd
-void LAPACK_SGEBRD( integer_t const* m, integer_t const* n, float* a,
- integer_t const* lda, float* d, float* e, float* tauq, float* taup,
- float* work, integer_t const* lwork, integer_t* info );
-void LAPACK_DGEBRD( integer_t const* m, integer_t const* n, double* a,
- integer_t const* lda, double* d, double* e, double* tauq,
- double* taup, double* work, integer_t const* lwork, integer_t* info );
-void LAPACK_CGEBRD( integer_t const* m, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, float* d, float* e, fcomplex_t* tauq,
- fcomplex_t* taup, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZGEBRD( integer_t const* m, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, double* d, double* e, dcomplex_t* tauq,
- dcomplex_t* taup, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_SGEBRD( const integer_t* m, const integer_t* n, float* a,
+ const integer_t* lda, float* d, float* e, float* tauq, float* taup,
+ float* work, const integer_t* lwork, integer_t* info );
+void LAPACK_DGEBRD( const integer_t* m, const integer_t* n, double* a,
+ const integer_t* lda, double* d, double* e, double* tauq,
+ double* taup, double* work, const integer_t* lwork, integer_t* info );
+void LAPACK_CGEBRD( const integer_t* m, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, float* d, float* e, fcomplex_t* tauq,
+ fcomplex_t* taup, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZGEBRD( const integer_t* m, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, double* d, double* e, dcomplex_t* tauq,
+ dcomplex_t* taup, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of labrd
-void LAPACK_SLABRD( integer_t const* m, integer_t const* n,
- integer_t const* nb, float* a, integer_t const* lda, float* d,
- float* e, float* tauq, float* taup, float* x, integer_t const* ldx,
- float* y, integer_t const* ldy );
-void LAPACK_DLABRD( integer_t const* m, integer_t const* n,
- integer_t const* nb, double* a, integer_t const* lda, double* d,
+void LAPACK_SLABRD( const integer_t* m, const integer_t* n,
+ const integer_t* nb, float* a, const integer_t* lda, float* d,
+ float* e, float* tauq, float* taup, float* x, const integer_t* ldx,
+ float* y, const integer_t* ldy );
+void LAPACK_DLABRD( const integer_t* m, const integer_t* n,
+ const integer_t* nb, double* a, const integer_t* lda, double* d,
         double* e, double* tauq, double* taup, double* x,
- integer_t const* ldx, double* y, integer_t const* ldy );
-void LAPACK_CLABRD( integer_t const* m, integer_t const* n,
- integer_t const* nb, fcomplex_t* a, integer_t const* lda, float* d,
+ const integer_t* ldx, double* y, const integer_t* ldy );
+void LAPACK_CLABRD( const integer_t* m, const integer_t* n,
+ const integer_t* nb, fcomplex_t* a, const integer_t* lda, float* d,
         float* e, fcomplex_t* tauq, fcomplex_t* taup, fcomplex_t* x,
- integer_t const* ldx, fcomplex_t* y, integer_t const* ldy );
-void LAPACK_ZLABRD( integer_t const* m, integer_t const* n,
- integer_t const* nb, dcomplex_t* a, integer_t const* lda, double* d,
+ const integer_t* ldx, fcomplex_t* y, const integer_t* ldy );
+void LAPACK_ZLABRD( const integer_t* m, const integer_t* n,
+ const integer_t* nb, dcomplex_t* a, const integer_t* lda, double* d,
         double* e, dcomplex_t* tauq, dcomplex_t* taup, dcomplex_t* x,
- integer_t const* ldx, dcomplex_t* y, integer_t const* ldy );
+ const integer_t* ldx, dcomplex_t* y, const integer_t* ldy );
 
 // Value-type variants of orgbr
-void LAPACK_SORGBR( char const* vect, integer_t const* m, integer_t const* n,
- integer_t const* k, float* a, integer_t const* lda, float const* tau,
- float* work, integer_t const* lwork, integer_t* info );
-void LAPACK_DORGBR( char const* vect, integer_t const* m, integer_t const* n,
- integer_t const* k, double* a, integer_t const* lda,
- double const* tau, double* work, integer_t const* lwork,
+void LAPACK_SORGBR( const char* vect, const integer_t* m, const integer_t* n,
+ const integer_t* k, float* a, const integer_t* lda, const float* tau,
+ float* work, const integer_t* lwork, integer_t* info );
+void LAPACK_DORGBR( const char* vect, const integer_t* m, const integer_t* n,
+ const integer_t* k, double* a, const integer_t* lda,
+ const double* tau, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ormbr
-void LAPACK_SORMBR( char const* vect, char const* side, char const* trans,
- integer_t const* m, integer_t const* n, integer_t const* k,
- float const* a, integer_t const* lda, float const* tau, float* c,
- integer_t const* ldc, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DORMBR( char const* vect, char const* side, char const* trans,
- integer_t const* m, integer_t const* n, integer_t const* k,
- double const* a, integer_t const* lda, double const* tau, double* c,
- integer_t const* ldc, double* work, integer_t const* lwork,
+void LAPACK_SORMBR( const char* vect, const char* side, const char* trans,
+ const integer_t* m, const integer_t* n, const integer_t* k,
+ const float* a, const integer_t* lda, const float* tau, float* c,
+ const integer_t* ldc, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DORMBR( const char* vect, const char* side, const char* trans,
+ const integer_t* m, const integer_t* n, const integer_t* k,
+ const double* a, const integer_t* lda, const double* tau, double* c,
+ const integer_t* ldc, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ungbr
-void LAPACK_CUNGBR( char const* vect, integer_t const* m, integer_t const* n,
- integer_t const* k, fcomplex_t* a, integer_t const* lda,
- fcomplex_t const* tau, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZUNGBR( char const* vect, integer_t const* m, integer_t const* n,
- integer_t const* k, dcomplex_t* a, integer_t const* lda,
- dcomplex_t const* tau, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_CUNGBR( const char* vect, const integer_t* m, const integer_t* n,
+ const integer_t* k, fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* tau, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZUNGBR( const char* vect, const integer_t* m, const integer_t* n,
+ const integer_t* k, dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* tau, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of unmbr
-void LAPACK_CUNMBR( char const* vect, char const* side, char const* trans,
- integer_t const* m, integer_t const* n, integer_t const* k,
- fcomplex_t const* a, integer_t const* lda, fcomplex_t const* tau,
- fcomplex_t* c, integer_t const* ldc, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZUNMBR( char const* vect, char const* side, char const* trans,
- integer_t const* m, integer_t const* n, integer_t const* k,
- dcomplex_t const* a, integer_t const* lda, dcomplex_t const* tau,
- dcomplex_t* c, integer_t const* ldc, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_CUNMBR( const char* vect, const char* side, const char* trans,
+ const integer_t* m, const integer_t* n, const integer_t* k,
+ const fcomplex_t* a, const integer_t* lda, const fcomplex_t* tau,
+ fcomplex_t* c, const integer_t* ldc, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZUNMBR( const char* vect, const char* side, const char* trans,
+ const integer_t* m, const integer_t* n, const integer_t* k,
+ const dcomplex_t* a, const integer_t* lda, const dcomplex_t* tau,
+ dcomplex_t* c, const integer_t* ldc, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of gebak
-void LAPACK_SGEBAK( char const* job, char const* side, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, float const* scale,
- integer_t const* m, float* v, integer_t const* ldv, integer_t* info );
-void LAPACK_DGEBAK( char const* job, char const* side, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, double const* scale,
- integer_t const* m, double* v, integer_t const* ldv, integer_t* info );
-void LAPACK_CGEBAK( char const* job, char const* side, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, float const* scale,
- integer_t const* m, fcomplex_t* v, integer_t const* ldv,
- integer_t* info );
-void LAPACK_ZGEBAK( char const* job, char const* side, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, double const* scale,
- integer_t const* m, dcomplex_t* v, integer_t const* ldv,
+void LAPACK_SGEBAK( const char* job, const char* side, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, const float* scale,
+ const integer_t* m, float* v, const integer_t* ldv, integer_t* info );
+void LAPACK_DGEBAK( const char* job, const char* side, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, const double* scale,
+ const integer_t* m, double* v, const integer_t* ldv, integer_t* info );
+void LAPACK_CGEBAK( const char* job, const char* side, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, const float* scale,
+ const integer_t* m, fcomplex_t* v, const integer_t* ldv,
+ integer_t* info );
+void LAPACK_ZGEBAK( const char* job, const char* side, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, const double* scale,
+ const integer_t* m, dcomplex_t* v, const integer_t* ldv,
         integer_t* info );
 
 // Value-type variants of gebal
-void LAPACK_SGEBAL( char const* job, integer_t const* n, float* a,
- integer_t const* lda, integer_t* ilo, integer_t* ihi, float* scale,
+void LAPACK_SGEBAL( const char* job, const integer_t* n, float* a,
+ const integer_t* lda, integer_t* ilo, integer_t* ihi, float* scale,
         integer_t* info );
-void LAPACK_DGEBAL( char const* job, integer_t const* n, double* a,
- integer_t const* lda, integer_t* ilo, integer_t* ihi, double* scale,
+void LAPACK_DGEBAL( const char* job, const integer_t* n, double* a,
+ const integer_t* lda, integer_t* ilo, integer_t* ihi, double* scale,
         integer_t* info );
-void LAPACK_CGEBAL( char const* job, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, integer_t* ilo, integer_t* ihi, float* scale,
+void LAPACK_CGEBAL( const char* job, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, integer_t* ilo, integer_t* ihi, float* scale,
         integer_t* info );
-void LAPACK_ZGEBAL( char const* job, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, integer_t* ilo, integer_t* ihi, double* scale,
+void LAPACK_ZGEBAL( const char* job, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, integer_t* ilo, integer_t* ihi, double* scale,
         integer_t* info );
 
 // Value-type variants of gehrd
-void LAPACK_SGEHRD( integer_t const* n, integer_t const* ilo,
- integer_t const* ihi, float* a, integer_t const* lda, float* tau,
- float* work, integer_t const* lwork, integer_t* info );
-void LAPACK_DGEHRD( integer_t const* n, integer_t const* ilo,
- integer_t const* ihi, double* a, integer_t const* lda, double* tau,
- double* work, integer_t const* lwork, integer_t* info );
-void LAPACK_CGEHRD( integer_t const* n, integer_t const* ilo,
- integer_t const* ihi, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* tau, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZGEHRD( integer_t const* n, integer_t const* ilo,
- integer_t const* ihi, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* tau, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_SGEHRD( const integer_t* n, const integer_t* ilo,
+ const integer_t* ihi, float* a, const integer_t* lda, float* tau,
+ float* work, const integer_t* lwork, integer_t* info );
+void LAPACK_DGEHRD( const integer_t* n, const integer_t* ilo,
+ const integer_t* ihi, double* a, const integer_t* lda, double* tau,
+ double* work, const integer_t* lwork, integer_t* info );
+void LAPACK_CGEHRD( const integer_t* n, const integer_t* ilo,
+ const integer_t* ihi, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* tau, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZGEHRD( const integer_t* n, const integer_t* ilo,
+ const integer_t* ihi, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* tau, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of hsein
-void LAPACK_SHSEIN( char const* side, char const* eigsrc, char const* initv,
- logical_t* select, integer_t const* n, float const* h,
- integer_t const* ldh, float* wr, float const* wi, float* vl,
- integer_t const* ldvl, float* vr, integer_t const* ldvr,
- integer_t const* mm, integer_t* m, float* work, integer_t* ifaill,
+void LAPACK_SHSEIN( const char* side, const char* eigsrc, const char* initv,
+ logical_t* select, const integer_t* n, const float* h,
+ const integer_t* ldh, float* wr, const float* wi, float* vl,
+ const integer_t* ldvl, float* vr, const integer_t* ldvr,
+ const integer_t* mm, integer_t* m, float* work, integer_t* ifaill,
         integer_t* ifailr, integer_t* info );
-void LAPACK_DHSEIN( char const* side, char const* eigsrc, char const* initv,
- logical_t* select, integer_t const* n, double const* h,
- integer_t const* ldh, double* wr, double const* wi, double* vl,
- integer_t const* ldvl, double* vr, integer_t const* ldvr,
- integer_t const* mm, integer_t* m, double* work, integer_t* ifaill,
+void LAPACK_DHSEIN( const char* side, const char* eigsrc, const char* initv,
+ logical_t* select, const integer_t* n, const double* h,
+ const integer_t* ldh, double* wr, const double* wi, double* vl,
+ const integer_t* ldvl, double* vr, const integer_t* ldvr,
+ const integer_t* mm, integer_t* m, double* work, integer_t* ifaill,
         integer_t* ifailr, integer_t* info );
-void LAPACK_CHSEIN( char const* side, char const* eigsrc, char const* initv,
- logical_t const* select, integer_t const* n, fcomplex_t const* h,
- integer_t const* ldh, fcomplex_t* w, fcomplex_t* vl,
- integer_t const* ldvl, fcomplex_t* vr, integer_t const* ldvr,
- integer_t const* mm, integer_t* m, fcomplex_t* work, float* rwork,
+void LAPACK_CHSEIN( const char* side, const char* eigsrc, const char* initv,
+ const logical_t* select, const integer_t* n, const fcomplex_t* h,
+ const integer_t* ldh, fcomplex_t* w, fcomplex_t* vl,
+ const integer_t* ldvl, fcomplex_t* vr, const integer_t* ldvr,
+ const integer_t* mm, integer_t* m, fcomplex_t* work, float* rwork,
         integer_t* ifaill, integer_t* ifailr, integer_t* info );
-void LAPACK_ZHSEIN( char const* side, char const* eigsrc, char const* initv,
- logical_t const* select, integer_t const* n, dcomplex_t const* h,
- integer_t const* ldh, dcomplex_t* w, dcomplex_t* vl,
- integer_t const* ldvl, dcomplex_t* vr, integer_t const* ldvr,
- integer_t const* mm, integer_t* m, dcomplex_t* work, double* rwork,
+void LAPACK_ZHSEIN( const char* side, const char* eigsrc, const char* initv,
+ const logical_t* select, const integer_t* n, const dcomplex_t* h,
+ const integer_t* ldh, dcomplex_t* w, dcomplex_t* vl,
+ const integer_t* ldvl, dcomplex_t* vr, const integer_t* ldvr,
+ const integer_t* mm, integer_t* m, dcomplex_t* work, double* rwork,
         integer_t* ifaill, integer_t* ifailr, integer_t* info );
 
 // Value-type variants of hseqr
-void LAPACK_SHSEQR( char const* job, char const* compz, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, float* h,
- integer_t const* ldh, float* wr, float* wi, float* z,
- integer_t const* ldz, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DHSEQR( char const* job, char const* compz, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, double* h,
- integer_t const* ldh, double* wr, double* wi, double* z,
- integer_t const* ldz, double* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_CHSEQR( char const* job, char const* compz, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, fcomplex_t* h,
- integer_t const* ldh, fcomplex_t* w, fcomplex_t* z,
- integer_t const* ldz, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZHSEQR( char const* job, char const* compz, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, dcomplex_t* h,
- integer_t const* ldh, dcomplex_t* w, dcomplex_t* z,
- integer_t const* ldz, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_SHSEQR( const char* job, const char* compz, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, float* h,
+ const integer_t* ldh, float* wr, float* wi, float* z,
+ const integer_t* ldz, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DHSEQR( const char* job, const char* compz, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, double* h,
+ const integer_t* ldh, double* wr, double* wi, double* z,
+ const integer_t* ldz, double* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_CHSEQR( const char* job, const char* compz, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, fcomplex_t* h,
+ const integer_t* ldh, fcomplex_t* w, fcomplex_t* z,
+ const integer_t* ldz, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZHSEQR( const char* job, const char* compz, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, dcomplex_t* h,
+ const integer_t* ldh, dcomplex_t* w, dcomplex_t* z,
+ const integer_t* ldz, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of orghr
-void LAPACK_SORGHR( integer_t const* n, integer_t const* ilo,
- integer_t const* ihi, float* a, integer_t const* lda,
- float const* tau, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DORGHR( integer_t const* n, integer_t const* ilo,
- integer_t const* ihi, double* a, integer_t const* lda,
- double const* tau, double* work, integer_t const* lwork,
+void LAPACK_SORGHR( const integer_t* n, const integer_t* ilo,
+ const integer_t* ihi, float* a, const integer_t* lda,
+ const float* tau, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DORGHR( const integer_t* n, const integer_t* ilo,
+ const integer_t* ihi, double* a, const integer_t* lda,
+ const double* tau, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of ormhr
-void LAPACK_SORMHR( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* ilo, integer_t const* ihi,
- float const* a, integer_t const* lda, float const* tau, float* c,
- integer_t const* ldc, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DORMHR( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* ilo, integer_t const* ihi,
- double const* a, integer_t const* lda, double const* tau, double* c,
- integer_t const* ldc, double* work, integer_t const* lwork,
+void LAPACK_SORMHR( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* ilo, const integer_t* ihi,
+ const float* a, const integer_t* lda, const float* tau, float* c,
+ const integer_t* ldc, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DORMHR( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* ilo, const integer_t* ihi,
+ const double* a, const integer_t* lda, const double* tau, double* c,
+ const integer_t* ldc, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of trevc
-void LAPACK_STREVC( char const* side, char const* howmny, logical_t* select,
- integer_t const* n, float const* t, integer_t const* ldt, float* vl,
- integer_t const* ldvl, float* vr, integer_t const* ldvr,
- integer_t const* mm, integer_t* m, float* work, integer_t* info );
-void LAPACK_DTREVC( char const* side, char const* howmny, logical_t* select,
- integer_t const* n, double const* t, integer_t const* ldt, double* vl,
- integer_t const* ldvl, double* vr, integer_t const* ldvr,
- integer_t const* mm, integer_t* m, double* work, integer_t* info );
-void LAPACK_CTREVC( char const* side, char const* howmny,
- logical_t const* select, integer_t const* n, fcomplex_t* t,
- integer_t const* ldt, fcomplex_t* vl, integer_t const* ldvl,
- fcomplex_t* vr, integer_t const* ldvr, integer_t const* mm,
+void LAPACK_STREVC( const char* side, const char* howmny, logical_t* select,
+ const integer_t* n, const float* t, const integer_t* ldt, float* vl,
+ const integer_t* ldvl, float* vr, const integer_t* ldvr,
+ const integer_t* mm, integer_t* m, float* work, integer_t* info );
+void LAPACK_DTREVC( const char* side, const char* howmny, logical_t* select,
+ const integer_t* n, const double* t, const integer_t* ldt, double* vl,
+ const integer_t* ldvl, double* vr, const integer_t* ldvr,
+ const integer_t* mm, integer_t* m, double* work, integer_t* info );
+void LAPACK_CTREVC( const char* side, const char* howmny,
+ const logical_t* select, const integer_t* n, fcomplex_t* t,
+ const integer_t* ldt, fcomplex_t* vl, const integer_t* ldvl,
+ fcomplex_t* vr, const integer_t* ldvr, const integer_t* mm,
         integer_t* m, fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZTREVC( char const* side, char const* howmny,
- logical_t const* select, integer_t const* n, dcomplex_t* t,
- integer_t const* ldt, dcomplex_t* vl, integer_t const* ldvl,
- dcomplex_t* vr, integer_t const* ldvr, integer_t const* mm,
+void LAPACK_ZTREVC( const char* side, const char* howmny,
+ const logical_t* select, const integer_t* n, dcomplex_t* t,
+ const integer_t* ldt, dcomplex_t* vl, const integer_t* ldvl,
+ dcomplex_t* vr, const integer_t* ldvr, const integer_t* mm,
         integer_t* m, dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of trexc
-void LAPACK_STREXC( char const* compq, integer_t const* n, float* t,
- integer_t const* ldt, float* q, integer_t const* ldq, integer_t* ifst,
+void LAPACK_STREXC( const char* compq, const integer_t* n, float* t,
+ const integer_t* ldt, float* q, const integer_t* ldq, integer_t* ifst,
         integer_t* ilst, float* work, integer_t* info );
-void LAPACK_DTREXC( char const* compq, integer_t const* n, double* t,
- integer_t const* ldt, double* q, integer_t const* ldq,
+void LAPACK_DTREXC( const char* compq, const integer_t* n, double* t,
+ const integer_t* ldt, double* q, const integer_t* ldq,
         integer_t* ifst, integer_t* ilst, double* work, integer_t* info );
-void LAPACK_CTREXC( char const* compq, integer_t const* n, fcomplex_t* t,
- integer_t const* ldt, fcomplex_t* q, integer_t const* ldq,
- integer_t const* ifst, integer_t const* ilst, integer_t* info );
-void LAPACK_ZTREXC( char const* compq, integer_t const* n, dcomplex_t* t,
- integer_t const* ldt, dcomplex_t* q, integer_t const* ldq,
- integer_t const* ifst, integer_t const* ilst, integer_t* info );
+void LAPACK_CTREXC( const char* compq, const integer_t* n, fcomplex_t* t,
+ const integer_t* ldt, fcomplex_t* q, const integer_t* ldq,
+ const integer_t* ifst, const integer_t* ilst, integer_t* info );
+void LAPACK_ZTREXC( const char* compq, const integer_t* n, dcomplex_t* t,
+ const integer_t* ldt, dcomplex_t* q, const integer_t* ldq,
+ const integer_t* ifst, const integer_t* ilst, integer_t* info );
 
 // Value-type variants of trsen
-void LAPACK_CTRSEN( char const* job, char const* compq,
- logical_t const* select, integer_t const* n, fcomplex_t* t,
- integer_t const* ldt, fcomplex_t* q, integer_t const* ldq,
+void LAPACK_CTRSEN( const char* job, const char* compq,
+ const logical_t* select, const integer_t* n, fcomplex_t* t,
+ const integer_t* ldt, fcomplex_t* q, const integer_t* ldq,
         fcomplex_t* w, integer_t* m, float* s, float* sep, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZTRSEN( char const* job, char const* compq,
- logical_t const* select, integer_t const* n, dcomplex_t* t,
- integer_t const* ldt, dcomplex_t* q, integer_t const* ldq,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZTRSEN( const char* job, const char* compq,
+ const logical_t* select, const integer_t* n, dcomplex_t* t,
+ const integer_t* ldt, dcomplex_t* q, const integer_t* ldq,
         dcomplex_t* w, integer_t* m, double* s, double* sep, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of trsna
-void LAPACK_STRSNA( char const* job, char const* howmny,
- logical_t const* select, integer_t const* n, float const* t,
- integer_t const* ldt, float const* vl, integer_t const* ldvl,
- float const* vr, integer_t const* ldvr, float* s, float* sep,
- integer_t const* mm, integer_t* m, float* work,
- integer_t const* ldwork, integer_t* iwork, integer_t* info );
-void LAPACK_DTRSNA( char const* job, char const* howmny,
- logical_t const* select, integer_t const* n, double const* t,
- integer_t const* ldt, double const* vl, integer_t const* ldvl,
- double const* vr, integer_t const* ldvr, double* s, double* sep,
- integer_t const* mm, integer_t* m, double* work,
- integer_t const* ldwork, integer_t* iwork, integer_t* info );
-void LAPACK_CTRSNA( char const* job, char const* howmny,
- logical_t const* select, integer_t const* n, fcomplex_t const* t,
- integer_t const* ldt, fcomplex_t const* vl, integer_t const* ldvl,
- fcomplex_t const* vr, integer_t const* ldvr, float* s, float* sep,
- integer_t const* mm, integer_t* m, fcomplex_t* work,
- integer_t const* ldwork, float* rwork, integer_t* info );
-void LAPACK_ZTRSNA( char const* job, char const* howmny,
- logical_t const* select, integer_t const* n, dcomplex_t const* t,
- integer_t const* ldt, dcomplex_t const* vl, integer_t const* ldvl,
- dcomplex_t const* vr, integer_t const* ldvr, double* s, double* sep,
- integer_t const* mm, integer_t* m, dcomplex_t* work,
- integer_t const* ldwork, double* rwork, integer_t* info );
+void LAPACK_STRSNA( const char* job, const char* howmny,
+ const logical_t* select, const integer_t* n, const float* t,
+ const integer_t* ldt, const float* vl, const integer_t* ldvl,
+ const float* vr, const integer_t* ldvr, float* s, float* sep,
+ const integer_t* mm, integer_t* m, float* work,
+ const integer_t* ldwork, integer_t* iwork, integer_t* info );
+void LAPACK_DTRSNA( const char* job, const char* howmny,
+ const logical_t* select, const integer_t* n, const double* t,
+ const integer_t* ldt, const double* vl, const integer_t* ldvl,
+ const double* vr, const integer_t* ldvr, double* s, double* sep,
+ const integer_t* mm, integer_t* m, double* work,
+ const integer_t* ldwork, integer_t* iwork, integer_t* info );
+void LAPACK_CTRSNA( const char* job, const char* howmny,
+ const logical_t* select, const integer_t* n, const fcomplex_t* t,
+ const integer_t* ldt, const fcomplex_t* vl, const integer_t* ldvl,
+ const fcomplex_t* vr, const integer_t* ldvr, float* s, float* sep,
+ const integer_t* mm, integer_t* m, fcomplex_t* work,
+ const integer_t* ldwork, float* rwork, integer_t* info );
+void LAPACK_ZTRSNA( const char* job, const char* howmny,
+ const logical_t* select, const integer_t* n, const dcomplex_t* t,
+ const integer_t* ldt, const dcomplex_t* vl, const integer_t* ldvl,
+ const dcomplex_t* vr, const integer_t* ldvr, double* s, double* sep,
+ const integer_t* mm, integer_t* m, dcomplex_t* work,
+ const integer_t* ldwork, double* rwork, integer_t* info );
 
 // Value-type variants of trsyl
-void LAPACK_STRSYL( char const* trana, char const* tranb,
- integer_t const* isgn, integer_t const* m, integer_t const* n,
- float const* a, integer_t const* lda, float const* b,
- integer_t const* ldb, float* c, integer_t const* ldc, float* scale,
- integer_t* info );
-void LAPACK_DTRSYL( char const* trana, char const* tranb,
- integer_t const* isgn, integer_t const* m, integer_t const* n,
- double const* a, integer_t const* lda, double const* b,
- integer_t const* ldb, double* c, integer_t const* ldc, double* scale,
- integer_t* info );
-void LAPACK_CTRSYL( char const* trana, char const* tranb,
- integer_t const* isgn, integer_t const* m, integer_t const* n,
- fcomplex_t const* a, integer_t const* lda, fcomplex_t const* b,
- integer_t const* ldb, fcomplex_t* c, integer_t const* ldc,
+void LAPACK_STRSYL( const char* trana, const char* tranb,
+ const integer_t* isgn, const integer_t* m, const integer_t* n,
+ const float* a, const integer_t* lda, const float* b,
+ const integer_t* ldb, float* c, const integer_t* ldc, float* scale,
+ integer_t* info );
+void LAPACK_DTRSYL( const char* trana, const char* tranb,
+ const integer_t* isgn, const integer_t* m, const integer_t* n,
+ const double* a, const integer_t* lda, const double* b,
+ const integer_t* ldb, double* c, const integer_t* ldc, double* scale,
+ integer_t* info );
+void LAPACK_CTRSYL( const char* trana, const char* tranb,
+ const integer_t* isgn, const integer_t* m, const integer_t* n,
+ const fcomplex_t* a, const integer_t* lda, const fcomplex_t* b,
+ const integer_t* ldb, fcomplex_t* c, const integer_t* ldc,
         float* scale, integer_t* info );
-void LAPACK_ZTRSYL( char const* trana, char const* tranb,
- integer_t const* isgn, integer_t const* m, integer_t const* n,
- dcomplex_t const* a, integer_t const* lda, dcomplex_t const* b,
- integer_t const* ldb, dcomplex_t* c, integer_t const* ldc,
+void LAPACK_ZTRSYL( const char* trana, const char* tranb,
+ const integer_t* isgn, const integer_t* m, const integer_t* n,
+ const dcomplex_t* a, const integer_t* lda, const dcomplex_t* b,
+ const integer_t* ldb, dcomplex_t* c, const integer_t* ldc,
         double* scale, integer_t* info );
 
 // Value-type variants of unghr
-void LAPACK_CUNGHR( integer_t const* n, integer_t const* ilo,
- integer_t const* ihi, fcomplex_t* a, integer_t const* lda,
- fcomplex_t const* tau, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZUNGHR( integer_t const* n, integer_t const* ilo,
- integer_t const* ihi, dcomplex_t* a, integer_t const* lda,
- dcomplex_t const* tau, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_CUNGHR( const integer_t* n, const integer_t* ilo,
+ const integer_t* ihi, fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* tau, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZUNGHR( const integer_t* n, const integer_t* ilo,
+ const integer_t* ihi, dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* tau, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of unmhr
-void LAPACK_CUNMHR( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* ilo, integer_t const* ihi,
- fcomplex_t const* a, integer_t const* lda, fcomplex_t const* tau,
- fcomplex_t* c, integer_t const* ldc, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZUNMHR( char const* side, char const* trans, integer_t const* m,
- integer_t const* n, integer_t const* ilo, integer_t const* ihi,
- dcomplex_t const* a, integer_t const* lda, dcomplex_t const* tau,
- dcomplex_t* c, integer_t const* ldc, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_CUNMHR( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* ilo, const integer_t* ihi,
+ const fcomplex_t* a, const integer_t* lda, const fcomplex_t* tau,
+ fcomplex_t* c, const integer_t* ldc, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZUNMHR( const char* side, const char* trans, const integer_t* m,
+ const integer_t* n, const integer_t* ilo, const integer_t* ihi,
+ const dcomplex_t* a, const integer_t* lda, const dcomplex_t* tau,
+ dcomplex_t* c, const integer_t* ldc, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of gbcon
-void LAPACK_SGBCON( char const* norm, integer_t const* n, integer_t const* kl,
- integer_t const* ku, float const* ab, integer_t const* ldab,
- integer_t const* ipiv, float const* anorm, float* rcond, float* work,
- integer_t* iwork, integer_t* info );
-void LAPACK_DGBCON( char const* norm, integer_t const* n, integer_t const* kl,
- integer_t const* ku, double const* ab, integer_t const* ldab,
- integer_t const* ipiv, double const* anorm, double* rcond,
+void LAPACK_SGBCON( const char* norm, const integer_t* n, const integer_t* kl,
+ const integer_t* ku, const float* ab, const integer_t* ldab,
+ const integer_t* ipiv, const float* anorm, float* rcond, float* work,
+ integer_t* iwork, integer_t* info );
+void LAPACK_DGBCON( const char* norm, const integer_t* n, const integer_t* kl,
+ const integer_t* ku, const double* ab, const integer_t* ldab,
+ const integer_t* ipiv, const double* anorm, double* rcond,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CGBCON( char const* norm, integer_t const* n, integer_t const* kl,
- integer_t const* ku, fcomplex_t const* ab, integer_t const* ldab,
- integer_t const* ipiv, float const* anorm, float* rcond,
+void LAPACK_CGBCON( const char* norm, const integer_t* n, const integer_t* kl,
+ const integer_t* ku, const fcomplex_t* ab, const integer_t* ldab,
+ const integer_t* ipiv, const float* anorm, float* rcond,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZGBCON( char const* norm, integer_t const* n, integer_t const* kl,
- integer_t const* ku, dcomplex_t const* ab, integer_t const* ldab,
- integer_t const* ipiv, double const* anorm, double* rcond,
+void LAPACK_ZGBCON( const char* norm, const integer_t* n, const integer_t* kl,
+ const integer_t* ku, const dcomplex_t* ab, const integer_t* ldab,
+ const integer_t* ipiv, const double* anorm, double* rcond,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of gbequ
-void LAPACK_SGBEQU( integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, float const* ab,
- integer_t const* ldab, float* r, float* c, float* rowcnd,
+void LAPACK_SGBEQU( const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const float* ab,
+ const integer_t* ldab, float* r, float* c, float* rowcnd,
         float* colcnd, float* amax, integer_t* info );
-void LAPACK_DGBEQU( integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, double const* ab,
- integer_t const* ldab, double* r, double* c, double* rowcnd,
+void LAPACK_DGBEQU( const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const double* ab,
+ const integer_t* ldab, double* r, double* c, double* rowcnd,
         double* colcnd, double* amax, integer_t* info );
-void LAPACK_CGBEQU( integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, fcomplex_t const* ab,
- integer_t const* ldab, float* r, float* c, float* rowcnd,
+void LAPACK_CGBEQU( const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const fcomplex_t* ab,
+ const integer_t* ldab, float* r, float* c, float* rowcnd,
         float* colcnd, float* amax, integer_t* info );
-void LAPACK_ZGBEQU( integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, dcomplex_t const* ab,
- integer_t const* ldab, double* r, double* c, double* rowcnd,
+void LAPACK_ZGBEQU( const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const dcomplex_t* ab,
+ const integer_t* ldab, double* r, double* c, double* rowcnd,
         double* colcnd, double* amax, integer_t* info );
 
 // Value-type variants of gbrfs
-void LAPACK_SGBRFS( char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- float const* ab, integer_t const* ldab, float const* afb,
- integer_t const* ldafb, integer_t const* ipiv, float const* b,
- integer_t const* ldb, float* x, integer_t const* ldx, float* ferr,
+void LAPACK_SGBRFS( const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ const float* ab, const integer_t* ldab, const float* afb,
+ const integer_t* ldafb, const integer_t* ipiv, const float* b,
+ const integer_t* ldb, float* x, const integer_t* ldx, float* ferr,
         float* berr, float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DGBRFS( char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- double const* ab, integer_t const* ldab, double const* afb,
- integer_t const* ldafb, integer_t const* ipiv, double const* b,
- integer_t const* ldb, double* x, integer_t const* ldx, double* ferr,
+void LAPACK_DGBRFS( const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ const double* ab, const integer_t* ldab, const double* afb,
+ const integer_t* ldafb, const integer_t* ipiv, const double* b,
+ const integer_t* ldb, double* x, const integer_t* ldx, double* ferr,
         double* berr, double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CGBRFS( char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- fcomplex_t const* ab, integer_t const* ldab, fcomplex_t const* afb,
- integer_t const* ldafb, integer_t const* ipiv, fcomplex_t const* b,
- integer_t const* ldb, fcomplex_t* x, integer_t const* ldx,
+void LAPACK_CGBRFS( const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ const fcomplex_t* ab, const integer_t* ldab, const fcomplex_t* afb,
+ const integer_t* ldafb, const integer_t* ipiv, const fcomplex_t* b,
+ const integer_t* ldb, fcomplex_t* x, const integer_t* ldx,
         float* ferr, float* berr, fcomplex_t* work, float* rwork,
         integer_t* info );
-void LAPACK_ZGBRFS( char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- dcomplex_t const* ab, integer_t const* ldab, dcomplex_t const* afb,
- integer_t const* ldafb, integer_t const* ipiv, dcomplex_t const* b,
- integer_t const* ldb, dcomplex_t* x, integer_t const* ldx,
+void LAPACK_ZGBRFS( const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ const dcomplex_t* ab, const integer_t* ldab, const dcomplex_t* afb,
+ const integer_t* ldafb, const integer_t* ipiv, const dcomplex_t* b,
+ const integer_t* ldb, dcomplex_t* x, const integer_t* ldx,
         double* ferr, double* berr, dcomplex_t* work, double* rwork,
         integer_t* info );
 
 // Value-type variants of gbtrf
-void LAPACK_SGBTRF( integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, float* ab,
- integer_t const* ldab, integer_t* ipiv, integer_t* info );
-void LAPACK_DGBTRF( integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, double* ab,
- integer_t const* ldab, integer_t* ipiv, integer_t* info );
-void LAPACK_CGBTRF( integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, fcomplex_t* ab,
- integer_t const* ldab, integer_t* ipiv, integer_t* info );
-void LAPACK_ZGBTRF( integer_t const* m, integer_t const* n,
- integer_t const* kl, integer_t const* ku, dcomplex_t* ab,
- integer_t const* ldab, integer_t* ipiv, integer_t* info );
+void LAPACK_SGBTRF( const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, float* ab,
+ const integer_t* ldab, integer_t* ipiv, integer_t* info );
+void LAPACK_DGBTRF( const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, double* ab,
+ const integer_t* ldab, integer_t* ipiv, integer_t* info );
+void LAPACK_CGBTRF( const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, fcomplex_t* ab,
+ const integer_t* ldab, integer_t* ipiv, integer_t* info );
+void LAPACK_ZGBTRF( const integer_t* m, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, dcomplex_t* ab,
+ const integer_t* ldab, integer_t* ipiv, integer_t* info );
 
 // Value-type variants of gbtrs
-void LAPACK_SGBTRS( char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- float const* ab, integer_t const* ldab, integer_t const* ipiv,
- float* b, integer_t const* ldb, integer_t* info );
-void LAPACK_DGBTRS( char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- double const* ab, integer_t const* ldab, integer_t const* ipiv,
- double* b, integer_t const* ldb, integer_t* info );
-void LAPACK_CGBTRS( char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- fcomplex_t const* ab, integer_t const* ldab, integer_t const* ipiv,
- fcomplex_t* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZGBTRS( char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- dcomplex_t const* ab, integer_t const* ldab, integer_t const* ipiv,
- dcomplex_t* b, integer_t const* ldb, integer_t* info );
+void LAPACK_SGBTRS( const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ const float* ab, const integer_t* ldab, const integer_t* ipiv,
+ float* b, const integer_t* ldb, integer_t* info );
+void LAPACK_DGBTRS( const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ const double* ab, const integer_t* ldab, const integer_t* ipiv,
+ double* b, const integer_t* ldb, integer_t* info );
+void LAPACK_CGBTRS( const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ const fcomplex_t* ab, const integer_t* ldab, const integer_t* ipiv,
+ fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZGBTRS( const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ const dcomplex_t* ab, const integer_t* ldab, const integer_t* ipiv,
+ dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of gecon
-void LAPACK_SGECON( char const* norm, integer_t const* n, float const* a,
- integer_t const* lda, float const* anorm, float* rcond, float* work,
+void LAPACK_SGECON( const char* norm, const integer_t* n, const float* a,
+ const integer_t* lda, const float* anorm, float* rcond, float* work,
         integer_t* iwork, integer_t* info );
-void LAPACK_DGECON( char const* norm, integer_t const* n, double const* a,
- integer_t const* lda, double const* anorm, double* rcond,
+void LAPACK_DGECON( const char* norm, const integer_t* n, const double* a,
+ const integer_t* lda, const double* anorm, double* rcond,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CGECON( char const* norm, integer_t const* n, fcomplex_t const* a,
- integer_t const* lda, float const* anorm, float* rcond,
+void LAPACK_CGECON( const char* norm, const integer_t* n, const fcomplex_t* a,
+ const integer_t* lda, const float* anorm, float* rcond,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZGECON( char const* norm, integer_t const* n, dcomplex_t const* a,
- integer_t const* lda, double const* anorm, double* rcond,
+void LAPACK_ZGECON( const char* norm, const integer_t* n, const dcomplex_t* a,
+ const integer_t* lda, const double* anorm, double* rcond,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of geequ
-void LAPACK_SGEEQU( integer_t const* m, integer_t const* n, float const* a,
- integer_t const* lda, float* r, float* c, float* rowcnd,
+void LAPACK_SGEEQU( const integer_t* m, const integer_t* n, const float* a,
+ const integer_t* lda, float* r, float* c, float* rowcnd,
         float* colcnd, float* amax, integer_t* info );
-void LAPACK_DGEEQU( integer_t const* m, integer_t const* n, double const* a,
- integer_t const* lda, double* r, double* c, double* rowcnd,
+void LAPACK_DGEEQU( const integer_t* m, const integer_t* n, const double* a,
+ const integer_t* lda, double* r, double* c, double* rowcnd,
         double* colcnd, double* amax, integer_t* info );
-void LAPACK_CGEEQU( integer_t const* m, integer_t const* n,
- fcomplex_t const* a, integer_t const* lda, float* r, float* c,
+void LAPACK_CGEEQU( const integer_t* m, const integer_t* n,
+ const fcomplex_t* a, const integer_t* lda, float* r, float* c,
         float* rowcnd, float* colcnd, float* amax, integer_t* info );
-void LAPACK_ZGEEQU( integer_t const* m, integer_t const* n,
- dcomplex_t const* a, integer_t const* lda, double* r, double* c,
+void LAPACK_ZGEEQU( const integer_t* m, const integer_t* n,
+ const dcomplex_t* a, const integer_t* lda, double* r, double* c,
         double* rowcnd, double* colcnd, double* amax, integer_t* info );
 
 // Value-type variants of gerfs
-void LAPACK_SGERFS( char const* trans, integer_t const* n,
- integer_t const* nrhs, float const* a, integer_t const* lda,
- float const* af, integer_t const* ldaf, integer_t const* ipiv,
- float const* b, integer_t const* ldb, float* x, integer_t const* ldx,
+void LAPACK_SGERFS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const float* a, const integer_t* lda,
+ const float* af, const integer_t* ldaf, const integer_t* ipiv,
+ const float* b, const integer_t* ldb, float* x, const integer_t* ldx,
         float* ferr, float* berr, float* work, integer_t* iwork,
         integer_t* info );
-void LAPACK_DGERFS( char const* trans, integer_t const* n,
- integer_t const* nrhs, double const* a, integer_t const* lda,
- double const* af, integer_t const* ldaf, integer_t const* ipiv,
- double const* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* ferr, double* berr, double* work,
- integer_t* iwork, integer_t* info );
-void LAPACK_CGERFS( char const* trans, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t const* af, integer_t const* ldaf, integer_t const* ipiv,
- fcomplex_t const* b, integer_t const* ldb, fcomplex_t* x,
- integer_t const* ldx, float* ferr, float* berr, fcomplex_t* work,
+void LAPACK_DGERFS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const double* a, const integer_t* lda,
+ const double* af, const integer_t* ldaf, const integer_t* ipiv,
+ const double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* ferr, double* berr, double* work,
+ integer_t* iwork, integer_t* info );
+void LAPACK_CGERFS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* af, const integer_t* ldaf, const integer_t* ipiv,
+ const fcomplex_t* b, const integer_t* ldb, fcomplex_t* x,
+ const integer_t* ldx, float* ferr, float* berr, fcomplex_t* work,
         float* rwork, integer_t* info );
-void LAPACK_ZGERFS( char const* trans, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t const* af, integer_t const* ldaf, integer_t const* ipiv,
- dcomplex_t const* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, double* ferr, double* berr, dcomplex_t* work,
+void LAPACK_ZGERFS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* af, const integer_t* ldaf, const integer_t* ipiv,
+ const dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, double* ferr, double* berr, dcomplex_t* work,
         double* rwork, integer_t* info );
 
 // Value-type variants of getrf
-void LAPACK_SGETRF( integer_t const* m, integer_t const* n, float* a,
- integer_t const* lda, integer_t* ipiv, integer_t* info );
-void LAPACK_DGETRF( integer_t const* m, integer_t const* n, double* a,
- integer_t const* lda, integer_t* ipiv, integer_t* info );
-void LAPACK_CGETRF( integer_t const* m, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, integer_t* ipiv, integer_t* info );
-void LAPACK_ZGETRF( integer_t const* m, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, integer_t* ipiv, integer_t* info );
+void LAPACK_SGETRF( const integer_t* m, const integer_t* n, float* a,
+ const integer_t* lda, integer_t* ipiv, integer_t* info );
+void LAPACK_DGETRF( const integer_t* m, const integer_t* n, double* a,
+ const integer_t* lda, integer_t* ipiv, integer_t* info );
+void LAPACK_CGETRF( const integer_t* m, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, integer_t* ipiv, integer_t* info );
+void LAPACK_ZGETRF( const integer_t* m, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, integer_t* ipiv, integer_t* info );
 
 // Value-type variants of getri
-void LAPACK_SGETRI( integer_t const* n, float* a, integer_t const* lda,
- integer_t const* ipiv, float* work, integer_t const* lwork,
+void LAPACK_SGETRI( const integer_t* n, float* a, const integer_t* lda,
+ const integer_t* ipiv, float* work, const integer_t* lwork,
         integer_t* info );
-void LAPACK_DGETRI( integer_t const* n, double* a, integer_t const* lda,
- integer_t const* ipiv, double* work, integer_t const* lwork,
+void LAPACK_DGETRI( const integer_t* n, double* a, const integer_t* lda,
+ const integer_t* ipiv, double* work, const integer_t* lwork,
         integer_t* info );
-void LAPACK_CGETRI( integer_t const* n, fcomplex_t* a, integer_t const* lda,
- integer_t const* ipiv, fcomplex_t* work, integer_t const* lwork,
+void LAPACK_CGETRI( const integer_t* n, fcomplex_t* a, const integer_t* lda,
+ const integer_t* ipiv, fcomplex_t* work, const integer_t* lwork,
         integer_t* info );
-void LAPACK_ZGETRI( integer_t const* n, dcomplex_t* a, integer_t const* lda,
- integer_t const* ipiv, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_ZGETRI( const integer_t* n, dcomplex_t* a, const integer_t* lda,
+ const integer_t* ipiv, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of getrs
-void LAPACK_SGETRS( char const* trans, integer_t const* n,
- integer_t const* nrhs, float const* a, integer_t const* lda,
- integer_t const* ipiv, float* b, integer_t const* ldb,
- integer_t* info );
-void LAPACK_DGETRS( char const* trans, integer_t const* n,
- integer_t const* nrhs, double const* a, integer_t const* lda,
- integer_t const* ipiv, double* b, integer_t const* ldb,
- integer_t* info );
-void LAPACK_CGETRS( char const* trans, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* a, integer_t const* lda,
- integer_t const* ipiv, fcomplex_t* b, integer_t const* ldb,
- integer_t* info );
-void LAPACK_ZGETRS( char const* trans, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, integer_t const* lda,
- integer_t const* ipiv, dcomplex_t* b, integer_t const* ldb,
+void LAPACK_SGETRS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const float* a, const integer_t* lda,
+ const integer_t* ipiv, float* b, const integer_t* ldb,
+ integer_t* info );
+void LAPACK_DGETRS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const double* a, const integer_t* lda,
+ const integer_t* ipiv, double* b, const integer_t* ldb,
+ integer_t* info );
+void LAPACK_CGETRS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* a, const integer_t* lda,
+ const integer_t* ipiv, fcomplex_t* b, const integer_t* ldb,
+ integer_t* info );
+void LAPACK_ZGETRS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, const integer_t* lda,
+ const integer_t* ipiv, dcomplex_t* b, const integer_t* ldb,
         integer_t* info );
 
 // Value-type variants of gtrfs
-void LAPACK_SGTRFS( char const* trans, integer_t const* n,
- integer_t const* nrhs, float const* dl, float const* d,
- float const* du, float const* dlf, float const* df, float const* duf,
- float const* du2, integer_t const* ipiv, float const* b,
- integer_t const* ldb, float* x, integer_t const* ldx, float* ferr,
+void LAPACK_SGTRFS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const float* dl, const float* d,
+ const float* du, const float* dlf, const float* df, const float* duf,
+ const float* du2, const integer_t* ipiv, const float* b,
+ const integer_t* ldb, float* x, const integer_t* ldx, float* ferr,
         float* berr, float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DGTRFS( char const* trans, integer_t const* n,
- integer_t const* nrhs, double const* dl, double const* d,
- double const* du, double const* dlf, double const* df,
- double const* duf, double const* du2, integer_t const* ipiv,
- double const* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* ferr, double* berr, double* work,
- integer_t* iwork, integer_t* info );
-void LAPACK_CGTRFS( char const* trans, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* dl, fcomplex_t const* d,
- fcomplex_t const* du, fcomplex_t const* dlf, fcomplex_t const* df,
- fcomplex_t const* duf, fcomplex_t const* du2, integer_t const* ipiv,
- fcomplex_t const* b, integer_t const* ldb, fcomplex_t* x,
- integer_t const* ldx, float* ferr, float* berr, fcomplex_t* work,
+void LAPACK_DGTRFS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const double* dl, const double* d,
+ const double* du, const double* dlf, const double* df,
+ const double* duf, const double* du2, const integer_t* ipiv,
+ const double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* ferr, double* berr, double* work,
+ integer_t* iwork, integer_t* info );
+void LAPACK_CGTRFS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* dl, const fcomplex_t* d,
+ const fcomplex_t* du, const fcomplex_t* dlf, const fcomplex_t* df,
+ const fcomplex_t* duf, const fcomplex_t* du2, const integer_t* ipiv,
+ const fcomplex_t* b, const integer_t* ldb, fcomplex_t* x,
+ const integer_t* ldx, float* ferr, float* berr, fcomplex_t* work,
         float* rwork, integer_t* info );
-void LAPACK_ZGTRFS( char const* trans, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* dl, dcomplex_t const* d,
- dcomplex_t const* du, dcomplex_t const* dlf, dcomplex_t const* df,
- dcomplex_t const* duf, dcomplex_t const* du2, integer_t const* ipiv,
- dcomplex_t const* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, double* ferr, double* berr, dcomplex_t* work,
+void LAPACK_ZGTRFS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* dl, const dcomplex_t* d,
+ const dcomplex_t* du, const dcomplex_t* dlf, const dcomplex_t* df,
+ const dcomplex_t* duf, const dcomplex_t* du2, const integer_t* ipiv,
+ const dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, double* ferr, double* berr, dcomplex_t* work,
         double* rwork, integer_t* info );
 
 // Value-type variants of gttrs
-void LAPACK_SGTTRS( char const* trans, integer_t const* n,
- integer_t const* nrhs, float const* dl, float const* d,
- float const* du, float const* du2, integer_t const* ipiv, float* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_DGTTRS( char const* trans, integer_t const* n,
- integer_t const* nrhs, double const* dl, double const* d,
- double const* du, double const* du2, integer_t const* ipiv, double* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_CGTTRS( char const* trans, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* dl, fcomplex_t const* d,
- fcomplex_t const* du, fcomplex_t const* du2, integer_t const* ipiv,
- fcomplex_t* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZGTTRS( char const* trans, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* dl, dcomplex_t const* d,
- dcomplex_t const* du, dcomplex_t const* du2, integer_t const* ipiv,
- dcomplex_t* b, integer_t const* ldb, integer_t* info );
+void LAPACK_SGTTRS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const float* dl, const float* d,
+ const float* du, const float* du2, const integer_t* ipiv, float* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_DGTTRS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const double* dl, const double* d,
+ const double* du, const double* du2, const integer_t* ipiv, double* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_CGTTRS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* dl, const fcomplex_t* d,
+ const fcomplex_t* du, const fcomplex_t* du2, const integer_t* ipiv,
+ fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZGTTRS( const char* trans, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* dl, const dcomplex_t* d,
+ const dcomplex_t* du, const dcomplex_t* du2, const integer_t* ipiv,
+ dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of hecon
-void LAPACK_CHECON( char const* uplo, integer_t const* n, fcomplex_t const* a,
- integer_t const* lda, integer_t const* ipiv, float const* anorm,
+void LAPACK_CHECON( const char* uplo, const integer_t* n, const fcomplex_t* a,
+ const integer_t* lda, const integer_t* ipiv, const float* anorm,
         float* rcond, fcomplex_t* work, integer_t* info );
-void LAPACK_ZHECON( char const* uplo, integer_t const* n, dcomplex_t const* a,
- integer_t const* lda, integer_t const* ipiv, double const* anorm,
+void LAPACK_ZHECON( const char* uplo, const integer_t* n, const dcomplex_t* a,
+ const integer_t* lda, const integer_t* ipiv, const double* anorm,
         double* rcond, dcomplex_t* work, integer_t* info );
 
 // Value-type variants of herfs
-void LAPACK_CHERFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t const* af, integer_t const* ldaf, integer_t const* ipiv,
- fcomplex_t const* b, integer_t const* ldb, fcomplex_t* x,
- integer_t const* ldx, float* ferr, float* berr, fcomplex_t* work,
+void LAPACK_CHERFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* af, const integer_t* ldaf, const integer_t* ipiv,
+ const fcomplex_t* b, const integer_t* ldb, fcomplex_t* x,
+ const integer_t* ldx, float* ferr, float* berr, fcomplex_t* work,
         float* rwork, integer_t* info );
-void LAPACK_ZHERFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t const* af, integer_t const* ldaf, integer_t const* ipiv,
- dcomplex_t const* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, double* ferr, double* berr, dcomplex_t* work,
+void LAPACK_ZHERFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* af, const integer_t* ldaf, const integer_t* ipiv,
+ const dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, double* ferr, double* berr, dcomplex_t* work,
         double* rwork, integer_t* info );
 
 // Value-type variants of hetrf
-void LAPACK_CHETRF( char const* uplo, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, integer_t* ipiv, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZHETRF( char const* uplo, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, integer_t* ipiv, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_CHETRF( const char* uplo, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, integer_t* ipiv, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZHETRF( const char* uplo, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, integer_t* ipiv, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of hetri
-void LAPACK_CHETRI( char const* uplo, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, integer_t const* ipiv, fcomplex_t* work,
+void LAPACK_CHETRI( const char* uplo, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, const integer_t* ipiv, fcomplex_t* work,
         integer_t* info );
-void LAPACK_ZHETRI( char const* uplo, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, integer_t const* ipiv, dcomplex_t* work,
+void LAPACK_ZHETRI( const char* uplo, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, const integer_t* ipiv, dcomplex_t* work,
         integer_t* info );
 
 // Value-type variants of hetrs
-void LAPACK_CHETRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* a, integer_t const* lda,
- integer_t const* ipiv, fcomplex_t* b, integer_t const* ldb,
- integer_t* info );
-void LAPACK_ZHETRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, integer_t const* lda,
- integer_t const* ipiv, dcomplex_t* b, integer_t const* ldb,
+void LAPACK_CHETRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* a, const integer_t* lda,
+ const integer_t* ipiv, fcomplex_t* b, const integer_t* ldb,
+ integer_t* info );
+void LAPACK_ZHETRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, const integer_t* lda,
+ const integer_t* ipiv, dcomplex_t* b, const integer_t* ldb,
         integer_t* info );
 
 // Value-type variants of hprfs
-void LAPACK_CHPRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* ap, fcomplex_t const* afp,
- integer_t const* ipiv, fcomplex_t const* b, integer_t const* ldb,
- fcomplex_t* x, integer_t const* ldx, float* ferr, float* berr,
+void LAPACK_CHPRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* ap, const fcomplex_t* afp,
+ const integer_t* ipiv, const fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* x, const integer_t* ldx, float* ferr, float* berr,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZHPRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* ap, dcomplex_t const* afp,
- integer_t const* ipiv, dcomplex_t const* b, integer_t const* ldb,
- dcomplex_t* x, integer_t const* ldx, double* ferr, double* berr,
+void LAPACK_ZHPRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* ap, const dcomplex_t* afp,
+ const integer_t* ipiv, const dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* x, const integer_t* ldx, double* ferr, double* berr,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of hptrs
-void LAPACK_CHPTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* ap, integer_t const* ipiv,
- fcomplex_t* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZHPTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* ap, integer_t const* ipiv,
- dcomplex_t* b, integer_t const* ldb, integer_t* info );
+void LAPACK_CHPTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* ap, const integer_t* ipiv,
+ fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZHPTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* ap, const integer_t* ipiv,
+ dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of lacon
-void LAPACK_SLACON( integer_t const* n, float* v, float* x, integer_t* isgn,
+void LAPACK_SLACON( const integer_t* n, float* v, float* x, integer_t* isgn,
         float* est, integer_t* kase );
-void LAPACK_DLACON( integer_t const* n, double* v, double* x, integer_t* isgn,
+void LAPACK_DLACON( const integer_t* n, double* v, double* x, integer_t* isgn,
         double* est, integer_t* kase );
-void LAPACK_CLACON( integer_t const* n, fcomplex_t* v, fcomplex_t* x,
+void LAPACK_CLACON( const integer_t* n, fcomplex_t* v, fcomplex_t* x,
         float* est, integer_t* kase );
-void LAPACK_ZLACON( integer_t const* n, dcomplex_t* v, dcomplex_t* x,
+void LAPACK_ZLACON( const integer_t* n, dcomplex_t* v, dcomplex_t* x,
         double* est, integer_t* kase );
 
 // Value-type variants of latrs
-void LAPACK_SLATRS( char const* uplo, char const* trans, char const* diag,
- char const* normin, integer_t const* n, float const* a,
- integer_t const* lda, float* x, float* scale, float* cnorm,
- integer_t* info );
-void LAPACK_DLATRS( char const* uplo, char const* trans, char const* diag,
- char const* normin, integer_t const* n, double const* a,
- integer_t const* lda, double* x, double* scale, double* cnorm,
- integer_t* info );
-void LAPACK_CLATRS( char const* uplo, char const* trans, char const* diag,
- char const* normin, integer_t const* n, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t* x, float* scale, float* cnorm,
- integer_t* info );
-void LAPACK_ZLATRS( char const* uplo, char const* trans, char const* diag,
- char const* normin, integer_t const* n, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t* x, double* scale, double* cnorm,
+void LAPACK_SLATRS( const char* uplo, const char* trans, const char* diag,
+ const char* normin, const integer_t* n, const float* a,
+ const integer_t* lda, float* x, float* scale, float* cnorm,
+ integer_t* info );
+void LAPACK_DLATRS( const char* uplo, const char* trans, const char* diag,
+ const char* normin, const integer_t* n, const double* a,
+ const integer_t* lda, double* x, double* scale, double* cnorm,
+ integer_t* info );
+void LAPACK_CLATRS( const char* uplo, const char* trans, const char* diag,
+ const char* normin, const integer_t* n, const fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* x, float* scale, float* cnorm,
+ integer_t* info );
+void LAPACK_ZLATRS( const char* uplo, const char* trans, const char* diag,
+ const char* normin, const integer_t* n, const dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* x, double* scale, double* cnorm,
         integer_t* info );
 
 // Value-type variants of pbcon
-void LAPACK_SPBCON( char const* uplo, integer_t const* n, integer_t const* kd,
- float const* ab, integer_t const* ldab, float const* anorm,
+void LAPACK_SPBCON( const char* uplo, const integer_t* n, const integer_t* kd,
+ const float* ab, const integer_t* ldab, const float* anorm,
         float* rcond, float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DPBCON( char const* uplo, integer_t const* n, integer_t const* kd,
- double const* ab, integer_t const* ldab, double const* anorm,
+void LAPACK_DPBCON( const char* uplo, const integer_t* n, const integer_t* kd,
+ const double* ab, const integer_t* ldab, const double* anorm,
         double* rcond, double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CPBCON( char const* uplo, integer_t const* n, integer_t const* kd,
- fcomplex_t const* ab, integer_t const* ldab, float const* anorm,
+void LAPACK_CPBCON( const char* uplo, const integer_t* n, const integer_t* kd,
+ const fcomplex_t* ab, const integer_t* ldab, const float* anorm,
         float* rcond, fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZPBCON( char const* uplo, integer_t const* n, integer_t const* kd,
- dcomplex_t const* ab, integer_t const* ldab, double const* anorm,
+void LAPACK_ZPBCON( const char* uplo, const integer_t* n, const integer_t* kd,
+ const dcomplex_t* ab, const integer_t* ldab, const double* anorm,
         double* rcond, dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of pbequ
-void LAPACK_SPBEQU( char const* uplo, integer_t const* n, integer_t const* kd,
- float const* ab, integer_t const* ldab, float* s, float* scond,
+void LAPACK_SPBEQU( const char* uplo, const integer_t* n, const integer_t* kd,
+ const float* ab, const integer_t* ldab, float* s, float* scond,
         float* amax, integer_t* info );
-void LAPACK_DPBEQU( char const* uplo, integer_t const* n, integer_t const* kd,
- double const* ab, integer_t const* ldab, double* s, double* scond,
+void LAPACK_DPBEQU( const char* uplo, const integer_t* n, const integer_t* kd,
+ const double* ab, const integer_t* ldab, double* s, double* scond,
         double* amax, integer_t* info );
-void LAPACK_CPBEQU( char const* uplo, integer_t const* n, integer_t const* kd,
- fcomplex_t const* ab, integer_t const* ldab, float* s, float* scond,
+void LAPACK_CPBEQU( const char* uplo, const integer_t* n, const integer_t* kd,
+ const fcomplex_t* ab, const integer_t* ldab, float* s, float* scond,
         float* amax, integer_t* info );
-void LAPACK_ZPBEQU( char const* uplo, integer_t const* n, integer_t const* kd,
- dcomplex_t const* ab, integer_t const* ldab, double* s, double* scond,
+void LAPACK_ZPBEQU( const char* uplo, const integer_t* n, const integer_t* kd,
+ const dcomplex_t* ab, const integer_t* ldab, double* s, double* scond,
         double* amax, integer_t* info );
 
 // Value-type variants of pbrfs
-void LAPACK_SPBRFS( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, float const* ab, integer_t const* ldab,
- float const* afb, integer_t const* ldafb, float const* b,
- integer_t const* ldb, float* x, integer_t const* ldx, float* ferr,
+void LAPACK_SPBRFS( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, const float* ab, const integer_t* ldab,
+ const float* afb, const integer_t* ldafb, const float* b,
+ const integer_t* ldb, float* x, const integer_t* ldx, float* ferr,
         float* berr, float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DPBRFS( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, double const* ab, integer_t const* ldab,
- double const* afb, integer_t const* ldafb, double const* b,
- integer_t const* ldb, double* x, integer_t const* ldx, double* ferr,
+void LAPACK_DPBRFS( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, const double* ab, const integer_t* ldab,
+ const double* afb, const integer_t* ldafb, const double* b,
+ const integer_t* ldb, double* x, const integer_t* ldx, double* ferr,
         double* berr, double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CPBRFS( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, fcomplex_t const* ab, integer_t const* ldab,
- fcomplex_t const* afb, integer_t const* ldafb, fcomplex_t const* b,
- integer_t const* ldb, fcomplex_t* x, integer_t const* ldx,
+void LAPACK_CPBRFS( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, const fcomplex_t* ab, const integer_t* ldab,
+ const fcomplex_t* afb, const integer_t* ldafb, const fcomplex_t* b,
+ const integer_t* ldb, fcomplex_t* x, const integer_t* ldx,
         float* ferr, float* berr, fcomplex_t* work, float* rwork,
         integer_t* info );
-void LAPACK_ZPBRFS( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, dcomplex_t const* ab, integer_t const* ldab,
- dcomplex_t const* afb, integer_t const* ldafb, dcomplex_t const* b,
- integer_t const* ldb, dcomplex_t* x, integer_t const* ldx,
+void LAPACK_ZPBRFS( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, const dcomplex_t* ab, const integer_t* ldab,
+ const dcomplex_t* afb, const integer_t* ldafb, const dcomplex_t* b,
+ const integer_t* ldb, dcomplex_t* x, const integer_t* ldx,
         double* ferr, double* berr, dcomplex_t* work, double* rwork,
         integer_t* info );
 
 // Value-type variants of pbtrf
-void LAPACK_SPBTRF( char const* uplo, integer_t const* n, integer_t const* kd,
- float* ab, integer_t const* ldab, integer_t* info );
-void LAPACK_DPBTRF( char const* uplo, integer_t const* n, integer_t const* kd,
- double* ab, integer_t const* ldab, integer_t* info );
-void LAPACK_CPBTRF( char const* uplo, integer_t const* n, integer_t const* kd,
- fcomplex_t* ab, integer_t const* ldab, integer_t* info );
-void LAPACK_ZPBTRF( char const* uplo, integer_t const* n, integer_t const* kd,
- dcomplex_t* ab, integer_t const* ldab, integer_t* info );
+void LAPACK_SPBTRF( const char* uplo, const integer_t* n, const integer_t* kd,
+ float* ab, const integer_t* ldab, integer_t* info );
+void LAPACK_DPBTRF( const char* uplo, const integer_t* n, const integer_t* kd,
+ double* ab, const integer_t* ldab, integer_t* info );
+void LAPACK_CPBTRF( const char* uplo, const integer_t* n, const integer_t* kd,
+ fcomplex_t* ab, const integer_t* ldab, integer_t* info );
+void LAPACK_ZPBTRF( const char* uplo, const integer_t* n, const integer_t* kd,
+ dcomplex_t* ab, const integer_t* ldab, integer_t* info );
 
 // Value-type variants of pbtrs
-void LAPACK_SPBTRS( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, float const* ab, integer_t const* ldab,
- float* b, integer_t const* ldb, integer_t* info );
-void LAPACK_DPBTRS( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, double const* ab, integer_t const* ldab,
- double* b, integer_t const* ldb, integer_t* info );
-void LAPACK_CPBTRS( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, fcomplex_t const* ab, integer_t const* ldab,
- fcomplex_t* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZPBTRS( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, dcomplex_t const* ab, integer_t const* ldab,
- dcomplex_t* b, integer_t const* ldb, integer_t* info );
+void LAPACK_SPBTRS( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, const float* ab, const integer_t* ldab,
+ float* b, const integer_t* ldb, integer_t* info );
+void LAPACK_DPBTRS( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, const double* ab, const integer_t* ldab,
+ double* b, const integer_t* ldb, integer_t* info );
+void LAPACK_CPBTRS( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, const fcomplex_t* ab, const integer_t* ldab,
+ fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZPBTRS( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, const dcomplex_t* ab, const integer_t* ldab,
+ dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of pftrs
-void LAPACK_SPFTRS( char const* transr, char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* a, float* b, integer_t const* ldb,
+void LAPACK_SPFTRS( const char* transr, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* a, float* b, const integer_t* ldb,
         integer_t* info );
-void LAPACK_DPFTRS( char const* transr, char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* a, double* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_CPFTRS( char const* transr, char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* a, fcomplex_t* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_ZPFTRS( char const* transr, char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, dcomplex_t* b,
- integer_t const* ldb, integer_t* info );
+void LAPACK_DPFTRS( const char* transr, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* a, double* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_CPFTRS( const char* transr, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* a, fcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_ZPFTRS( const char* transr, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, dcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
 
 // Value-type variants of pocon
-void LAPACK_SPOCON( char const* uplo, integer_t const* n, float const* a,
- integer_t const* lda, float const* anorm, float* rcond, float* work,
+void LAPACK_SPOCON( const char* uplo, const integer_t* n, const float* a,
+ const integer_t* lda, const float* anorm, float* rcond, float* work,
         integer_t* iwork, integer_t* info );
-void LAPACK_DPOCON( char const* uplo, integer_t const* n, double const* a,
- integer_t const* lda, double const* anorm, double* rcond,
+void LAPACK_DPOCON( const char* uplo, const integer_t* n, const double* a,
+ const integer_t* lda, const double* anorm, double* rcond,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CPOCON( char const* uplo, integer_t const* n, fcomplex_t const* a,
- integer_t const* lda, float const* anorm, float* rcond,
+void LAPACK_CPOCON( const char* uplo, const integer_t* n, const fcomplex_t* a,
+ const integer_t* lda, const float* anorm, float* rcond,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZPOCON( char const* uplo, integer_t const* n, dcomplex_t const* a,
- integer_t const* lda, double const* anorm, double* rcond,
+void LAPACK_ZPOCON( const char* uplo, const integer_t* n, const dcomplex_t* a,
+ const integer_t* lda, const double* anorm, double* rcond,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of poequ
-void LAPACK_SPOEQU( integer_t const* n, float const* a, integer_t const* lda,
+void LAPACK_SPOEQU( const integer_t* n, const float* a, const integer_t* lda,
         float* s, float* scond, float* amax, integer_t* info );
-void LAPACK_DPOEQU( integer_t const* n, double const* a, integer_t const* lda,
+void LAPACK_DPOEQU( const integer_t* n, const double* a, const integer_t* lda,
         double* s, double* scond, double* amax, integer_t* info );
-void LAPACK_CPOEQU( integer_t const* n, fcomplex_t const* a,
- integer_t const* lda, float* s, float* scond, float* amax,
+void LAPACK_CPOEQU( const integer_t* n, const fcomplex_t* a,
+ const integer_t* lda, float* s, float* scond, float* amax,
         integer_t* info );
-void LAPACK_ZPOEQU( integer_t const* n, dcomplex_t const* a,
- integer_t const* lda, double* s, double* scond, double* amax,
+void LAPACK_ZPOEQU( const integer_t* n, const dcomplex_t* a,
+ const integer_t* lda, double* s, double* scond, double* amax,
         integer_t* info );
 
 // Value-type variants of porfs
-void LAPACK_SPORFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* a, integer_t const* lda,
- float const* af, integer_t const* ldaf, float const* b,
- integer_t const* ldb, float* x, integer_t const* ldx, float* ferr,
+void LAPACK_SPORFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* a, const integer_t* lda,
+ const float* af, const integer_t* ldaf, const float* b,
+ const integer_t* ldb, float* x, const integer_t* ldx, float* ferr,
         float* berr, float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DPORFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* a, integer_t const* lda,
- double const* af, integer_t const* ldaf, double const* b,
- integer_t const* ldb, double* x, integer_t const* ldx, double* ferr,
+void LAPACK_DPORFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* a, const integer_t* lda,
+ const double* af, const integer_t* ldaf, const double* b,
+ const integer_t* ldb, double* x, const integer_t* ldx, double* ferr,
         double* berr, double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CPORFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t const* af, integer_t const* ldaf, fcomplex_t const* b,
- integer_t const* ldb, fcomplex_t* x, integer_t const* ldx,
+void LAPACK_CPORFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* af, const integer_t* ldaf, const fcomplex_t* b,
+ const integer_t* ldb, fcomplex_t* x, const integer_t* ldx,
         float* ferr, float* berr, fcomplex_t* work, float* rwork,
         integer_t* info );
-void LAPACK_ZPORFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t const* af, integer_t const* ldaf, dcomplex_t const* b,
- integer_t const* ldb, dcomplex_t* x, integer_t const* ldx,
+void LAPACK_ZPORFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* af, const integer_t* ldaf, const dcomplex_t* b,
+ const integer_t* ldb, dcomplex_t* x, const integer_t* ldx,
         double* ferr, double* berr, dcomplex_t* work, double* rwork,
         integer_t* info );
 
 // Value-type variants of potrf
-void LAPACK_SPOTRF( char const* uplo, integer_t const* n, float* a,
- integer_t const* lda, integer_t* info );
-void LAPACK_DPOTRF( char const* uplo, integer_t const* n, double* a,
- integer_t const* lda, integer_t* info );
-void LAPACK_CPOTRF( char const* uplo, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, integer_t* info );
-void LAPACK_ZPOTRF( char const* uplo, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, integer_t* info );
+void LAPACK_SPOTRF( const char* uplo, const integer_t* n, float* a,
+ const integer_t* lda, integer_t* info );
+void LAPACK_DPOTRF( const char* uplo, const integer_t* n, double* a,
+ const integer_t* lda, integer_t* info );
+void LAPACK_CPOTRF( const char* uplo, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, integer_t* info );
+void LAPACK_ZPOTRF( const char* uplo, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, integer_t* info );
 
 // Value-type variants of potri
-void LAPACK_SPOTRI( char const* uplo, integer_t const* n, float* a,
- integer_t const* lda, integer_t* info );
-void LAPACK_DPOTRI( char const* uplo, integer_t const* n, double* a,
- integer_t const* lda, integer_t* info );
-void LAPACK_CPOTRI( char const* uplo, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, integer_t* info );
-void LAPACK_ZPOTRI( char const* uplo, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, integer_t* info );
+void LAPACK_SPOTRI( const char* uplo, const integer_t* n, float* a,
+ const integer_t* lda, integer_t* info );
+void LAPACK_DPOTRI( const char* uplo, const integer_t* n, double* a,
+ const integer_t* lda, integer_t* info );
+void LAPACK_CPOTRI( const char* uplo, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, integer_t* info );
+void LAPACK_ZPOTRI( const char* uplo, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, integer_t* info );
 
 // Value-type variants of potrs
-void LAPACK_SPOTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* a, integer_t const* lda, float* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_DPOTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* a, integer_t const* lda,
- double* b, integer_t const* ldb, integer_t* info );
-void LAPACK_CPOTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZPOTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb, integer_t* info );
+void LAPACK_SPOTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* a, const integer_t* lda, float* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_DPOTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* a, const integer_t* lda,
+ double* b, const integer_t* ldb, integer_t* info );
+void LAPACK_CPOTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZPOTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of pprfs
-void LAPACK_SPPRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* ap, float const* afp,
- float const* b, integer_t const* ldb, float* x, integer_t const* ldx,
+void LAPACK_SPPRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* ap, const float* afp,
+ const float* b, const integer_t* ldb, float* x, const integer_t* ldx,
         float* ferr, float* berr, float* work, integer_t* iwork,
         integer_t* info );
-void LAPACK_DPPRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* ap, double const* afp,
- double const* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* ferr, double* berr, double* work,
- integer_t* iwork, integer_t* info );
-void LAPACK_CPPRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* ap, fcomplex_t const* afp,
- fcomplex_t const* b, integer_t const* ldb, fcomplex_t* x,
- integer_t const* ldx, float* ferr, float* berr, fcomplex_t* work,
+void LAPACK_DPPRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* ap, const double* afp,
+ const double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* ferr, double* berr, double* work,
+ integer_t* iwork, integer_t* info );
+void LAPACK_CPPRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* ap, const fcomplex_t* afp,
+ const fcomplex_t* b, const integer_t* ldb, fcomplex_t* x,
+ const integer_t* ldx, float* ferr, float* berr, fcomplex_t* work,
         float* rwork, integer_t* info );
-void LAPACK_ZPPRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* ap, dcomplex_t const* afp,
- dcomplex_t const* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, double* ferr, double* berr, dcomplex_t* work,
+void LAPACK_ZPPRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* ap, const dcomplex_t* afp,
+ const dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, double* ferr, double* berr, dcomplex_t* work,
         double* rwork, integer_t* info );
 
 // Value-type variants of pptrs
-void LAPACK_SPPTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* ap, float* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_DPPTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* ap, double* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_CPPTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* ap, fcomplex_t* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_ZPPTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* ap, dcomplex_t* b,
- integer_t const* ldb, integer_t* info );
+void LAPACK_SPPTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* ap, float* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_DPPTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* ap, double* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_CPPTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* ap, fcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_ZPPTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* ap, dcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
 
 // Value-type variants of ptrfs
-void LAPACK_SPTRFS( integer_t const* n, integer_t const* nrhs, float const* d,
- float const* e, float const* df, float const* ef, float const* b,
- integer_t const* ldb, float* x, integer_t const* ldx, float* ferr,
+void LAPACK_SPTRFS( const integer_t* n, const integer_t* nrhs, const float* d,
+ const float* e, const float* df, const float* ef, const float* b,
+ const integer_t* ldb, float* x, const integer_t* ldx, float* ferr,
         float* berr, float* work, integer_t* info );
-void LAPACK_DPTRFS( integer_t const* n, integer_t const* nrhs,
- double const* d, double const* e, double const* df, double const* ef,
- double const* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* ferr, double* berr, double* work,
- integer_t* info );
-void LAPACK_CPTRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* d, fcomplex_t const* e,
- float const* df, fcomplex_t const* ef, fcomplex_t const* b,
- integer_t const* ldb, fcomplex_t* x, integer_t const* ldx,
+void LAPACK_DPTRFS( const integer_t* n, const integer_t* nrhs,
+ const double* d, const double* e, const double* df, const double* ef,
+ const double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* ferr, double* berr, double* work,
+ integer_t* info );
+void LAPACK_CPTRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* d, const fcomplex_t* e,
+ const float* df, const fcomplex_t* ef, const fcomplex_t* b,
+ const integer_t* ldb, fcomplex_t* x, const integer_t* ldx,
         float* ferr, float* berr, fcomplex_t* work, float* rwork,
         integer_t* info );
-void LAPACK_ZPTRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* d, dcomplex_t const* e,
- double const* df, dcomplex_t const* ef, dcomplex_t const* b,
- integer_t const* ldb, dcomplex_t* x, integer_t const* ldx,
+void LAPACK_ZPTRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* d, const dcomplex_t* e,
+ const double* df, const dcomplex_t* ef, const dcomplex_t* b,
+ const integer_t* ldb, dcomplex_t* x, const integer_t* ldx,
         double* ferr, double* berr, dcomplex_t* work, double* rwork,
         integer_t* info );
 
 // Value-type variants of pttrs
-void LAPACK_SPTTRS( integer_t const* n, integer_t const* nrhs, float const* d,
- float const* e, float* b, integer_t const* ldb, integer_t* info );
-void LAPACK_DPTTRS( integer_t const* n, integer_t const* nrhs,
- double const* d, double const* e, double* b, integer_t const* ldb,
- integer_t* info );
-void LAPACK_CPTTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* d, fcomplex_t const* e,
- fcomplex_t* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZPTTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* d, dcomplex_t const* e,
- dcomplex_t* b, integer_t const* ldb, integer_t* info );
+void LAPACK_SPTTRS( const integer_t* n, const integer_t* nrhs, const float* d,
+ const float* e, float* b, const integer_t* ldb, integer_t* info );
+void LAPACK_DPTTRS( const integer_t* n, const integer_t* nrhs,
+ const double* d, const double* e, double* b, const integer_t* ldb,
+ integer_t* info );
+void LAPACK_CPTTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* d, const fcomplex_t* e,
+ fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZPTTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* d, const dcomplex_t* e,
+ dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of sprfs
-void LAPACK_SSPRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* ap, float const* afp,
- integer_t const* ipiv, float const* b, integer_t const* ldb, float* x,
- integer_t const* ldx, float* ferr, float* berr, float* work,
- integer_t* iwork, integer_t* info );
-void LAPACK_DSPRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* ap, double const* afp,
- integer_t const* ipiv, double const* b, integer_t const* ldb,
- double* x, integer_t const* ldx, double* ferr, double* berr,
+void LAPACK_SSPRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* ap, const float* afp,
+ const integer_t* ipiv, const float* b, const integer_t* ldb, float* x,
+ const integer_t* ldx, float* ferr, float* berr, float* work,
+ integer_t* iwork, integer_t* info );
+void LAPACK_DSPRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* ap, const double* afp,
+ const integer_t* ipiv, const double* b, const integer_t* ldb,
+ double* x, const integer_t* ldx, double* ferr, double* berr,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CSPRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* ap, fcomplex_t const* afp,
- integer_t const* ipiv, fcomplex_t const* b, integer_t const* ldb,
- fcomplex_t* x, integer_t const* ldx, float* ferr, float* berr,
+void LAPACK_CSPRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* ap, const fcomplex_t* afp,
+ const integer_t* ipiv, const fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* x, const integer_t* ldx, float* ferr, float* berr,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZSPRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* ap, dcomplex_t const* afp,
- integer_t const* ipiv, dcomplex_t const* b, integer_t const* ldb,
- dcomplex_t* x, integer_t const* ldx, double* ferr, double* berr,
+void LAPACK_ZSPRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* ap, const dcomplex_t* afp,
+ const integer_t* ipiv, const dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* x, const integer_t* ldx, double* ferr, double* berr,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of sptrs
-void LAPACK_SSPTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* ap, integer_t const* ipiv,
- float* b, integer_t const* ldb, integer_t* info );
-void LAPACK_DSPTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* ap, integer_t const* ipiv,
- double* b, integer_t const* ldb, integer_t* info );
-void LAPACK_CSPTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* ap, integer_t const* ipiv,
- fcomplex_t* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZSPTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* ap, integer_t const* ipiv,
- dcomplex_t* b, integer_t const* ldb, integer_t* info );
+void LAPACK_SSPTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* ap, const integer_t* ipiv,
+ float* b, const integer_t* ldb, integer_t* info );
+void LAPACK_DSPTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* ap, const integer_t* ipiv,
+ double* b, const integer_t* ldb, integer_t* info );
+void LAPACK_CSPTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* ap, const integer_t* ipiv,
+ fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZSPTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* ap, const integer_t* ipiv,
+ dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of sycon
-void LAPACK_SSYCON( char const* uplo, integer_t const* n, float const* a,
- integer_t const* lda, integer_t const* ipiv, float const* anorm,
+void LAPACK_SSYCON( const char* uplo, const integer_t* n, const float* a,
+ const integer_t* lda, const integer_t* ipiv, const float* anorm,
         float* rcond, float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DSYCON( char const* uplo, integer_t const* n, double const* a,
- integer_t const* lda, integer_t const* ipiv, double const* anorm,
+void LAPACK_DSYCON( const char* uplo, const integer_t* n, const double* a,
+ const integer_t* lda, const integer_t* ipiv, const double* anorm,
         double* rcond, double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CSYCON( char const* uplo, integer_t const* n, fcomplex_t const* a,
- integer_t const* lda, integer_t const* ipiv, float const* anorm,
+void LAPACK_CSYCON( const char* uplo, const integer_t* n, const fcomplex_t* a,
+ const integer_t* lda, const integer_t* ipiv, const float* anorm,
         float* rcond, fcomplex_t* work, integer_t* info );
-void LAPACK_ZSYCON( char const* uplo, integer_t const* n, dcomplex_t const* a,
- integer_t const* lda, integer_t const* ipiv, double const* anorm,
+void LAPACK_ZSYCON( const char* uplo, const integer_t* n, const dcomplex_t* a,
+ const integer_t* lda, const integer_t* ipiv, const double* anorm,
         double* rcond, dcomplex_t* work, integer_t* info );
 
 // Value-type variants of syrfs
-void LAPACK_SSYRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* a, integer_t const* lda,
- float const* af, integer_t const* ldaf, integer_t const* ipiv,
- float const* b, integer_t const* ldb, float* x, integer_t const* ldx,
+void LAPACK_SSYRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* a, const integer_t* lda,
+ const float* af, const integer_t* ldaf, const integer_t* ipiv,
+ const float* b, const integer_t* ldb, float* x, const integer_t* ldx,
         float* ferr, float* berr, float* work, integer_t* iwork,
         integer_t* info );
-void LAPACK_DSYRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* a, integer_t const* lda,
- double const* af, integer_t const* ldaf, integer_t const* ipiv,
- double const* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* ferr, double* berr, double* work,
- integer_t* iwork, integer_t* info );
-void LAPACK_CSYRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t const* af, integer_t const* ldaf, integer_t const* ipiv,
- fcomplex_t const* b, integer_t const* ldb, fcomplex_t* x,
- integer_t const* ldx, float* ferr, float* berr, fcomplex_t* work,
+void LAPACK_DSYRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* a, const integer_t* lda,
+ const double* af, const integer_t* ldaf, const integer_t* ipiv,
+ const double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* ferr, double* berr, double* work,
+ integer_t* iwork, integer_t* info );
+void LAPACK_CSYRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* a, const integer_t* lda,
+ const fcomplex_t* af, const integer_t* ldaf, const integer_t* ipiv,
+ const fcomplex_t* b, const integer_t* ldb, fcomplex_t* x,
+ const integer_t* ldx, float* ferr, float* berr, fcomplex_t* work,
         float* rwork, integer_t* info );
-void LAPACK_ZSYRFS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t const* af, integer_t const* ldaf, integer_t const* ipiv,
- dcomplex_t const* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, double* ferr, double* berr, dcomplex_t* work,
+void LAPACK_ZSYRFS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* af, const integer_t* ldaf, const integer_t* ipiv,
+ const dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, double* ferr, double* berr, dcomplex_t* work,
         double* rwork, integer_t* info );
 
 // Value-type variants of sytrf
-void LAPACK_SSYTRF( char const* uplo, integer_t const* n, float* a,
- integer_t const* lda, integer_t* ipiv, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DSYTRF( char const* uplo, integer_t const* n, double* a,
- integer_t const* lda, integer_t* ipiv, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CSYTRF( char const* uplo, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, integer_t* ipiv, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZSYTRF( char const* uplo, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, integer_t* ipiv, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_SSYTRF( const char* uplo, const integer_t* n, float* a,
+ const integer_t* lda, integer_t* ipiv, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DSYTRF( const char* uplo, const integer_t* n, double* a,
+ const integer_t* lda, integer_t* ipiv, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CSYTRF( const char* uplo, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, integer_t* ipiv, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZSYTRF( const char* uplo, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, integer_t* ipiv, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of sytri
-void LAPACK_SSYTRI( char const* uplo, integer_t const* n, float* a,
- integer_t const* lda, integer_t const* ipiv, float* work,
+void LAPACK_SSYTRI( const char* uplo, const integer_t* n, float* a,
+ const integer_t* lda, const integer_t* ipiv, float* work,
         integer_t* info );
-void LAPACK_DSYTRI( char const* uplo, integer_t const* n, double* a,
- integer_t const* lda, integer_t const* ipiv, double* work,
+void LAPACK_DSYTRI( const char* uplo, const integer_t* n, double* a,
+ const integer_t* lda, const integer_t* ipiv, double* work,
         integer_t* info );
-void LAPACK_CSYTRI( char const* uplo, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, integer_t const* ipiv, fcomplex_t* work,
+void LAPACK_CSYTRI( const char* uplo, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, const integer_t* ipiv, fcomplex_t* work,
         integer_t* info );
-void LAPACK_ZSYTRI( char const* uplo, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, integer_t const* ipiv, dcomplex_t* work,
+void LAPACK_ZSYTRI( const char* uplo, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, const integer_t* ipiv, dcomplex_t* work,
         integer_t* info );
 
 // Value-type variants of sytrs
-void LAPACK_SSYTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* a, integer_t const* lda,
- integer_t const* ipiv, float* b, integer_t const* ldb,
- integer_t* info );
-void LAPACK_DSYTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* a, integer_t const* lda,
- integer_t const* ipiv, double* b, integer_t const* ldb,
- integer_t* info );
-void LAPACK_CSYTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* a, integer_t const* lda,
- integer_t const* ipiv, fcomplex_t* b, integer_t const* ldb,
- integer_t* info );
-void LAPACK_ZSYTRS( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, integer_t const* lda,
- integer_t const* ipiv, dcomplex_t* b, integer_t const* ldb,
+void LAPACK_SSYTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* a, const integer_t* lda,
+ const integer_t* ipiv, float* b, const integer_t* ldb,
+ integer_t* info );
+void LAPACK_DSYTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* a, const integer_t* lda,
+ const integer_t* ipiv, double* b, const integer_t* ldb,
+ integer_t* info );
+void LAPACK_CSYTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* a, const integer_t* lda,
+ const integer_t* ipiv, fcomplex_t* b, const integer_t* ldb,
+ integer_t* info );
+void LAPACK_ZSYTRS( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, const integer_t* lda,
+ const integer_t* ipiv, dcomplex_t* b, const integer_t* ldb,
         integer_t* info );
 
 // Value-type variants of tbcon
-void LAPACK_STBCON( char const* norm, char const* uplo, char const* diag,
- integer_t const* n, integer_t const* kd, float const* ab,
- integer_t const* ldab, float* rcond, float* work, integer_t* iwork,
- integer_t* info );
-void LAPACK_DTBCON( char const* norm, char const* uplo, char const* diag,
- integer_t const* n, integer_t const* kd, double const* ab,
- integer_t const* ldab, double* rcond, double* work, integer_t* iwork,
- integer_t* info );
-void LAPACK_CTBCON( char const* norm, char const* uplo, char const* diag,
- integer_t const* n, integer_t const* kd, fcomplex_t const* ab,
- integer_t const* ldab, float* rcond, fcomplex_t* work, float* rwork,
- integer_t* info );
-void LAPACK_ZTBCON( char const* norm, char const* uplo, char const* diag,
- integer_t const* n, integer_t const* kd, dcomplex_t const* ab,
- integer_t const* ldab, double* rcond, dcomplex_t* work, double* rwork,
+void LAPACK_STBCON( const char* norm, const char* uplo, const char* diag,
+ const integer_t* n, const integer_t* kd, const float* ab,
+ const integer_t* ldab, float* rcond, float* work, integer_t* iwork,
+ integer_t* info );
+void LAPACK_DTBCON( const char* norm, const char* uplo, const char* diag,
+ const integer_t* n, const integer_t* kd, const double* ab,
+ const integer_t* ldab, double* rcond, double* work, integer_t* iwork,
+ integer_t* info );
+void LAPACK_CTBCON( const char* norm, const char* uplo, const char* diag,
+ const integer_t* n, const integer_t* kd, const fcomplex_t* ab,
+ const integer_t* ldab, float* rcond, fcomplex_t* work, float* rwork,
+ integer_t* info );
+void LAPACK_ZTBCON( const char* norm, const char* uplo, const char* diag,
+ const integer_t* n, const integer_t* kd, const dcomplex_t* ab,
+ const integer_t* ldab, double* rcond, dcomplex_t* work, double* rwork,
         integer_t* info );
 
 // Value-type variants of tbrfs
-void LAPACK_STBRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* kd, integer_t const* nrhs,
- float const* ab, integer_t const* ldab, float const* b,
- integer_t const* ldb, float const* x, integer_t const* ldx,
+void LAPACK_STBRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* kd, const integer_t* nrhs,
+ const float* ab, const integer_t* ldab, const float* b,
+ const integer_t* ldb, const float* x, const integer_t* ldx,
         float* ferr, float* berr, float* work, integer_t* iwork,
         integer_t* info );
-void LAPACK_DTBRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* kd, integer_t const* nrhs,
- double const* ab, integer_t const* ldab, double const* b,
- integer_t const* ldb, double const* x, integer_t const* ldx,
+void LAPACK_DTBRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* kd, const integer_t* nrhs,
+ const double* ab, const integer_t* ldab, const double* b,
+ const integer_t* ldb, const double* x, const integer_t* ldx,
         double* ferr, double* berr, double* work, integer_t* iwork,
         integer_t* info );
-void LAPACK_CTBRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* kd, integer_t const* nrhs,
- fcomplex_t const* ab, integer_t const* ldab, fcomplex_t const* b,
- integer_t const* ldb, fcomplex_t const* x, integer_t const* ldx,
+void LAPACK_CTBRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* kd, const integer_t* nrhs,
+ const fcomplex_t* ab, const integer_t* ldab, const fcomplex_t* b,
+ const integer_t* ldb, const fcomplex_t* x, const integer_t* ldx,
         float* ferr, float* berr, fcomplex_t* work, float* rwork,
         integer_t* info );
-void LAPACK_ZTBRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* kd, integer_t const* nrhs,
- dcomplex_t const* ab, integer_t const* ldab, dcomplex_t const* b,
- integer_t const* ldb, dcomplex_t const* x, integer_t const* ldx,
+void LAPACK_ZTBRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* kd, const integer_t* nrhs,
+ const dcomplex_t* ab, const integer_t* ldab, const dcomplex_t* b,
+ const integer_t* ldb, const dcomplex_t* x, const integer_t* ldx,
         double* ferr, double* berr, dcomplex_t* work, double* rwork,
         integer_t* info );
 
 // Value-type variants of tbtrs
-void LAPACK_STBTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* kd, integer_t const* nrhs,
- float const* ab, integer_t const* ldab, float* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_DTBTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* kd, integer_t const* nrhs,
- double const* ab, integer_t const* ldab, double* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_CTBTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* kd, integer_t const* nrhs,
- fcomplex_t const* ab, integer_t const* ldab, fcomplex_t* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_ZTBTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* kd, integer_t const* nrhs,
- dcomplex_t const* ab, integer_t const* ldab, dcomplex_t* b,
- integer_t const* ldb, integer_t* info );
+void LAPACK_STBTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* kd, const integer_t* nrhs,
+ const float* ab, const integer_t* ldab, float* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_DTBTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* kd, const integer_t* nrhs,
+ const double* ab, const integer_t* ldab, double* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_CTBTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* kd, const integer_t* nrhs,
+ const fcomplex_t* ab, const integer_t* ldab, fcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_ZTBTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* kd, const integer_t* nrhs,
+ const dcomplex_t* ab, const integer_t* ldab, dcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
 
 // Value-type variants of tprfs
-void LAPACK_STPRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, float const* ap,
- float const* b, integer_t const* ldb, float const* x,
- integer_t const* ldx, float* ferr, float* berr, float* work,
- integer_t* iwork, integer_t* info );
-void LAPACK_DTPRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, double const* ap,
- double const* b, integer_t const* ldb, double const* x,
- integer_t const* ldx, double* ferr, double* berr, double* work,
- integer_t* iwork, integer_t* info );
-void LAPACK_CTPRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, fcomplex_t const* ap,
- fcomplex_t const* b, integer_t const* ldb, fcomplex_t const* x,
- integer_t const* ldx, float* ferr, float* berr, fcomplex_t* work,
+void LAPACK_STPRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const float* ap,
+ const float* b, const integer_t* ldb, const float* x,
+ const integer_t* ldx, float* ferr, float* berr, float* work,
+ integer_t* iwork, integer_t* info );
+void LAPACK_DTPRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const double* ap,
+ const double* b, const integer_t* ldb, const double* x,
+ const integer_t* ldx, double* ferr, double* berr, double* work,
+ integer_t* iwork, integer_t* info );
+void LAPACK_CTPRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const fcomplex_t* ap,
+ const fcomplex_t* b, const integer_t* ldb, const fcomplex_t* x,
+ const integer_t* ldx, float* ferr, float* berr, fcomplex_t* work,
         float* rwork, integer_t* info );
-void LAPACK_ZTPRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, dcomplex_t const* ap,
- dcomplex_t const* b, integer_t const* ldb, dcomplex_t const* x,
- integer_t const* ldx, double* ferr, double* berr, dcomplex_t* work,
+void LAPACK_ZTPRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const dcomplex_t* ap,
+ const dcomplex_t* b, const integer_t* ldb, const dcomplex_t* x,
+ const integer_t* ldx, double* ferr, double* berr, dcomplex_t* work,
         double* rwork, integer_t* info );
 
 // Value-type variants of tptri
-void LAPACK_STPTRI( char const* uplo, char const* diag, integer_t const* n,
+void LAPACK_STPTRI( const char* uplo, const char* diag, const integer_t* n,
         float* ap, integer_t* info );
-void LAPACK_DTPTRI( char const* uplo, char const* diag, integer_t const* n,
+void LAPACK_DTPTRI( const char* uplo, const char* diag, const integer_t* n,
         double* ap, integer_t* info );
-void LAPACK_CTPTRI( char const* uplo, char const* diag, integer_t const* n,
+void LAPACK_CTPTRI( const char* uplo, const char* diag, const integer_t* n,
         fcomplex_t* ap, integer_t* info );
-void LAPACK_ZTPTRI( char const* uplo, char const* diag, integer_t const* n,
+void LAPACK_ZTPTRI( const char* uplo, const char* diag, const integer_t* n,
         dcomplex_t* ap, integer_t* info );
 
 // Value-type variants of tptrs
-void LAPACK_STPTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, float const* ap, float* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_DTPTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, double const* ap,
- double* b, integer_t const* ldb, integer_t* info );
-void LAPACK_CTPTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, fcomplex_t const* ap,
- fcomplex_t* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZTPTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, dcomplex_t const* ap,
- dcomplex_t* b, integer_t const* ldb, integer_t* info );
+void LAPACK_STPTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const float* ap, float* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_DTPTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const double* ap,
+ double* b, const integer_t* ldb, integer_t* info );
+void LAPACK_CTPTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const fcomplex_t* ap,
+ fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZTPTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const dcomplex_t* ap,
+ dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of trcon
-void LAPACK_STRCON( char const* norm, char const* uplo, char const* diag,
- integer_t const* n, float const* a, integer_t const* lda,
+void LAPACK_STRCON( const char* norm, const char* uplo, const char* diag,
+ const integer_t* n, const float* a, const integer_t* lda,
         float* rcond, float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DTRCON( char const* norm, char const* uplo, char const* diag,
- integer_t const* n, double const* a, integer_t const* lda,
+void LAPACK_DTRCON( const char* norm, const char* uplo, const char* diag,
+ const integer_t* n, const double* a, const integer_t* lda,
         double* rcond, double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CTRCON( char const* norm, char const* uplo, char const* diag,
- integer_t const* n, fcomplex_t const* a, integer_t const* lda,
+void LAPACK_CTRCON( const char* norm, const char* uplo, const char* diag,
+ const integer_t* n, const fcomplex_t* a, const integer_t* lda,
         float* rcond, fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZTRCON( char const* norm, char const* uplo, char const* diag,
- integer_t const* n, dcomplex_t const* a, integer_t const* lda,
+void LAPACK_ZTRCON( const char* norm, const char* uplo, const char* diag,
+ const integer_t* n, const dcomplex_t* a, const integer_t* lda,
         double* rcond, dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of trrfs
-void LAPACK_STRRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, float const* a,
- integer_t const* lda, float const* b, integer_t const* ldb,
- float const* x, integer_t const* ldx, float* ferr, float* berr,
+void LAPACK_STRRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const float* a,
+ const integer_t* lda, const float* b, const integer_t* ldb,
+ const float* x, const integer_t* ldx, float* ferr, float* berr,
         float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DTRRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, double const* a,
- integer_t const* lda, double const* b, integer_t const* ldb,
- double const* x, integer_t const* ldx, double* ferr, double* berr,
+void LAPACK_DTRRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const double* a,
+ const integer_t* lda, const double* b, const integer_t* ldb,
+ const double* x, const integer_t* ldx, double* ferr, double* berr,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CTRRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* b, integer_t const* ldb,
- fcomplex_t const* x, integer_t const* ldx, float* ferr, float* berr,
+void LAPACK_CTRRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* b, const integer_t* ldb,
+ const fcomplex_t* x, const integer_t* ldx, float* ferr, float* berr,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZTRRFS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* b, integer_t const* ldb,
- dcomplex_t const* x, integer_t const* ldx, double* ferr, double* berr,
+void LAPACK_ZTRRFS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* b, const integer_t* ldb,
+ const dcomplex_t* x, const integer_t* ldx, double* ferr, double* berr,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of trtri
-void LAPACK_STRTRI( char const* uplo, char const* diag, integer_t const* n,
- float* a, integer_t const* lda, integer_t* info );
-void LAPACK_DTRTRI( char const* uplo, char const* diag, integer_t const* n,
- double* a, integer_t const* lda, integer_t* info );
-void LAPACK_CTRTRI( char const* uplo, char const* diag, integer_t const* n,
- fcomplex_t* a, integer_t const* lda, integer_t* info );
-void LAPACK_ZTRTRI( char const* uplo, char const* diag, integer_t const* n,
- dcomplex_t* a, integer_t const* lda, integer_t* info );
+void LAPACK_STRTRI( const char* uplo, const char* diag, const integer_t* n,
+ float* a, const integer_t* lda, integer_t* info );
+void LAPACK_DTRTRI( const char* uplo, const char* diag, const integer_t* n,
+ double* a, const integer_t* lda, integer_t* info );
+void LAPACK_CTRTRI( const char* uplo, const char* diag, const integer_t* n,
+ fcomplex_t* a, const integer_t* lda, integer_t* info );
+void LAPACK_ZTRTRI( const char* uplo, const char* diag, const integer_t* n,
+ dcomplex_t* a, const integer_t* lda, integer_t* info );
 
 // Value-type variants of trtrs
-void LAPACK_STRTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, float const* a,
- integer_t const* lda, float* b, integer_t const* ldb,
- integer_t* info );
-void LAPACK_DTRTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, double const* a,
- integer_t const* lda, double* b, integer_t const* ldb,
- integer_t* info );
-void LAPACK_CTRTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t* b, integer_t const* ldb,
- integer_t* info );
-void LAPACK_ZTRTRS( char const* uplo, char const* trans, char const* diag,
- integer_t const* n, integer_t const* nrhs, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t* b, integer_t const* ldb,
+void LAPACK_STRTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const float* a,
+ const integer_t* lda, float* b, const integer_t* ldb,
+ integer_t* info );
+void LAPACK_DTRTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const double* a,
+ const integer_t* lda, double* b, const integer_t* ldb,
+ integer_t* info );
+void LAPACK_CTRTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* b, const integer_t* ldb,
+ integer_t* info );
+void LAPACK_ZTRTRS( const char* uplo, const char* trans, const char* diag,
+ const integer_t* n, const integer_t* nrhs, const dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* b, const integer_t* ldb,
         integer_t* info );
 
 // Value-type variants of hbtrd
-void LAPACK_CHBTRD( char const* vect, char const* uplo, integer_t const* n,
- integer_t const* kd, fcomplex_t* ab, integer_t const* ldab, float* d,
- float* e, fcomplex_t* q, integer_t const* ldq, fcomplex_t* work,
- integer_t* info );
-void LAPACK_ZHBTRD( char const* vect, char const* uplo, integer_t const* n,
- integer_t const* kd, dcomplex_t* ab, integer_t const* ldab, double* d,
- double* e, dcomplex_t* q, integer_t const* ldq, dcomplex_t* work,
+void LAPACK_CHBTRD( const char* vect, const char* uplo, const integer_t* n,
+ const integer_t* kd, fcomplex_t* ab, const integer_t* ldab, float* d,
+ float* e, fcomplex_t* q, const integer_t* ldq, fcomplex_t* work,
+ integer_t* info );
+void LAPACK_ZHBTRD( const char* vect, const char* uplo, const integer_t* n,
+ const integer_t* kd, dcomplex_t* ab, const integer_t* ldab, double* d,
+ double* e, dcomplex_t* q, const integer_t* ldq, dcomplex_t* work,
         integer_t* info );
 
 // Value-type variants of hetrd
-void LAPACK_CHETRD( char const* uplo, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, float* d, float* e, fcomplex_t* tau,
- fcomplex_t* work, integer_t const* lwork, integer_t* info );
-void LAPACK_ZHETRD( char const* uplo, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, double* d, double* e, dcomplex_t* tau,
- dcomplex_t* work, integer_t const* lwork, integer_t* info );
+void LAPACK_CHETRD( const char* uplo, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, float* d, float* e, fcomplex_t* tau,
+ fcomplex_t* work, const integer_t* lwork, integer_t* info );
+void LAPACK_ZHETRD( const char* uplo, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, double* d, double* e, dcomplex_t* tau,
+ dcomplex_t* work, const integer_t* lwork, integer_t* info );
 
 // Value-type variants of laebz
-void LAPACK_SLAEBZ( integer_t const* ijob, integer_t const* nitmax,
- integer_t const* n, integer_t const* mmax, integer_t const* minp,
- integer_t const* nbmin, float const* abstol, float const* reltol,
- float const* pivmin, float const* d, float const* e, float const* e2,
+void LAPACK_SLAEBZ( const integer_t* ijob, const integer_t* nitmax,
+ const integer_t* n, const integer_t* mmax, const integer_t* minp,
+ const integer_t* nbmin, const float* abstol, const float* reltol,
+ const float* pivmin, const float* d, const float* e, const float* e2,
         integer_t* nval, float* ab, float* c, integer_t* mout, integer_t* nab,
         float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DLAEBZ( integer_t const* ijob, integer_t const* nitmax,
- integer_t const* n, integer_t const* mmax, integer_t const* minp,
- integer_t const* nbmin, double const* abstol, double const* reltol,
- double const* pivmin, double const* d, double const* e,
- double const* e2, integer_t* nval, double* ab, double* c,
+void LAPACK_DLAEBZ( const integer_t* ijob, const integer_t* nitmax,
+ const integer_t* n, const integer_t* mmax, const integer_t* minp,
+ const integer_t* nbmin, const double* abstol, const double* reltol,
+ const double* pivmin, const double* d, const double* e,
+ const double* e2, integer_t* nval, double* ab, double* c,
         integer_t* mout, integer_t* nab, double* work, integer_t* iwork,
         integer_t* info );
 
 // Value-type variants of latrd
-void LAPACK_SLATRD( char const* uplo, integer_t const* n, integer_t const* nb,
- float* a, integer_t const* lda, float* e, float* tau, float* w,
- integer_t const* ldw );
-void LAPACK_DLATRD( char const* uplo, integer_t const* n, integer_t const* nb,
- double* a, integer_t const* lda, double* e, double* tau, double* w,
- integer_t const* ldw );
-void LAPACK_CLATRD( char const* uplo, integer_t const* n, integer_t const* nb,
- fcomplex_t* a, integer_t const* lda, float* e, fcomplex_t* tau,
- fcomplex_t* w, integer_t const* ldw );
-void LAPACK_ZLATRD( char const* uplo, integer_t const* n, integer_t const* nb,
- dcomplex_t* a, integer_t const* lda, double* e, dcomplex_t* tau,
- dcomplex_t* w, integer_t const* ldw );
+void LAPACK_SLATRD( const char* uplo, const integer_t* n, const integer_t* nb,
+ float* a, const integer_t* lda, float* e, float* tau, float* w,
+ const integer_t* ldw );
+void LAPACK_DLATRD( const char* uplo, const integer_t* n, const integer_t* nb,
+ double* a, const integer_t* lda, double* e, double* tau, double* w,
+ const integer_t* ldw );
+void LAPACK_CLATRD( const char* uplo, const integer_t* n, const integer_t* nb,
+ fcomplex_t* a, const integer_t* lda, float* e, fcomplex_t* tau,
+ fcomplex_t* w, const integer_t* ldw );
+void LAPACK_ZLATRD( const char* uplo, const integer_t* n, const integer_t* nb,
+ dcomplex_t* a, const integer_t* lda, double* e, dcomplex_t* tau,
+ dcomplex_t* w, const integer_t* ldw );
 
 // Value-type variants of opgtr
-void LAPACK_SOPGTR( char const* uplo, integer_t const* n, float const* ap,
- float const* tau, float* q, integer_t const* ldq, float* work,
+void LAPACK_SOPGTR( const char* uplo, const integer_t* n, const float* ap,
+ const float* tau, float* q, const integer_t* ldq, float* work,
         integer_t* info );
-void LAPACK_DOPGTR( char const* uplo, integer_t const* n, double const* ap,
- double const* tau, double* q, integer_t const* ldq, double* work,
+void LAPACK_DOPGTR( const char* uplo, const integer_t* n, const double* ap,
+ const double* tau, double* q, const integer_t* ldq, double* work,
         integer_t* info );
 
 // Value-type variants of opmtr
-void LAPACK_SOPMTR( char const* side, char const* uplo, char const* trans,
- integer_t const* m, integer_t const* n, float const* ap,
- float const* tau, float* c, integer_t const* ldc, float* work,
- integer_t* info );
-void LAPACK_DOPMTR( char const* side, char const* uplo, char const* trans,
- integer_t const* m, integer_t const* n, double const* ap,
- double const* tau, double* c, integer_t const* ldc, double* work,
+void LAPACK_SOPMTR( const char* side, const char* uplo, const char* trans,
+ const integer_t* m, const integer_t* n, const float* ap,
+ const float* tau, float* c, const integer_t* ldc, float* work,
+ integer_t* info );
+void LAPACK_DOPMTR( const char* side, const char* uplo, const char* trans,
+ const integer_t* m, const integer_t* n, const double* ap,
+ const double* tau, double* c, const integer_t* ldc, double* work,
         integer_t* info );
 
 // Value-type variants of orgtr
-void LAPACK_SORGTR( char const* uplo, integer_t const* n, float* a,
- integer_t const* lda, float const* tau, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DORGTR( char const* uplo, integer_t const* n, double* a,
- integer_t const* lda, double const* tau, double* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_SORGTR( const char* uplo, const integer_t* n, float* a,
+ const integer_t* lda, const float* tau, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DORGTR( const char* uplo, const integer_t* n, double* a,
+ const integer_t* lda, const double* tau, double* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of ormtr
-void LAPACK_SORMTR( char const* side, char const* uplo, char const* trans,
- integer_t const* m, integer_t const* n, float const* a,
- integer_t const* lda, float const* tau, float* c,
- integer_t const* ldc, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DORMTR( char const* side, char const* uplo, char const* trans,
- integer_t const* m, integer_t const* n, double const* a,
- integer_t const* lda, double const* tau, double* c,
- integer_t const* ldc, double* work, integer_t const* lwork,
+void LAPACK_SORMTR( const char* side, const char* uplo, const char* trans,
+ const integer_t* m, const integer_t* n, const float* a,
+ const integer_t* lda, const float* tau, float* c,
+ const integer_t* ldc, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DORMTR( const char* side, const char* uplo, const char* trans,
+ const integer_t* m, const integer_t* n, const double* a,
+ const integer_t* lda, const double* tau, double* c,
+ const integer_t* ldc, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of pteqr
-void LAPACK_SPTEQR( char const* compz, integer_t const* n, float* d, float* e,
- float* z, integer_t const* ldz, float* work, integer_t* info );
-void LAPACK_DPTEQR( char const* compz, integer_t const* n, double* d,
- double* e, double* z, integer_t const* ldz, double* work,
- integer_t* info );
-void LAPACK_CPTEQR( char const* compz, integer_t const* n, float* d, float* e,
- fcomplex_t* z, integer_t const* ldz, float* work, integer_t* info );
-void LAPACK_ZPTEQR( char const* compz, integer_t const* n, double* d,
- double* e, dcomplex_t* z, integer_t const* ldz, double* work,
+void LAPACK_SPTEQR( const char* compz, const integer_t* n, float* d, float* e,
+ float* z, const integer_t* ldz, float* work, integer_t* info );
+void LAPACK_DPTEQR( const char* compz, const integer_t* n, double* d,
+ double* e, double* z, const integer_t* ldz, double* work,
+ integer_t* info );
+void LAPACK_CPTEQR( const char* compz, const integer_t* n, float* d, float* e,
+ fcomplex_t* z, const integer_t* ldz, float* work, integer_t* info );
+void LAPACK_ZPTEQR( const char* compz, const integer_t* n, double* d,
+ double* e, dcomplex_t* z, const integer_t* ldz, double* work,
         integer_t* info );
 
 // Value-type variants of sbtrd
-void LAPACK_SSBTRD( char const* vect, char const* uplo, integer_t const* n,
- integer_t const* kd, float* ab, integer_t const* ldab, float* d,
- float* e, float* q, integer_t const* ldq, float* work,
- integer_t* info );
-void LAPACK_DSBTRD( char const* vect, char const* uplo, integer_t const* n,
- integer_t const* kd, double* ab, integer_t const* ldab, double* d,
- double* e, double* q, integer_t const* ldq, double* work,
+void LAPACK_SSBTRD( const char* vect, const char* uplo, const integer_t* n,
+ const integer_t* kd, float* ab, const integer_t* ldab, float* d,
+ float* e, float* q, const integer_t* ldq, float* work,
+ integer_t* info );
+void LAPACK_DSBTRD( const char* vect, const char* uplo, const integer_t* n,
+ const integer_t* kd, double* ab, const integer_t* ldab, double* d,
+ double* e, double* q, const integer_t* ldq, double* work,
         integer_t* info );
 
 // Value-type variants of stebz
-void LAPACK_SSTEBZ( char const* range, char const* order, integer_t const* n,
- float const* vl, float const* vu, integer_t const* il,
- integer_t const* iu, float const* abstol, float const* d,
- float const* e, integer_t* m, integer_t* nsplit, float* w,
+void LAPACK_SSTEBZ( const char* range, const char* order, const integer_t* n,
+ const float* vl, const float* vu, const integer_t* il,
+ const integer_t* iu, const float* abstol, const float* d,
+ const float* e, integer_t* m, integer_t* nsplit, float* w,
         integer_t* iblock, integer_t* isplit, float* work, integer_t* iwork,
         integer_t* info );
-void LAPACK_DSTEBZ( char const* range, char const* order, integer_t const* n,
- double const* vl, double const* vu, integer_t const* il,
- integer_t const* iu, double const* abstol, double const* d,
- double const* e, integer_t* m, integer_t* nsplit, double* w,
+void LAPACK_DSTEBZ( const char* range, const char* order, const integer_t* n,
+ const double* vl, const double* vu, const integer_t* il,
+ const integer_t* iu, const double* abstol, const double* d,
+ const double* e, integer_t* m, integer_t* nsplit, double* w,
         integer_t* iblock, integer_t* isplit, double* work, integer_t* iwork,
         integer_t* info );
 
 // Value-type variants of stedc
-void LAPACK_SSTEDC( char const* compz, integer_t const* n, float* d, float* e,
- float* z, integer_t const* ldz, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_DSTEDC( char const* compz, integer_t const* n, double* d,
- double* e, double* z, integer_t const* ldz, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
- integer_t* info );
-void LAPACK_CSTEDC( char const* compz, integer_t const* n, float* d, float* e,
- fcomplex_t* z, integer_t const* ldz, fcomplex_t* work,
- integer_t const* lwork, float* rwork, integer_t const* lrwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_ZSTEDC( char const* compz, integer_t const* n, double* d,
- double* e, dcomplex_t* z, integer_t const* ldz, dcomplex_t* work,
- integer_t const* lwork, double* rwork, integer_t const* lrwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
+void LAPACK_SSTEDC( const char* compz, const integer_t* n, float* d, float* e,
+ float* z, const integer_t* ldz, float* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_DSTEDC( const char* compz, const integer_t* n, double* d,
+ double* e, double* z, const integer_t* ldz, double* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
+ integer_t* info );
+void LAPACK_CSTEDC( const char* compz, const integer_t* n, float* d, float* e,
+ fcomplex_t* z, const integer_t* ldz, fcomplex_t* work,
+ const integer_t* lwork, float* rwork, const integer_t* lrwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_ZSTEDC( const char* compz, const integer_t* n, double* d,
+ double* e, dcomplex_t* z, const integer_t* ldz, dcomplex_t* work,
+ const integer_t* lwork, double* rwork, const integer_t* lrwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
 
 // Value-type variants of stegr
-void LAPACK_SSTEGR( char const* jobz, char const* range, integer_t const* n,
- float* d, float* e, float const* vl, float const* vu,
- integer_t const* il, integer_t const* iu, float const* abstol,
- integer_t* m, float* w, float* z, integer_t const* ldz,
- integer_t* isuppz, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_DSTEGR( char const* jobz, char const* range, integer_t const* n,
- double* d, double* e, double const* vl, double const* vu,
- integer_t const* il, integer_t const* iu, double const* abstol,
- integer_t* m, double* w, double* z, integer_t const* ldz,
- integer_t* isuppz, double* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_CSTEGR( char const* jobz, char const* range, integer_t const* n,
- float* d, float* e, float const* vl, float const* vu,
- integer_t const* il, integer_t const* iu, float const* abstol,
- integer_t* m, float* w, fcomplex_t* z, integer_t const* ldz,
- integer_t* isuppz, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_ZSTEGR( char const* jobz, char const* range, integer_t const* n,
- double* d, double* e, double const* vl, double const* vu,
- integer_t const* il, integer_t const* iu, double const* abstol,
- integer_t* m, double* w, dcomplex_t* z, integer_t const* ldz,
- integer_t* isuppz, double* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
+void LAPACK_SSTEGR( const char* jobz, const char* range, const integer_t* n,
+ float* d, float* e, const float* vl, const float* vu,
+ const integer_t* il, const integer_t* iu, const float* abstol,
+ integer_t* m, float* w, float* z, const integer_t* ldz,
+ integer_t* isuppz, float* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_DSTEGR( const char* jobz, const char* range, const integer_t* n,
+ double* d, double* e, const double* vl, const double* vu,
+ const integer_t* il, const integer_t* iu, const double* abstol,
+ integer_t* m, double* w, double* z, const integer_t* ldz,
+ integer_t* isuppz, double* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_CSTEGR( const char* jobz, const char* range, const integer_t* n,
+ float* d, float* e, const float* vl, const float* vu,
+ const integer_t* il, const integer_t* iu, const float* abstol,
+ integer_t* m, float* w, fcomplex_t* z, const integer_t* ldz,
+ integer_t* isuppz, float* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_ZSTEGR( const char* jobz, const char* range, const integer_t* n,
+ double* d, double* e, const double* vl, const double* vu,
+ const integer_t* il, const integer_t* iu, const double* abstol,
+ integer_t* m, double* w, dcomplex_t* z, const integer_t* ldz,
+ integer_t* isuppz, double* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
 
 // Value-type variants of stein
-void LAPACK_SSTEIN( integer_t const* n, float const* d, float const* e,
- integer_t const* m, float const* w, integer_t const* iblock,
- integer_t const* isplit, float* z, integer_t const* ldz, float* work,
+void LAPACK_SSTEIN( const integer_t* n, const float* d, const float* e,
+ const integer_t* m, const float* w, const integer_t* iblock,
+ const integer_t* isplit, float* z, const integer_t* ldz, float* work,
         integer_t* iwork, integer_t* ifail, integer_t* info );
-void LAPACK_DSTEIN( integer_t const* n, double const* d, double const* e,
- integer_t const* m, double const* w, integer_t const* iblock,
- integer_t const* isplit, double* z, integer_t const* ldz,
+void LAPACK_DSTEIN( const integer_t* n, const double* d, const double* e,
+ const integer_t* m, const double* w, const integer_t* iblock,
+ const integer_t* isplit, double* z, const integer_t* ldz,
         double* work, integer_t* iwork, integer_t* ifail, integer_t* info );
-void LAPACK_CSTEIN( integer_t const* n, float const* d, float const* e,
- integer_t const* m, float const* w, integer_t const* iblock,
- integer_t const* isplit, fcomplex_t* z, integer_t const* ldz,
+void LAPACK_CSTEIN( const integer_t* n, const float* d, const float* e,
+ const integer_t* m, const float* w, const integer_t* iblock,
+ const integer_t* isplit, fcomplex_t* z, const integer_t* ldz,
         float* work, integer_t* iwork, integer_t* ifail, integer_t* info );
-void LAPACK_ZSTEIN( integer_t const* n, double const* d, double const* e,
- integer_t const* m, double const* w, integer_t const* iblock,
- integer_t const* isplit, dcomplex_t* z, integer_t const* ldz,
+void LAPACK_ZSTEIN( const integer_t* n, const double* d, const double* e,
+ const integer_t* m, const double* w, const integer_t* iblock,
+ const integer_t* isplit, dcomplex_t* z, const integer_t* ldz,
         double* work, integer_t* iwork, integer_t* ifail, integer_t* info );
 
 // Value-type variants of stemr
-void LAPACK_SSTEMR( char const* jobz, char const* range, integer_t const* n,
- float* d, float* e, float const* vl, float const* vu,
- integer_t const* il, integer_t const* iu, integer_t* m, float* w,
- float* z, integer_t const* ldz, integer_t const* nzc,
+void LAPACK_SSTEMR( const char* jobz, const char* range, const integer_t* n,
+ float* d, float* e, const float* vl, const float* vu,
+ const integer_t* il, const integer_t* iu, integer_t* m, float* w,
+ float* z, const integer_t* ldz, const integer_t* nzc,
         integer_t* isuppz, logical_t* tryrac, float* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
-void LAPACK_DSTEMR( char const* jobz, char const* range, integer_t const* n,
- double* d, double* e, double const* vl, double const* vu,
- integer_t const* il, integer_t const* iu, integer_t* m, double* w,
- double* z, integer_t const* ldz, integer_t const* nzc,
+void LAPACK_DSTEMR( const char* jobz, const char* range, const integer_t* n,
+ double* d, double* e, const double* vl, const double* vu,
+ const integer_t* il, const integer_t* iu, integer_t* m, double* w,
+ double* z, const integer_t* ldz, const integer_t* nzc,
         integer_t* isuppz, logical_t* tryrac, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
-void LAPACK_CSTEMR( char const* jobz, char const* range, integer_t const* n,
- float* d, float* e, float const* vl, float const* vu,
- integer_t const* il, integer_t const* iu, integer_t* m, float* w,
- fcomplex_t* z, integer_t const* ldz, integer_t const* nzc,
+void LAPACK_CSTEMR( const char* jobz, const char* range, const integer_t* n,
+ float* d, float* e, const float* vl, const float* vu,
+ const integer_t* il, const integer_t* iu, integer_t* m, float* w,
+ fcomplex_t* z, const integer_t* ldz, const integer_t* nzc,
         integer_t* isuppz, logical_t* tryrac, float* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
-void LAPACK_ZSTEMR( char const* jobz, char const* range, integer_t const* n,
- double* d, double* e, double const* vl, double const* vu,
- integer_t const* il, integer_t const* iu, integer_t* m, double* w,
- dcomplex_t* z, integer_t const* ldz, integer_t const* nzc,
+void LAPACK_ZSTEMR( const char* jobz, const char* range, const integer_t* n,
+ double* d, double* e, const double* vl, const double* vu,
+ const integer_t* il, const integer_t* iu, integer_t* m, double* w,
+ dcomplex_t* z, const integer_t* ldz, const integer_t* nzc,
         integer_t* isuppz, logical_t* tryrac, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
 
 // Value-type variants of steqr
-void LAPACK_SSTEQR( char const* compz, integer_t const* n, float* d, float* e,
- float* z, integer_t const* ldz, float* work, integer_t* info );
-void LAPACK_DSTEQR( char const* compz, integer_t const* n, double* d,
- double* e, double* z, integer_t const* ldz, double* work,
- integer_t* info );
-void LAPACK_CSTEQR( char const* compz, integer_t const* n, float* d, float* e,
- fcomplex_t* z, integer_t const* ldz, float* work, integer_t* info );
-void LAPACK_ZSTEQR( char const* compz, integer_t const* n, double* d,
- double* e, dcomplex_t* z, integer_t const* ldz, double* work,
+void LAPACK_SSTEQR( const char* compz, const integer_t* n, float* d, float* e,
+ float* z, const integer_t* ldz, float* work, integer_t* info );
+void LAPACK_DSTEQR( const char* compz, const integer_t* n, double* d,
+ double* e, double* z, const integer_t* ldz, double* work,
+ integer_t* info );
+void LAPACK_CSTEQR( const char* compz, const integer_t* n, float* d, float* e,
+ fcomplex_t* z, const integer_t* ldz, float* work, integer_t* info );
+void LAPACK_ZSTEQR( const char* compz, const integer_t* n, double* d,
+ double* e, dcomplex_t* z, const integer_t* ldz, double* work,
         integer_t* info );
 
 // Value-type variants of sterf
-void LAPACK_SSTERF( integer_t const* n, float* d, float* e, integer_t* info );
-void LAPACK_DSTERF( integer_t const* n, double* d, double* e,
+void LAPACK_SSTERF( const integer_t* n, float* d, float* e, integer_t* info );
+void LAPACK_DSTERF( const integer_t* n, double* d, double* e,
         integer_t* info );
 
 // Value-type variants of sytrd
-void LAPACK_SSYTRD( char const* uplo, integer_t const* n, float* a,
- integer_t const* lda, float* d, float* e, float* tau, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DSYTRD( char const* uplo, integer_t const* n, double* a,
- integer_t const* lda, double* d, double* e, double* tau, double* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_SSYTRD( const char* uplo, const integer_t* n, float* a,
+ const integer_t* lda, float* d, float* e, float* tau, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DSYTRD( const char* uplo, const integer_t* n, double* a,
+ const integer_t* lda, double* d, double* e, double* tau, double* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of ungtr
-void LAPACK_CUNGTR( char const* uplo, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, fcomplex_t const* tau, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZUNGTR( char const* uplo, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, dcomplex_t const* tau, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_CUNGTR( const char* uplo, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* tau, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZUNGTR( const char* uplo, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* tau, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of unmtr
-void LAPACK_CUNMTR( char const* side, char const* uplo, char const* trans,
- integer_t const* m, integer_t const* n, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* tau, fcomplex_t* c,
- integer_t const* ldc, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZUNMTR( char const* side, char const* uplo, char const* trans,
- integer_t const* m, integer_t const* n, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* tau, dcomplex_t* c,
- integer_t const* ldc, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_CUNMTR( const char* side, const char* uplo, const char* trans,
+ const integer_t* m, const integer_t* n, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* tau, fcomplex_t* c,
+ const integer_t* ldc, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZUNMTR( const char* side, const char* uplo, const char* trans,
+ const integer_t* m, const integer_t* n, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* tau, dcomplex_t* c,
+ const integer_t* ldc, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of upgtr
-void LAPACK_CUPGTR( char const* uplo, integer_t const* n,
- fcomplex_t const* ap, fcomplex_t const* tau, fcomplex_t* q,
- integer_t const* ldq, fcomplex_t* work, integer_t* info );
-void LAPACK_ZUPGTR( char const* uplo, integer_t const* n,
- dcomplex_t const* ap, dcomplex_t const* tau, dcomplex_t* q,
- integer_t const* ldq, dcomplex_t* work, integer_t* info );
+void LAPACK_CUPGTR( const char* uplo, const integer_t* n,
+ const fcomplex_t* ap, const fcomplex_t* tau, fcomplex_t* q,
+ const integer_t* ldq, fcomplex_t* work, integer_t* info );
+void LAPACK_ZUPGTR( const char* uplo, const integer_t* n,
+ const dcomplex_t* ap, const dcomplex_t* tau, dcomplex_t* q,
+ const integer_t* ldq, dcomplex_t* work, integer_t* info );
 
 // Value-type variants of upmtr
-void LAPACK_CUPMTR( char const* side, char const* uplo, char const* trans,
- integer_t const* m, integer_t const* n, fcomplex_t const* ap,
- fcomplex_t const* tau, fcomplex_t* c, integer_t const* ldc,
+void LAPACK_CUPMTR( const char* side, const char* uplo, const char* trans,
+ const integer_t* m, const integer_t* n, const fcomplex_t* ap,
+ const fcomplex_t* tau, fcomplex_t* c, const integer_t* ldc,
         fcomplex_t* work, integer_t* info );
-void LAPACK_ZUPMTR( char const* side, char const* uplo, char const* trans,
- integer_t const* m, integer_t const* n, dcomplex_t const* ap,
- dcomplex_t const* tau, dcomplex_t* c, integer_t const* ldc,
+void LAPACK_ZUPMTR( const char* side, const char* uplo, const char* trans,
+ const integer_t* m, const integer_t* n, const dcomplex_t* ap,
+ const dcomplex_t* tau, dcomplex_t* c, const integer_t* ldc,
         dcomplex_t* work, integer_t* info );
 
 // Value-type variants of ggbak
-void LAPACK_SGGBAK( char const* job, char const* side, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, float const* lscale,
- float const* rscale, integer_t const* m, float* v,
- integer_t const* ldv, integer_t* info );
-void LAPACK_DGGBAK( char const* job, char const* side, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, double const* lscale,
- double const* rscale, integer_t const* m, double* v,
- integer_t const* ldv, integer_t* info );
-void LAPACK_CGGBAK( char const* job, char const* side, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, float const* lscale,
- float const* rscale, integer_t const* m, fcomplex_t* v,
- integer_t const* ldv, integer_t* info );
-void LAPACK_ZGGBAK( char const* job, char const* side, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, double const* lscale,
- double const* rscale, integer_t const* m, dcomplex_t* v,
- integer_t const* ldv, integer_t* info );
+void LAPACK_SGGBAK( const char* job, const char* side, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, const float* lscale,
+ const float* rscale, const integer_t* m, float* v,
+ const integer_t* ldv, integer_t* info );
+void LAPACK_DGGBAK( const char* job, const char* side, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, const double* lscale,
+ const double* rscale, const integer_t* m, double* v,
+ const integer_t* ldv, integer_t* info );
+void LAPACK_CGGBAK( const char* job, const char* side, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, const float* lscale,
+ const float* rscale, const integer_t* m, fcomplex_t* v,
+ const integer_t* ldv, integer_t* info );
+void LAPACK_ZGGBAK( const char* job, const char* side, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, const double* lscale,
+ const double* rscale, const integer_t* m, dcomplex_t* v,
+ const integer_t* ldv, integer_t* info );
 
 // Value-type variants of ggbal
-void LAPACK_SGGBAL( char const* job, integer_t const* n, float* a,
- integer_t const* lda, float* b, integer_t const* ldb, integer_t* ilo,
+void LAPACK_SGGBAL( const char* job, const integer_t* n, float* a,
+ const integer_t* lda, float* b, const integer_t* ldb, integer_t* ilo,
         integer_t* ihi, float* lscale, float* rscale, float* work,
         integer_t* info );
-void LAPACK_DGGBAL( char const* job, integer_t const* n, double* a,
- integer_t const* lda, double* b, integer_t const* ldb, integer_t* ilo,
+void LAPACK_DGGBAL( const char* job, const integer_t* n, double* a,
+ const integer_t* lda, double* b, const integer_t* ldb, integer_t* ilo,
         integer_t* ihi, double* lscale, double* rscale, double* work,
         integer_t* info );
-void LAPACK_CGGBAL( char const* job, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* b, integer_t const* ldb,
+void LAPACK_CGGBAL( const char* job, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* b, const integer_t* ldb,
         integer_t* ilo, integer_t* ihi, float* lscale, float* rscale,
         float* work, integer_t* info );
-void LAPACK_ZGGBAL( char const* job, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* b, integer_t const* ldb,
+void LAPACK_ZGGBAL( const char* job, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* b, const integer_t* ldb,
         integer_t* ilo, integer_t* ihi, double* lscale, double* rscale,
         double* work, integer_t* info );
 
 // Value-type variants of gghrd
-void LAPACK_SGGHRD( char const* compq, char const* compz, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, float* a,
- integer_t const* lda, float* b, integer_t const* ldb, float* q,
- integer_t const* ldq, float* z, integer_t const* ldz,
- integer_t* info );
-void LAPACK_DGGHRD( char const* compq, char const* compz, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, double* a,
- integer_t const* lda, double* b, integer_t const* ldb, double* q,
- integer_t const* ldq, double* z, integer_t const* ldz,
- integer_t* info );
-void LAPACK_CGGHRD( char const* compq, char const* compz, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* b, integer_t const* ldb,
- fcomplex_t* q, integer_t const* ldq, fcomplex_t* z,
- integer_t const* ldz, integer_t* info );
-void LAPACK_ZGGHRD( char const* compq, char const* compz, integer_t const* n,
- integer_t const* ilo, integer_t const* ihi, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* b, integer_t const* ldb,
- dcomplex_t* q, integer_t const* ldq, dcomplex_t* z,
- integer_t const* ldz, integer_t* info );
+void LAPACK_SGGHRD( const char* compq, const char* compz, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, float* a,
+ const integer_t* lda, float* b, const integer_t* ldb, float* q,
+ const integer_t* ldq, float* z, const integer_t* ldz,
+ integer_t* info );
+void LAPACK_DGGHRD( const char* compq, const char* compz, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, double* a,
+ const integer_t* lda, double* b, const integer_t* ldb, double* q,
+ const integer_t* ldq, double* z, const integer_t* ldz,
+ integer_t* info );
+void LAPACK_CGGHRD( const char* compq, const char* compz, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* q, const integer_t* ldq, fcomplex_t* z,
+ const integer_t* ldz, integer_t* info );
+void LAPACK_ZGGHRD( const char* compq, const char* compz, const integer_t* n,
+ const integer_t* ilo, const integer_t* ihi, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* q, const integer_t* ldq, dcomplex_t* z,
+ const integer_t* ldz, integer_t* info );
 
 // Value-type variants of hgeqz
-void LAPACK_SHGEQZ( char const* job, char const* compq, char const* compz,
- integer_t const* n, integer_t const* ilo, integer_t const* ihi,
- float* h, integer_t const* ldh, float* t, integer_t const* ldt,
+void LAPACK_SHGEQZ( const char* job, const char* compq, const char* compz,
+ const integer_t* n, const integer_t* ilo, const integer_t* ihi,
+ float* h, const integer_t* ldh, float* t, const integer_t* ldt,
         float* alphar, float* alphai, float* beta, float* q,
- integer_t const* ldq, float* z, integer_t const* ldz, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DHGEQZ( char const* job, char const* compq, char const* compz,
- integer_t const* n, integer_t const* ilo, integer_t const* ihi,
- double* h, integer_t const* ldh, double* t, integer_t const* ldt,
+ const integer_t* ldq, float* z, const integer_t* ldz, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DHGEQZ( const char* job, const char* compq, const char* compz,
+ const integer_t* n, const integer_t* ilo, const integer_t* ihi,
+ double* h, const integer_t* ldh, double* t, const integer_t* ldt,
         double* alphar, double* alphai, double* beta, double* q,
- integer_t const* ldq, double* z, integer_t const* ldz, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CHGEQZ( char const* job, char const* compq, char const* compz,
- integer_t const* n, integer_t const* ilo, integer_t const* ihi,
- fcomplex_t* h, integer_t const* ldh, fcomplex_t* t,
- integer_t const* ldt, fcomplex_t* alpha, fcomplex_t* beta,
- fcomplex_t* q, integer_t const* ldq, fcomplex_t* z,
- integer_t const* ldz, fcomplex_t* work, integer_t const* lwork,
+ const integer_t* ldq, double* z, const integer_t* ldz, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CHGEQZ( const char* job, const char* compq, const char* compz,
+ const integer_t* n, const integer_t* ilo, const integer_t* ihi,
+ fcomplex_t* h, const integer_t* ldh, fcomplex_t* t,
+ const integer_t* ldt, fcomplex_t* alpha, fcomplex_t* beta,
+ fcomplex_t* q, const integer_t* ldq, fcomplex_t* z,
+ const integer_t* ldz, fcomplex_t* work, const integer_t* lwork,
         float* rwork, integer_t* info );
-void LAPACK_ZHGEQZ( char const* job, char const* compq, char const* compz,
- integer_t const* n, integer_t const* ilo, integer_t const* ihi,
- dcomplex_t* h, integer_t const* ldh, dcomplex_t* t,
- integer_t const* ldt, dcomplex_t* alpha, dcomplex_t* beta,
- dcomplex_t* q, integer_t const* ldq, dcomplex_t* z,
- integer_t const* ldz, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_ZHGEQZ( const char* job, const char* compq, const char* compz,
+ const integer_t* n, const integer_t* ilo, const integer_t* ihi,
+ dcomplex_t* h, const integer_t* ldh, dcomplex_t* t,
+ const integer_t* ldt, dcomplex_t* alpha, dcomplex_t* beta,
+ dcomplex_t* q, const integer_t* ldq, dcomplex_t* z,
+ const integer_t* ldz, dcomplex_t* work, const integer_t* lwork,
         double* rwork, integer_t* info );
 
 // Value-type variants of tgevc
-void LAPACK_STGEVC( char const* side, char const* howmny,
- logical_t const* select, integer_t const* n, float const* s,
- integer_t const* lds, float const* p, integer_t const* ldp, float* vl,
- integer_t const* ldvl, float* vr, integer_t const* ldvr,
- integer_t const* mm, integer_t* m, float* work, integer_t* info );
-void LAPACK_DTGEVC( char const* side, char const* howmny,
- logical_t const* select, integer_t const* n, double const* s,
- integer_t const* lds, double const* p, integer_t const* ldp,
- double* vl, integer_t const* ldvl, double* vr, integer_t const* ldvr,
- integer_t const* mm, integer_t* m, double* work, integer_t* info );
-void LAPACK_CTGEVC( char const* side, char const* howmny,
- logical_t const* select, integer_t const* n, fcomplex_t const* s,
- integer_t const* lds, fcomplex_t const* p, integer_t const* ldp,
- fcomplex_t* vl, integer_t const* ldvl, fcomplex_t* vr,
- integer_t const* ldvr, integer_t const* mm, integer_t* m,
+void LAPACK_STGEVC( const char* side, const char* howmny,
+ const logical_t* select, const integer_t* n, const float* s,
+ const integer_t* lds, const float* p, const integer_t* ldp, float* vl,
+ const integer_t* ldvl, float* vr, const integer_t* ldvr,
+ const integer_t* mm, integer_t* m, float* work, integer_t* info );
+void LAPACK_DTGEVC( const char* side, const char* howmny,
+ const logical_t* select, const integer_t* n, const double* s,
+ const integer_t* lds, const double* p, const integer_t* ldp,
+ double* vl, const integer_t* ldvl, double* vr, const integer_t* ldvr,
+ const integer_t* mm, integer_t* m, double* work, integer_t* info );
+void LAPACK_CTGEVC( const char* side, const char* howmny,
+ const logical_t* select, const integer_t* n, const fcomplex_t* s,
+ const integer_t* lds, const fcomplex_t* p, const integer_t* ldp,
+ fcomplex_t* vl, const integer_t* ldvl, fcomplex_t* vr,
+ const integer_t* ldvr, const integer_t* mm, integer_t* m,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZTGEVC( char const* side, char const* howmny,
- logical_t const* select, integer_t const* n, dcomplex_t const* s,
- integer_t const* lds, dcomplex_t const* p, integer_t const* ldp,
- dcomplex_t* vl, integer_t const* ldvl, dcomplex_t* vr,
- integer_t const* ldvr, integer_t const* mm, integer_t* m,
+void LAPACK_ZTGEVC( const char* side, const char* howmny,
+ const logical_t* select, const integer_t* n, const dcomplex_t* s,
+ const integer_t* lds, const dcomplex_t* p, const integer_t* ldp,
+ dcomplex_t* vl, const integer_t* ldvl, dcomplex_t* vr,
+ const integer_t* ldvr, const integer_t* mm, integer_t* m,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of tgexc
-void LAPACK_STGEXC( logical_t const* wantq, logical_t const* wantz,
- integer_t const* n, float* a, integer_t const* lda, float* b,
- integer_t const* ldb, float* q, integer_t const* ldq, float* z,
- integer_t const* ldz, integer_t* ifst, integer_t* ilst, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DTGEXC( logical_t const* wantq, logical_t const* wantz,
- integer_t const* n, double* a, integer_t const* lda, double* b,
- integer_t const* ldb, double* q, integer_t const* ldq, double* z,
- integer_t const* ldz, integer_t* ifst, integer_t* ilst, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CTGEXC( logical_t const* wantq, logical_t const* wantz,
- integer_t const* n, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb, fcomplex_t* q,
- integer_t const* ldq, fcomplex_t* z, integer_t const* ldz,
- integer_t const* ifst, integer_t* ilst, integer_t* info );
-void LAPACK_ZTGEXC( logical_t const* wantq, logical_t const* wantz,
- integer_t const* n, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb, dcomplex_t* q,
- integer_t const* ldq, dcomplex_t* z, integer_t const* ldz,
- integer_t const* ifst, integer_t* ilst, integer_t* info );
+void LAPACK_STGEXC( const logical_t* wantq, const logical_t* wantz,
+ const integer_t* n, float* a, const integer_t* lda, float* b,
+ const integer_t* ldb, float* q, const integer_t* ldq, float* z,
+ const integer_t* ldz, integer_t* ifst, integer_t* ilst, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DTGEXC( const logical_t* wantq, const logical_t* wantz,
+ const integer_t* n, double* a, const integer_t* lda, double* b,
+ const integer_t* ldb, double* q, const integer_t* ldq, double* z,
+ const integer_t* ldz, integer_t* ifst, integer_t* ilst, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CTGEXC( const logical_t* wantq, const logical_t* wantz,
+ const integer_t* n, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb, fcomplex_t* q,
+ const integer_t* ldq, fcomplex_t* z, const integer_t* ldz,
+ const integer_t* ifst, integer_t* ilst, integer_t* info );
+void LAPACK_ZTGEXC( const logical_t* wantq, const logical_t* wantz,
+ const integer_t* n, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb, dcomplex_t* q,
+ const integer_t* ldq, dcomplex_t* z, const integer_t* ldz,
+ const integer_t* ifst, integer_t* ilst, integer_t* info );
 
 // Value-type variants of tgsen
-void LAPACK_STGSEN( integer_t const* ijob, logical_t const* wantq,
- logical_t const* wantz, logical_t const* select, integer_t const* n,
- float* a, integer_t const* lda, float* b, integer_t const* ldb,
+void LAPACK_STGSEN( const integer_t* ijob, const logical_t* wantq,
+ const logical_t* wantz, const logical_t* select, const integer_t* n,
+ float* a, const integer_t* lda, float* b, const integer_t* ldb,
         float* alphar, float* alphai, float* beta, float* q,
- integer_t const* ldq, float* z, integer_t const* ldz, integer_t* m,
- float* pl, float* pr, float* dif, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_DTGSEN( integer_t const* ijob, logical_t const* wantq,
- logical_t const* wantz, logical_t const* select, integer_t const* n,
- double* a, integer_t const* lda, double* b, integer_t const* ldb,
+ const integer_t* ldq, float* z, const integer_t* ldz, integer_t* m,
+ float* pl, float* pr, float* dif, float* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_DTGSEN( const integer_t* ijob, const logical_t* wantq,
+ const logical_t* wantz, const logical_t* select, const integer_t* n,
+ double* a, const integer_t* lda, double* b, const integer_t* ldb,
         double* alphar, double* alphai, double* beta, double* q,
- integer_t const* ldq, double* z, integer_t const* ldz, integer_t* m,
+ const integer_t* ldq, double* z, const integer_t* ldz, integer_t* m,
         double* pl, double* pr, double* dif, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
-void LAPACK_CTGSEN( integer_t const* ijob, logical_t const* wantq,
- logical_t const* wantz, logical_t const* select, integer_t const* n,
- fcomplex_t* a, integer_t const* lda, fcomplex_t* b,
- integer_t const* ldb, fcomplex_t* alpha, fcomplex_t* beta,
- fcomplex_t* q, integer_t const* ldq, fcomplex_t* z,
- integer_t const* ldz, integer_t* m, float* pl, float* pr, float* dif,
- fcomplex_t* work, integer_t const* lwork, integer_t* iwork,
- integer_t const* liwork, integer_t* info );
-void LAPACK_ZTGSEN( integer_t const* ijob, logical_t const* wantq,
- logical_t const* wantz, logical_t const* select, integer_t const* n,
- dcomplex_t* a, integer_t const* lda, dcomplex_t* b,
- integer_t const* ldb, dcomplex_t* alpha, dcomplex_t* beta,
- dcomplex_t* q, integer_t const* ldq, dcomplex_t* z,
- integer_t const* ldz, integer_t* m, double* pl, double* pr,
- double* dif, dcomplex_t* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
+void LAPACK_CTGSEN( const integer_t* ijob, const logical_t* wantq,
+ const logical_t* wantz, const logical_t* select, const integer_t* n,
+ fcomplex_t* a, const integer_t* lda, fcomplex_t* b,
+ const integer_t* ldb, fcomplex_t* alpha, fcomplex_t* beta,
+ fcomplex_t* q, const integer_t* ldq, fcomplex_t* z,
+ const integer_t* ldz, integer_t* m, float* pl, float* pr, float* dif,
+ fcomplex_t* work, const integer_t* lwork, integer_t* iwork,
+ const integer_t* liwork, integer_t* info );
+void LAPACK_ZTGSEN( const integer_t* ijob, const logical_t* wantq,
+ const logical_t* wantz, const logical_t* select, const integer_t* n,
+ dcomplex_t* a, const integer_t* lda, dcomplex_t* b,
+ const integer_t* ldb, dcomplex_t* alpha, dcomplex_t* beta,
+ dcomplex_t* q, const integer_t* ldq, dcomplex_t* z,
+ const integer_t* ldz, integer_t* m, double* pl, double* pr,
+ double* dif, dcomplex_t* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
 
 // Value-type variants of tgsna
-void LAPACK_STGSNA( char const* job, char const* howmny,
- logical_t const* select, integer_t const* n, float const* a,
- integer_t const* lda, float const* b, integer_t const* ldb,
- float const* vl, integer_t const* ldvl, float const* vr,
- integer_t const* ldvr, float* s, float* dif, integer_t const* mm,
- integer_t* m, float* work, integer_t const* lwork, integer_t* iwork,
- integer_t* info );
-void LAPACK_DTGSNA( char const* job, char const* howmny,
- logical_t const* select, integer_t const* n, double const* a,
- integer_t const* lda, double const* b, integer_t const* ldb,
- double const* vl, integer_t const* ldvl, double const* vr,
- integer_t const* ldvr, double* s, double* dif, integer_t const* mm,
- integer_t* m, double* work, integer_t const* lwork, integer_t* iwork,
- integer_t* info );
-void LAPACK_CTGSNA( char const* job, char const* howmny,
- logical_t const* select, integer_t const* n, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* b, integer_t const* ldb,
- fcomplex_t const* vl, integer_t const* ldvl, fcomplex_t const* vr,
- integer_t const* ldvr, float* s, float* dif, integer_t const* mm,
- integer_t* m, fcomplex_t* work, integer_t const* lwork,
- integer_t* iwork, integer_t* info );
-void LAPACK_ZTGSNA( char const* job, char const* howmny,
- logical_t const* select, integer_t const* n, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* b, integer_t const* ldb,
- dcomplex_t const* vl, integer_t const* ldvl, dcomplex_t const* vr,
- integer_t const* ldvr, double* s, double* dif, integer_t const* mm,
- integer_t* m, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_STGSNA( const char* job, const char* howmny,
+ const logical_t* select, const integer_t* n, const float* a,
+ const integer_t* lda, const float* b, const integer_t* ldb,
+ const float* vl, const integer_t* ldvl, const float* vr,
+ const integer_t* ldvr, float* s, float* dif, const integer_t* mm,
+ integer_t* m, float* work, const integer_t* lwork, integer_t* iwork,
+ integer_t* info );
+void LAPACK_DTGSNA( const char* job, const char* howmny,
+ const logical_t* select, const integer_t* n, const double* a,
+ const integer_t* lda, const double* b, const integer_t* ldb,
+ const double* vl, const integer_t* ldvl, const double* vr,
+ const integer_t* ldvr, double* s, double* dif, const integer_t* mm,
+ integer_t* m, double* work, const integer_t* lwork, integer_t* iwork,
+ integer_t* info );
+void LAPACK_CTGSNA( const char* job, const char* howmny,
+ const logical_t* select, const integer_t* n, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* b, const integer_t* ldb,
+ const fcomplex_t* vl, const integer_t* ldvl, const fcomplex_t* vr,
+ const integer_t* ldvr, float* s, float* dif, const integer_t* mm,
+ integer_t* m, fcomplex_t* work, const integer_t* lwork,
+ integer_t* iwork, integer_t* info );
+void LAPACK_ZTGSNA( const char* job, const char* howmny,
+ const logical_t* select, const integer_t* n, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* b, const integer_t* ldb,
+ const dcomplex_t* vl, const integer_t* ldvl, const dcomplex_t* vr,
+ const integer_t* ldvr, double* s, double* dif, const integer_t* mm,
+ integer_t* m, dcomplex_t* work, const integer_t* lwork,
         integer_t* iwork, integer_t* info );
 
 // Value-type variants of tgsyl
-void LAPACK_STGSYL( char const* trans, integer_t const* ijob,
- integer_t const* m, integer_t const* n, float const* a,
- integer_t const* lda, float const* b, integer_t const* ldb, float* c,
- integer_t const* ldc, float const* d, integer_t const* ldd,
- float const* e, integer_t const* lde, float* f, integer_t const* ldf,
- float* scale, float* dif, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t* info );
-void LAPACK_DTGSYL( char const* trans, integer_t const* ijob,
- integer_t const* m, integer_t const* n, double const* a,
- integer_t const* lda, double const* b, integer_t const* ldb,
- double* c, integer_t const* ldc, double const* d,
- integer_t const* ldd, double const* e, integer_t const* lde,
- double* f, integer_t const* ldf, double* scale, double* dif,
- double* work, integer_t const* lwork, integer_t* iwork,
- integer_t* info );
-void LAPACK_CTGSYL( char const* trans, integer_t const* ijob,
- integer_t const* m, integer_t const* n, fcomplex_t const* a,
- integer_t const* lda, fcomplex_t const* b, integer_t const* ldb,
- fcomplex_t* c, integer_t const* ldc, fcomplex_t const* d,
- integer_t const* ldd, fcomplex_t const* e, integer_t const* lde,
- fcomplex_t* f, integer_t const* ldf, float* scale, float* dif,
- fcomplex_t* work, integer_t const* lwork, integer_t* iwork,
- integer_t* info );
-void LAPACK_ZTGSYL( char const* trans, integer_t const* ijob,
- integer_t const* m, integer_t const* n, dcomplex_t const* a,
- integer_t const* lda, dcomplex_t const* b, integer_t const* ldb,
- dcomplex_t* c, integer_t const* ldc, dcomplex_t const* d,
- integer_t const* ldd, dcomplex_t const* e, integer_t const* lde,
- dcomplex_t* f, integer_t const* ldf, double* scale, double* dif,
- dcomplex_t* work, integer_t const* lwork, integer_t* iwork,
+void LAPACK_STGSYL( const char* trans, const integer_t* ijob,
+ const integer_t* m, const integer_t* n, const float* a,
+ const integer_t* lda, const float* b, const integer_t* ldb, float* c,
+ const integer_t* ldc, const float* d, const integer_t* ldd,
+ const float* e, const integer_t* lde, float* f, const integer_t* ldf,
+ float* scale, float* dif, float* work, const integer_t* lwork,
+ integer_t* iwork, integer_t* info );
+void LAPACK_DTGSYL( const char* trans, const integer_t* ijob,
+ const integer_t* m, const integer_t* n, const double* a,
+ const integer_t* lda, const double* b, const integer_t* ldb,
+ double* c, const integer_t* ldc, const double* d,
+ const integer_t* ldd, const double* e, const integer_t* lde,
+ double* f, const integer_t* ldf, double* scale, double* dif,
+ double* work, const integer_t* lwork, integer_t* iwork,
+ integer_t* info );
+void LAPACK_CTGSYL( const char* trans, const integer_t* ijob,
+ const integer_t* m, const integer_t* n, const fcomplex_t* a,
+ const integer_t* lda, const fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* c, const integer_t* ldc, const fcomplex_t* d,
+ const integer_t* ldd, const fcomplex_t* e, const integer_t* lde,
+ fcomplex_t* f, const integer_t* ldf, float* scale, float* dif,
+ fcomplex_t* work, const integer_t* lwork, integer_t* iwork,
+ integer_t* info );
+void LAPACK_ZTGSYL( const char* trans, const integer_t* ijob,
+ const integer_t* m, const integer_t* n, const dcomplex_t* a,
+ const integer_t* lda, const dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* c, const integer_t* ldc, const dcomplex_t* d,
+ const integer_t* ldd, const dcomplex_t* e, const integer_t* lde,
+ dcomplex_t* f, const integer_t* ldf, double* scale, double* dif,
+ dcomplex_t* work, const integer_t* lwork, integer_t* iwork,
         integer_t* info );
 
 // Value-type variants of ggsvp
-void LAPACK_SGGSVP( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* p, integer_t const* n, float* a,
- integer_t const* lda, float* b, integer_t const* ldb,
- float const* tola, float const* tolb, integer_t* k, integer_t* l,
- float* u, integer_t const* ldu, float* v, integer_t const* ldv,
- float* q, integer_t const* ldq, integer_t* iwork, float* tau,
+void LAPACK_SGGSVP( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* p, const integer_t* n, float* a,
+ const integer_t* lda, float* b, const integer_t* ldb,
+ const float* tola, const float* tolb, integer_t* k, integer_t* l,
+ float* u, const integer_t* ldu, float* v, const integer_t* ldv,
+ float* q, const integer_t* ldq, integer_t* iwork, float* tau,
         float* work, integer_t* info );
-void LAPACK_DGGSVP( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* p, integer_t const* n, double* a,
- integer_t const* lda, double* b, integer_t const* ldb,
- double const* tola, double const* tolb, integer_t* k, integer_t* l,
- double* u, integer_t const* ldu, double* v, integer_t const* ldv,
- double* q, integer_t const* ldq, integer_t* iwork, double* tau,
+void LAPACK_DGGSVP( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* p, const integer_t* n, double* a,
+ const integer_t* lda, double* b, const integer_t* ldb,
+ const double* tola, const double* tolb, integer_t* k, integer_t* l,
+ double* u, const integer_t* ldu, double* v, const integer_t* ldv,
+ double* q, const integer_t* ldq, integer_t* iwork, double* tau,
         double* work, integer_t* info );
-void LAPACK_CGGSVP( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* p, integer_t const* n,
- fcomplex_t* a, integer_t const* lda, fcomplex_t* b,
- integer_t const* ldb, float const* tola, float const* tolb,
- integer_t* k, integer_t* l, fcomplex_t* u, integer_t const* ldu,
- fcomplex_t* v, integer_t const* ldv, fcomplex_t* q,
- integer_t const* ldq, integer_t* iwork, float* rwork, fcomplex_t* tau,
+void LAPACK_CGGSVP( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* p, const integer_t* n,
+ fcomplex_t* a, const integer_t* lda, fcomplex_t* b,
+ const integer_t* ldb, const float* tola, const float* tolb,
+ integer_t* k, integer_t* l, fcomplex_t* u, const integer_t* ldu,
+ fcomplex_t* v, const integer_t* ldv, fcomplex_t* q,
+ const integer_t* ldq, integer_t* iwork, float* rwork, fcomplex_t* tau,
         fcomplex_t* work, integer_t* info );
-void LAPACK_ZGGSVP( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* p, integer_t const* n,
- dcomplex_t* a, integer_t const* lda, dcomplex_t* b,
- integer_t const* ldb, double const* tola, double const* tolb,
- integer_t* k, integer_t* l, dcomplex_t* u, integer_t const* ldu,
- dcomplex_t* v, integer_t const* ldv, dcomplex_t* q,
- integer_t const* ldq, integer_t* iwork, double* rwork,
+void LAPACK_ZGGSVP( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* p, const integer_t* n,
+ dcomplex_t* a, const integer_t* lda, dcomplex_t* b,
+ const integer_t* ldb, const double* tola, const double* tolb,
+ integer_t* k, integer_t* l, dcomplex_t* u, const integer_t* ldu,
+ dcomplex_t* v, const integer_t* ldv, dcomplex_t* q,
+ const integer_t* ldq, integer_t* iwork, double* rwork,
         dcomplex_t* tau, dcomplex_t* work, integer_t* info );
 
 // Value-type variants of tgsja
-void LAPACK_STGSJA( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* p, integer_t const* n,
- integer_t const* k, integer_t const* l, float* a,
- integer_t const* lda, float* b, integer_t const* ldb,
- float const* tola, float const* tolb, float* alpha, float* beta,
- float* u, integer_t const* ldu, float* v, integer_t const* ldv,
- float* q, integer_t const* ldq, float* work, integer_t* ncycle,
- integer_t* info );
-void LAPACK_DTGSJA( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* p, integer_t const* n,
- integer_t const* k, integer_t const* l, double* a,
- integer_t const* lda, double* b, integer_t const* ldb,
- double const* tola, double const* tolb, double* alpha, double* beta,
- double* u, integer_t const* ldu, double* v, integer_t const* ldv,
- double* q, integer_t const* ldq, double* work, integer_t* ncycle,
- integer_t* info );
-void LAPACK_CTGSJA( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* p, integer_t const* n,
- integer_t const* k, integer_t const* l, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* b, integer_t const* ldb,
- float const* tola, float const* tolb, float* alpha, float* beta,
- fcomplex_t* u, integer_t const* ldu, fcomplex_t* v,
- integer_t const* ldv, fcomplex_t* q, integer_t const* ldq,
+void LAPACK_STGSJA( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* p, const integer_t* n,
+ const integer_t* k, const integer_t* l, float* a,
+ const integer_t* lda, float* b, const integer_t* ldb,
+ const float* tola, const float* tolb, float* alpha, float* beta,
+ float* u, const integer_t* ldu, float* v, const integer_t* ldv,
+ float* q, const integer_t* ldq, float* work, integer_t* ncycle,
+ integer_t* info );
+void LAPACK_DTGSJA( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* p, const integer_t* n,
+ const integer_t* k, const integer_t* l, double* a,
+ const integer_t* lda, double* b, const integer_t* ldb,
+ const double* tola, const double* tolb, double* alpha, double* beta,
+ double* u, const integer_t* ldu, double* v, const integer_t* ldv,
+ double* q, const integer_t* ldq, double* work, integer_t* ncycle,
+ integer_t* info );
+void LAPACK_CTGSJA( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* p, const integer_t* n,
+ const integer_t* k, const integer_t* l, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* b, const integer_t* ldb,
+ const float* tola, const float* tolb, float* alpha, float* beta,
+ fcomplex_t* u, const integer_t* ldu, fcomplex_t* v,
+ const integer_t* ldv, fcomplex_t* q, const integer_t* ldq,
         fcomplex_t* work, integer_t* ncycle, integer_t* info );
-void LAPACK_ZTGSJA( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* p, integer_t const* n,
- integer_t const* k, integer_t const* l, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* b, integer_t const* ldb,
- double const* tola, double const* tolb, double* alpha, double* beta,
- dcomplex_t* u, integer_t const* ldu, dcomplex_t* v,
- integer_t const* ldv, dcomplex_t* q, integer_t const* ldq,
+void LAPACK_ZTGSJA( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* p, const integer_t* n,
+ const integer_t* k, const integer_t* l, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* b, const integer_t* ldb,
+ const double* tola, const double* tolb, double* alpha, double* beta,
+ dcomplex_t* u, const integer_t* ldu, dcomplex_t* v,
+ const integer_t* ldv, dcomplex_t* q, const integer_t* ldq,
         dcomplex_t* work, integer_t* ncycle, integer_t* info );
 
 //
@@ -2241,1416 +2241,1416 @@
 //
 
 // Value-type variants of gegv
-void LAPACK_SGEGV( char const* jobvl, char const* jobvr, integer_t const* n,
- float* a, integer_t const* lda, float* b, integer_t const* ldb,
+void LAPACK_SGEGV( const char* jobvl, const char* jobvr, const integer_t* n,
+ float* a, const integer_t* lda, float* b, const integer_t* ldb,
         float* alphar, float* alphai, float* beta, float* vl,
- integer_t const* ldvl, float* vr, integer_t const* ldvr, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DGEGV( char const* jobvl, char const* jobvr, integer_t const* n,
- double* a, integer_t const* lda, double* b, integer_t const* ldb,
+ const integer_t* ldvl, float* vr, const integer_t* ldvr, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DGEGV( const char* jobvl, const char* jobvr, const integer_t* n,
+ double* a, const integer_t* lda, double* b, const integer_t* ldb,
         double* alphar, double* alphai, double* beta, double* vl,
- integer_t const* ldvl, double* vr, integer_t const* ldvr,
- double* work, integer_t const* lwork, integer_t* info );
-void LAPACK_CGEGV( char const* jobvl, char const* jobvr, integer_t const* n,
- fcomplex_t* a, integer_t const* lda, fcomplex_t* b,
- integer_t const* ldb, fcomplex_t* alpha, fcomplex_t* beta,
- fcomplex_t* vl, integer_t const* ldvl, fcomplex_t* vr,
- integer_t const* ldvr, fcomplex_t* work, integer_t const* lwork,
+ const integer_t* ldvl, double* vr, const integer_t* ldvr,
+ double* work, const integer_t* lwork, integer_t* info );
+void LAPACK_CGEGV( const char* jobvl, const char* jobvr, const integer_t* n,
+ fcomplex_t* a, const integer_t* lda, fcomplex_t* b,
+ const integer_t* ldb, fcomplex_t* alpha, fcomplex_t* beta,
+ fcomplex_t* vl, const integer_t* ldvl, fcomplex_t* vr,
+ const integer_t* ldvr, fcomplex_t* work, const integer_t* lwork,
         float* rwork, integer_t* info );
-void LAPACK_ZGEGV( char const* jobvl, char const* jobvr, integer_t const* n,
- dcomplex_t* a, integer_t const* lda, dcomplex_t* b,
- integer_t const* ldb, dcomplex_t* alpha, dcomplex_t* beta,
- dcomplex_t* vl, integer_t const* ldvl, dcomplex_t* vr,
- integer_t const* ldvr, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_ZGEGV( const char* jobvl, const char* jobvr, const integer_t* n,
+ dcomplex_t* a, const integer_t* lda, dcomplex_t* b,
+ const integer_t* ldb, dcomplex_t* alpha, dcomplex_t* beta,
+ dcomplex_t* vl, const integer_t* ldvl, dcomplex_t* vr,
+ const integer_t* ldvr, dcomplex_t* work, const integer_t* lwork,
         double* rwork, integer_t* info );
 
 // Value-type variants of gges
-void LAPACK_SGGES( char const* jobvsl, char const* jobvsr, char const* sort,
- logical_t* selctg, integer_t const* n, float* a, integer_t const* lda,
- float* b, integer_t const* ldb, integer_t* sdim, float* alphar,
- float* alphai, float* beta, float* vsl, integer_t const* ldvsl,
- float* vsr, integer_t const* ldvsr, float* work,
- integer_t const* lwork, logical_t* bwork, integer_t* info );
-void LAPACK_DGGES( char const* jobvsl, char const* jobvsr, char const* sort,
- logical_t* selctg, integer_t const* n, double* a,
- integer_t const* lda, double* b, integer_t const* ldb,
+void LAPACK_SGGES( const char* jobvsl, const char* jobvsr, const char* sort,
+ logical_t* selctg, const integer_t* n, float* a, const integer_t* lda,
+ float* b, const integer_t* ldb, integer_t* sdim, float* alphar,
+ float* alphai, float* beta, float* vsl, const integer_t* ldvsl,
+ float* vsr, const integer_t* ldvsr, float* work,
+ const integer_t* lwork, logical_t* bwork, integer_t* info );
+void LAPACK_DGGES( const char* jobvsl, const char* jobvsr, const char* sort,
+ logical_t* selctg, const integer_t* n, double* a,
+ const integer_t* lda, double* b, const integer_t* ldb,
         integer_t* sdim, double* alphar, double* alphai, double* beta,
- double* vsl, integer_t const* ldvsl, double* vsr,
- integer_t const* ldvsr, double* work, integer_t const* lwork,
+ double* vsl, const integer_t* ldvsl, double* vsr,
+ const integer_t* ldvsr, double* work, const integer_t* lwork,
         logical_t* bwork, integer_t* info );
-void LAPACK_CGGES( char const* jobvsl, char const* jobvsr, char const* sort,
- logical_t* selctg, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* b, integer_t const* ldb,
+void LAPACK_CGGES( const char* jobvsl, const char* jobvsr, const char* sort,
+ logical_t* selctg, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* b, const integer_t* ldb,
         integer_t* sdim, fcomplex_t* alpha, fcomplex_t* beta, fcomplex_t* vsl,
- integer_t const* ldvsl, fcomplex_t* vsr, integer_t const* ldvsr,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
+ const integer_t* ldvsl, fcomplex_t* vsr, const integer_t* ldvsr,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
         logical_t* bwork, integer_t* info );
-void LAPACK_ZGGES( char const* jobvsl, char const* jobvsr, char const* sort,
- logical_t* selctg, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* b, integer_t const* ldb,
+void LAPACK_ZGGES( const char* jobvsl, const char* jobvsr, const char* sort,
+ logical_t* selctg, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* b, const integer_t* ldb,
         integer_t* sdim, dcomplex_t* alpha, dcomplex_t* beta, dcomplex_t* vsl,
- integer_t const* ldvsl, dcomplex_t* vsr, integer_t const* ldvsr,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
+ const integer_t* ldvsl, dcomplex_t* vsr, const integer_t* ldvsr,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
         logical_t* bwork, integer_t* info );
 
 // Value-type variants of ggesx
-void LAPACK_SGGESX( char const* jobvsl, char const* jobvsr, char const* sort,
- logical_t* selctg, char const* sense, integer_t const* n, float* a,
- integer_t const* lda, float* b, integer_t const* ldb, integer_t* sdim,
+void LAPACK_SGGESX( const char* jobvsl, const char* jobvsr, const char* sort,
+ logical_t* selctg, const char* sense, const integer_t* n, float* a,
+ const integer_t* lda, float* b, const integer_t* ldb, integer_t* sdim,
         float* alphar, float* alphai, float* beta, float* vsl,
- integer_t const* ldvsl, float* vsr, integer_t const* ldvsr,
- float* rconde, float* rcondv, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, logical_t* bwork,
- integer_t* info );
-void LAPACK_DGGESX( char const* jobvsl, char const* jobvsr, char const* sort,
- logical_t* selctg, char const* sense, integer_t const* n, double* a,
- integer_t const* lda, double* b, integer_t const* ldb,
+ const integer_t* ldvsl, float* vsr, const integer_t* ldvsr,
+ float* rconde, float* rcondv, float* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, logical_t* bwork,
+ integer_t* info );
+void LAPACK_DGGESX( const char* jobvsl, const char* jobvsr, const char* sort,
+ logical_t* selctg, const char* sense, const integer_t* n, double* a,
+ const integer_t* lda, double* b, const integer_t* ldb,
         integer_t* sdim, double* alphar, double* alphai, double* beta,
- double* vsl, integer_t const* ldvsl, double* vsr,
- integer_t const* ldvsr, double* rconde, double* rcondv, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+ double* vsl, const integer_t* ldvsl, double* vsr,
+ const integer_t* ldvsr, double* rconde, double* rcondv, double* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         logical_t* bwork, integer_t* info );
-void LAPACK_CGGESX( char const* jobvsl, char const* jobvsr, char const* sort,
- logical_t* selctg, char const* sense, integer_t const* n,
- fcomplex_t* a, integer_t const* lda, fcomplex_t* b,
- integer_t const* ldb, integer_t* sdim, fcomplex_t* alpha,
- fcomplex_t* beta, fcomplex_t* vsl, integer_t const* ldvsl,
- fcomplex_t* vsr, integer_t const* ldvsr, float* rconde, float* rcondv,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
- integer_t* iwork, integer_t const* liwork, logical_t* bwork,
- integer_t* info );
-void LAPACK_ZGGESX( char const* jobvsl, char const* jobvsr, char const* sort,
- logical_t* selctg, char const* sense, integer_t const* n,
- dcomplex_t* a, integer_t const* lda, dcomplex_t* b,
- integer_t const* ldb, integer_t* sdim, dcomplex_t* alpha,
- dcomplex_t* beta, dcomplex_t* vsl, integer_t const* ldvsl,
- dcomplex_t* vsr, integer_t const* ldvsr, double* rconde,
- double* rcondv, dcomplex_t* work, integer_t const* lwork,
- double* rwork, integer_t* iwork, integer_t const* liwork,
+void LAPACK_CGGESX( const char* jobvsl, const char* jobvsr, const char* sort,
+ logical_t* selctg, const char* sense, const integer_t* n,
+ fcomplex_t* a, const integer_t* lda, fcomplex_t* b,
+ const integer_t* ldb, integer_t* sdim, fcomplex_t* alpha,
+ fcomplex_t* beta, fcomplex_t* vsl, const integer_t* ldvsl,
+ fcomplex_t* vsr, const integer_t* ldvsr, float* rconde, float* rcondv,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
+ integer_t* iwork, const integer_t* liwork, logical_t* bwork,
+ integer_t* info );
+void LAPACK_ZGGESX( const char* jobvsl, const char* jobvsr, const char* sort,
+ logical_t* selctg, const char* sense, const integer_t* n,
+ dcomplex_t* a, const integer_t* lda, dcomplex_t* b,
+ const integer_t* ldb, integer_t* sdim, dcomplex_t* alpha,
+ dcomplex_t* beta, dcomplex_t* vsl, const integer_t* ldvsl,
+ dcomplex_t* vsr, const integer_t* ldvsr, double* rconde,
+ double* rcondv, dcomplex_t* work, const integer_t* lwork,
+ double* rwork, integer_t* iwork, const integer_t* liwork,
         logical_t* bwork, integer_t* info );
 
 // Value-type variants of ggev
-void LAPACK_SGGEV( char const* jobvl, char const* jobvr, integer_t const* n,
- float* a, integer_t const* lda, float* b, integer_t const* ldb,
+void LAPACK_SGGEV( const char* jobvl, const char* jobvr, const integer_t* n,
+ float* a, const integer_t* lda, float* b, const integer_t* ldb,
         float* alphar, float* alphai, float* beta, float* vl,
- integer_t const* ldvl, float* vr, integer_t const* ldvr, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DGGEV( char const* jobvl, char const* jobvr, integer_t const* n,
- double* a, integer_t const* lda, double* b, integer_t const* ldb,
+ const integer_t* ldvl, float* vr, const integer_t* ldvr, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DGGEV( const char* jobvl, const char* jobvr, const integer_t* n,
+ double* a, const integer_t* lda, double* b, const integer_t* ldb,
         double* alphar, double* alphai, double* beta, double* vl,
- integer_t const* ldvl, double* vr, integer_t const* ldvr,
- double* work, integer_t const* lwork, integer_t* info );
-void LAPACK_CGGEV( char const* jobvl, char const* jobvr, integer_t const* n,
- fcomplex_t* a, integer_t const* lda, fcomplex_t* b,
- integer_t const* ldb, fcomplex_t* alpha, fcomplex_t* beta,
- fcomplex_t* vl, integer_t const* ldvl, fcomplex_t* vr,
- integer_t const* ldvr, fcomplex_t* work, integer_t const* lwork,
+ const integer_t* ldvl, double* vr, const integer_t* ldvr,
+ double* work, const integer_t* lwork, integer_t* info );
+void LAPACK_CGGEV( const char* jobvl, const char* jobvr, const integer_t* n,
+ fcomplex_t* a, const integer_t* lda, fcomplex_t* b,
+ const integer_t* ldb, fcomplex_t* alpha, fcomplex_t* beta,
+ fcomplex_t* vl, const integer_t* ldvl, fcomplex_t* vr,
+ const integer_t* ldvr, fcomplex_t* work, const integer_t* lwork,
         float* rwork, integer_t* info );
-void LAPACK_ZGGEV( char const* jobvl, char const* jobvr, integer_t const* n,
- dcomplex_t* a, integer_t const* lda, dcomplex_t* b,
- integer_t const* ldb, dcomplex_t* alpha, dcomplex_t* beta,
- dcomplex_t* vl, integer_t const* ldvl, dcomplex_t* vr,
- integer_t const* ldvr, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_ZGGEV( const char* jobvl, const char* jobvr, const integer_t* n,
+ dcomplex_t* a, const integer_t* lda, dcomplex_t* b,
+ const integer_t* ldb, dcomplex_t* alpha, dcomplex_t* beta,
+ dcomplex_t* vl, const integer_t* ldvl, dcomplex_t* vr,
+ const integer_t* ldvr, dcomplex_t* work, const integer_t* lwork,
         double* rwork, integer_t* info );
 
 // Value-type variants of ggevx
-void LAPACK_SGGEVX( char const* balanc, char const* jobvl, char const* jobvr,
- char const* sense, integer_t const* n, float* a, integer_t const* lda,
- float* b, integer_t const* ldb, float* alphar, float* alphai,
- float* beta, float* vl, integer_t const* ldvl, float* vr,
- integer_t const* ldvr, integer_t* ilo, integer_t* ihi, float* lscale,
+void LAPACK_SGGEVX( const char* balanc, const char* jobvl, const char* jobvr,
+ const char* sense, const integer_t* n, float* a, const integer_t* lda,
+ float* b, const integer_t* ldb, float* alphar, float* alphai,
+ float* beta, float* vl, const integer_t* ldvl, float* vr,
+ const integer_t* ldvr, integer_t* ilo, integer_t* ihi, float* lscale,
         float* rscale, float* abnrm, float* bbnrm, float* rconde,
- float* rcondv, float* work, integer_t const* lwork, integer_t* iwork,
+ float* rcondv, float* work, const integer_t* lwork, integer_t* iwork,
         logical_t* bwork, integer_t* info );
-void LAPACK_DGGEVX( char const* balanc, char const* jobvl, char const* jobvr,
- char const* sense, integer_t const* n, double* a,
- integer_t const* lda, double* b, integer_t const* ldb, double* alphar,
- double* alphai, double* beta, double* vl, integer_t const* ldvl,
- double* vr, integer_t const* ldvr, integer_t* ilo, integer_t* ihi,
+void LAPACK_DGGEVX( const char* balanc, const char* jobvl, const char* jobvr,
+ const char* sense, const integer_t* n, double* a,
+ const integer_t* lda, double* b, const integer_t* ldb, double* alphar,
+ double* alphai, double* beta, double* vl, const integer_t* ldvl,
+ double* vr, const integer_t* ldvr, integer_t* ilo, integer_t* ihi,
         double* lscale, double* rscale, double* abnrm, double* bbnrm,
- double* rconde, double* rcondv, double* work, integer_t const* lwork,
+ double* rconde, double* rcondv, double* work, const integer_t* lwork,
         integer_t* iwork, logical_t* bwork, integer_t* info );
-void LAPACK_CGGEVX( char const* balanc, char const* jobvl, char const* jobvr,
- char const* sense, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* b, integer_t const* ldb,
+void LAPACK_CGGEVX( const char* balanc, const char* jobvl, const char* jobvr,
+ const char* sense, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* b, const integer_t* ldb,
         fcomplex_t* alpha, fcomplex_t* beta, fcomplex_t* vl,
- integer_t const* ldvl, fcomplex_t* vr, integer_t const* ldvr,
+ const integer_t* ldvl, fcomplex_t* vr, const integer_t* ldvr,
         integer_t* ilo, integer_t* ihi, float* lscale, float* rscale,
         float* abnrm, float* bbnrm, float* rconde, float* rcondv,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
         integer_t* iwork, logical_t* bwork, integer_t* info );
-void LAPACK_ZGGEVX( char const* balanc, char const* jobvl, char const* jobvr,
- char const* sense, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* b, integer_t const* ldb,
+void LAPACK_ZGGEVX( const char* balanc, const char* jobvl, const char* jobvr,
+ const char* sense, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* b, const integer_t* ldb,
         dcomplex_t* alpha, dcomplex_t* beta, dcomplex_t* vl,
- integer_t const* ldvl, dcomplex_t* vr, integer_t const* ldvr,
+ const integer_t* ldvl, dcomplex_t* vr, const integer_t* ldvr,
         integer_t* ilo, integer_t* ihi, double* lscale, double* rscale,
         double* abnrm, double* bbnrm, double* rconde, double* rcondv,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
         integer_t* iwork, logical_t* bwork, integer_t* info );
 
 // Value-type variants of ggsvd
-void LAPACK_SGGSVD( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* n, integer_t const* p,
- integer_t* k, integer_t* l, float* a, integer_t const* lda, float* b,
- integer_t const* ldb, float* alpha, float* beta, float* u,
- integer_t const* ldu, float* v, integer_t const* ldv, float* q,
- integer_t const* ldq, float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DGGSVD( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* n, integer_t const* p,
- integer_t* k, integer_t* l, double* a, integer_t const* lda,
- double* b, integer_t const* ldb, double* alpha, double* beta,
- double* u, integer_t const* ldu, double* v, integer_t const* ldv,
- double* q, integer_t const* ldq, double* work, integer_t* iwork,
- integer_t* info );
-void LAPACK_CGGSVD( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* n, integer_t const* p,
- integer_t* k, integer_t* l, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb, float* alpha, float* beta,
- fcomplex_t* u, integer_t const* ldu, fcomplex_t* v,
- integer_t const* ldv, fcomplex_t* q, integer_t const* ldq,
+void LAPACK_SGGSVD( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* n, const integer_t* p,
+ integer_t* k, integer_t* l, float* a, const integer_t* lda, float* b,
+ const integer_t* ldb, float* alpha, float* beta, float* u,
+ const integer_t* ldu, float* v, const integer_t* ldv, float* q,
+ const integer_t* ldq, float* work, integer_t* iwork, integer_t* info );
+void LAPACK_DGGSVD( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* n, const integer_t* p,
+ integer_t* k, integer_t* l, double* a, const integer_t* lda,
+ double* b, const integer_t* ldb, double* alpha, double* beta,
+ double* u, const integer_t* ldu, double* v, const integer_t* ldv,
+ double* q, const integer_t* ldq, double* work, integer_t* iwork,
+ integer_t* info );
+void LAPACK_CGGSVD( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* n, const integer_t* p,
+ integer_t* k, integer_t* l, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb, float* alpha, float* beta,
+ fcomplex_t* u, const integer_t* ldu, fcomplex_t* v,
+ const integer_t* ldv, fcomplex_t* q, const integer_t* ldq,
         fcomplex_t* work, float* rwork, integer_t* iwork, integer_t* info );
-void LAPACK_ZGGSVD( char const* jobu, char const* jobv, char const* jobq,
- integer_t const* m, integer_t const* n, integer_t const* p,
- integer_t* k, integer_t* l, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb, double* alpha, double* beta,
- dcomplex_t* u, integer_t const* ldu, dcomplex_t* v,
- integer_t const* ldv, dcomplex_t* q, integer_t const* ldq,
+void LAPACK_ZGGSVD( const char* jobu, const char* jobv, const char* jobq,
+ const integer_t* m, const integer_t* n, const integer_t* p,
+ integer_t* k, integer_t* l, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb, double* alpha, double* beta,
+ dcomplex_t* u, const integer_t* ldu, dcomplex_t* v,
+ const integer_t* ldv, dcomplex_t* q, const integer_t* ldq,
         dcomplex_t* work, double* rwork, integer_t* iwork, integer_t* info );
 
 // Value-type variants of hbgv
-void LAPACK_CHBGV( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, fcomplex_t* ab,
- integer_t const* ldab, fcomplex_t* bb, integer_t const* ldbb,
- float* w, fcomplex_t* z, integer_t const* ldz, fcomplex_t* work,
+void LAPACK_CHBGV( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, fcomplex_t* ab,
+ const integer_t* ldab, fcomplex_t* bb, const integer_t* ldbb,
+ float* w, fcomplex_t* z, const integer_t* ldz, fcomplex_t* work,
         float* rwork, integer_t* info );
-void LAPACK_ZHBGV( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, dcomplex_t* ab,
- integer_t const* ldab, dcomplex_t* bb, integer_t const* ldbb,
- double* w, dcomplex_t* z, integer_t const* ldz, dcomplex_t* work,
+void LAPACK_ZHBGV( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, dcomplex_t* ab,
+ const integer_t* ldab, dcomplex_t* bb, const integer_t* ldbb,
+ double* w, dcomplex_t* z, const integer_t* ldz, dcomplex_t* work,
         double* rwork, integer_t* info );
 
 // Value-type variants of hbgvd
-void LAPACK_CHBGVD( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, fcomplex_t* ab,
- integer_t const* ldab, fcomplex_t* bb, integer_t const* ldbb,
- float* w, fcomplex_t* z, integer_t const* ldz, fcomplex_t* work,
- integer_t const* lwork, float* rwork, integer_t const* lrwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_ZHBGVD( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, dcomplex_t* ab,
- integer_t const* ldab, dcomplex_t* bb, integer_t const* ldbb,
- double* w, dcomplex_t* z, integer_t const* ldz, dcomplex_t* work,
- integer_t const* lwork, double* rwork, integer_t const* lrwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
+void LAPACK_CHBGVD( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, fcomplex_t* ab,
+ const integer_t* ldab, fcomplex_t* bb, const integer_t* ldbb,
+ float* w, fcomplex_t* z, const integer_t* ldz, fcomplex_t* work,
+ const integer_t* lwork, float* rwork, const integer_t* lrwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_ZHBGVD( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, dcomplex_t* ab,
+ const integer_t* ldab, dcomplex_t* bb, const integer_t* ldbb,
+ double* w, dcomplex_t* z, const integer_t* ldz, dcomplex_t* work,
+ const integer_t* lwork, double* rwork, const integer_t* lrwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
 
 // Value-type variants of hbgvx
-void LAPACK_CHBGVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, integer_t const* ka, integer_t const* kb,
- fcomplex_t* ab, integer_t const* ldab, fcomplex_t* bb,
- integer_t const* ldbb, fcomplex_t* q, integer_t const* ldq,
- float const* vl, float const* vu, integer_t const* il,
- integer_t const* iu, float const* abstol, integer_t* m, float* w,
- fcomplex_t* z, integer_t const* ldz, fcomplex_t* work, float* rwork,
+void LAPACK_CHBGVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, const integer_t* ka, const integer_t* kb,
+ fcomplex_t* ab, const integer_t* ldab, fcomplex_t* bb,
+ const integer_t* ldbb, fcomplex_t* q, const integer_t* ldq,
+ const float* vl, const float* vu, const integer_t* il,
+ const integer_t* iu, const float* abstol, integer_t* m, float* w,
+ fcomplex_t* z, const integer_t* ldz, fcomplex_t* work, float* rwork,
         integer_t* iwork, integer_t* ifail, integer_t* info );
-void LAPACK_ZHBGVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, integer_t const* ka, integer_t const* kb,
- dcomplex_t* ab, integer_t const* ldab, dcomplex_t* bb,
- integer_t const* ldbb, dcomplex_t* q, integer_t const* ldq,
- double const* vl, double const* vu, integer_t const* il,
- integer_t const* iu, double const* abstol, integer_t* m, double* w,
- dcomplex_t* z, integer_t const* ldz, dcomplex_t* work, double* rwork,
+void LAPACK_ZHBGVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, const integer_t* ka, const integer_t* kb,
+ dcomplex_t* ab, const integer_t* ldab, dcomplex_t* bb,
+ const integer_t* ldbb, dcomplex_t* q, const integer_t* ldq,
+ const double* vl, const double* vu, const integer_t* il,
+ const integer_t* iu, const double* abstol, integer_t* m, double* w,
+ dcomplex_t* z, const integer_t* ldz, dcomplex_t* work, double* rwork,
         integer_t* iwork, integer_t* ifail, integer_t* info );
 
 // Value-type variants of hegv
-void LAPACK_CHEGV( integer_t const* itype, char const* jobz, char const* uplo,
- integer_t const* n, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb, float* w, fcomplex_t* work,
- integer_t const* lwork, float* rwork, integer_t* info );
-void LAPACK_ZHEGV( integer_t const* itype, char const* jobz, char const* uplo,
- integer_t const* n, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb, double* w, dcomplex_t* work,
- integer_t const* lwork, double* rwork, integer_t* info );
+void LAPACK_CHEGV( const integer_t* itype, const char* jobz, const char* uplo,
+ const integer_t* n, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb, float* w, fcomplex_t* work,
+ const integer_t* lwork, float* rwork, integer_t* info );
+void LAPACK_ZHEGV( const integer_t* itype, const char* jobz, const char* uplo,
+ const integer_t* n, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb, double* w, dcomplex_t* work,
+ const integer_t* lwork, double* rwork, integer_t* info );
 
 // Value-type variants of hegvd
-void LAPACK_CHEGVD( integer_t const* itype, char const* jobz,
- char const* uplo, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* b, integer_t const* ldb, float* w,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
- integer_t const* lrwork, integer_t* iwork, integer_t const* liwork,
- integer_t* info );
-void LAPACK_ZHEGVD( integer_t const* itype, char const* jobz,
- char const* uplo, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* b, integer_t const* ldb, double* w,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
- integer_t const* lrwork, integer_t* iwork, integer_t const* liwork,
+void LAPACK_CHEGVD( const integer_t* itype, const char* jobz,
+ const char* uplo, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* b, const integer_t* ldb, float* w,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
+ const integer_t* lrwork, integer_t* iwork, const integer_t* liwork,
+ integer_t* info );
+void LAPACK_ZHEGVD( const integer_t* itype, const char* jobz,
+ const char* uplo, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* b, const integer_t* ldb, double* w,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
+ const integer_t* lrwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
 
 // Value-type variants of hegvx
-void LAPACK_CHEGVX( integer_t const* itype, char const* jobz,
- char const* range, char const* uplo, integer_t const* n,
- fcomplex_t* a, integer_t const* lda, fcomplex_t* b,
- integer_t const* ldb, float const* vl, float const* vu,
- integer_t const* il, integer_t const* iu, float const* abstol,
- integer_t* m, float* w, fcomplex_t* z, integer_t const* ldz,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
+void LAPACK_CHEGVX( const integer_t* itype, const char* jobz,
+ const char* range, const char* uplo, const integer_t* n,
+ fcomplex_t* a, const integer_t* lda, fcomplex_t* b,
+ const integer_t* ldb, const float* vl, const float* vu,
+ const integer_t* il, const integer_t* iu, const float* abstol,
+ integer_t* m, float* w, fcomplex_t* z, const integer_t* ldz,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
         integer_t* iwork, integer_t* ifail, integer_t* info );
-void LAPACK_ZHEGVX( integer_t const* itype, char const* jobz,
- char const* range, char const* uplo, integer_t const* n,
- dcomplex_t* a, integer_t const* lda, dcomplex_t* b,
- integer_t const* ldb, double const* vl, double const* vu,
- integer_t const* il, integer_t const* iu, double const* abstol,
- integer_t* m, double* w, dcomplex_t* z, integer_t const* ldz,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
+void LAPACK_ZHEGVX( const integer_t* itype, const char* jobz,
+ const char* range, const char* uplo, const integer_t* n,
+ dcomplex_t* a, const integer_t* lda, dcomplex_t* b,
+ const integer_t* ldb, const double* vl, const double* vu,
+ const integer_t* il, const integer_t* iu, const double* abstol,
+ integer_t* m, double* w, dcomplex_t* z, const integer_t* ldz,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
         integer_t* iwork, integer_t* ifail, integer_t* info );
 
 // Value-type variants of hpgv
-void LAPACK_CHPGV( integer_t const* itype, char const* jobz, char const* uplo,
- integer_t const* n, fcomplex_t* ap, fcomplex_t* bp, float* w,
- fcomplex_t* z, integer_t const* ldz, fcomplex_t* work, float* rwork,
- integer_t* info );
-void LAPACK_ZHPGV( integer_t const* itype, char const* jobz, char const* uplo,
- integer_t const* n, dcomplex_t* ap, dcomplex_t* bp, double* w,
- dcomplex_t* z, integer_t const* ldz, dcomplex_t* work, double* rwork,
+void LAPACK_CHPGV( const integer_t* itype, const char* jobz, const char* uplo,
+ const integer_t* n, fcomplex_t* ap, fcomplex_t* bp, float* w,
+ fcomplex_t* z, const integer_t* ldz, fcomplex_t* work, float* rwork,
+ integer_t* info );
+void LAPACK_ZHPGV( const integer_t* itype, const char* jobz, const char* uplo,
+ const integer_t* n, dcomplex_t* ap, dcomplex_t* bp, double* w,
+ dcomplex_t* z, const integer_t* ldz, dcomplex_t* work, double* rwork,
         integer_t* info );
 
 // Value-type variants of hpgvd
-void LAPACK_CHPGVD( integer_t const* itype, char const* jobz,
- char const* uplo, integer_t const* n, fcomplex_t* ap, fcomplex_t* bp,
- float* w, fcomplex_t* z, integer_t const* ldz, fcomplex_t* work,
- integer_t const* lwork, float* rwork, integer_t const* lrwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_ZHPGVD( integer_t const* itype, char const* jobz,
- char const* uplo, integer_t const* n, dcomplex_t* ap, dcomplex_t* bp,
- double* w, dcomplex_t* z, integer_t const* ldz, dcomplex_t* work,
- integer_t const* lwork, double* rwork, integer_t const* lrwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
+void LAPACK_CHPGVD( const integer_t* itype, const char* jobz,
+ const char* uplo, const integer_t* n, fcomplex_t* ap, fcomplex_t* bp,
+ float* w, fcomplex_t* z, const integer_t* ldz, fcomplex_t* work,
+ const integer_t* lwork, float* rwork, const integer_t* lrwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_ZHPGVD( const integer_t* itype, const char* jobz,
+ const char* uplo, const integer_t* n, dcomplex_t* ap, dcomplex_t* bp,
+ double* w, dcomplex_t* z, const integer_t* ldz, dcomplex_t* work,
+ const integer_t* lwork, double* rwork, const integer_t* lrwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
 
 // Value-type variants of hpgvx
-void LAPACK_CHPGVX( integer_t const* itype, char const* jobz,
- char const* range, char const* uplo, integer_t const* n,
- fcomplex_t* ap, fcomplex_t* bp, float const* vl, float const* vu,
- integer_t const* il, integer_t const* iu, float const* abstol,
- integer_t* m, float* w, fcomplex_t* z, integer_t const* ldz,
+void LAPACK_CHPGVX( const integer_t* itype, const char* jobz,
+ const char* range, const char* uplo, const integer_t* n,
+ fcomplex_t* ap, fcomplex_t* bp, const float* vl, const float* vu,
+ const integer_t* il, const integer_t* iu, const float* abstol,
+ integer_t* m, float* w, fcomplex_t* z, const integer_t* ldz,
         fcomplex_t* work, float* rwork, integer_t* iwork, integer_t* ifail,
         integer_t* info );
-void LAPACK_ZHPGVX( integer_t const* itype, char const* jobz,
- char const* range, char const* uplo, integer_t const* n,
- dcomplex_t* ap, dcomplex_t* bp, double const* vl, double const* vu,
- integer_t const* il, integer_t const* iu, double const* abstol,
- integer_t* m, double* w, dcomplex_t* z, integer_t const* ldz,
+void LAPACK_ZHPGVX( const integer_t* itype, const char* jobz,
+ const char* range, const char* uplo, const integer_t* n,
+ dcomplex_t* ap, dcomplex_t* bp, const double* vl, const double* vu,
+ const integer_t* il, const integer_t* iu, const double* abstol,
+ integer_t* m, double* w, dcomplex_t* z, const integer_t* ldz,
         dcomplex_t* work, double* rwork, integer_t* iwork, integer_t* ifail,
         integer_t* info );
 
 // Value-type variants of lacgv
-void LAPACK_CLACGV( integer_t const* n, fcomplex_t* x, integer_t const* incx );
-void LAPACK_ZLACGV( integer_t const* n, dcomplex_t* x, integer_t const* incx );
+void LAPACK_CLACGV( const integer_t* n, fcomplex_t* x, const integer_t* incx );
+void LAPACK_ZLACGV( const integer_t* n, dcomplex_t* x, const integer_t* incx );
 
 // Value-type variants of largv
-void LAPACK_SLARGV( integer_t const* n, float* x, integer_t const* incx,
- float* y, integer_t const* incy, float* c, integer_t const* incc );
-void LAPACK_DLARGV( integer_t const* n, double* x, integer_t const* incx,
- double* y, integer_t const* incy, double* c, integer_t const* incc );
-void LAPACK_CLARGV( integer_t const* n, fcomplex_t* x, integer_t const* incx,
- fcomplex_t* y, integer_t const* incy, float* c,
- integer_t const* incc );
-void LAPACK_ZLARGV( integer_t const* n, dcomplex_t* x, integer_t const* incx,
- dcomplex_t* y, integer_t const* incy, double* c,
- integer_t const* incc );
+void LAPACK_SLARGV( const integer_t* n, float* x, const integer_t* incx,
+ float* y, const integer_t* incy, float* c, const integer_t* incc );
+void LAPACK_DLARGV( const integer_t* n, double* x, const integer_t* incx,
+ double* y, const integer_t* incy, double* c, const integer_t* incc );
+void LAPACK_CLARGV( const integer_t* n, fcomplex_t* x, const integer_t* incx,
+ fcomplex_t* y, const integer_t* incy, float* c,
+ const integer_t* incc );
+void LAPACK_ZLARGV( const integer_t* n, dcomplex_t* x, const integer_t* incx,
+ dcomplex_t* y, const integer_t* incy, double* c,
+ const integer_t* incc );
 
 // Value-type variants of sbgv
-void LAPACK_SSBGV( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, float* ab,
- integer_t const* ldab, float* bb, integer_t const* ldbb, float* w,
- float* z, integer_t const* ldz, float* work, integer_t* info );
-void LAPACK_DSBGV( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, double* ab,
- integer_t const* ldab, double* bb, integer_t const* ldbb, double* w,
- double* z, integer_t const* ldz, double* work, integer_t* info );
+void LAPACK_SSBGV( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, float* ab,
+ const integer_t* ldab, float* bb, const integer_t* ldbb, float* w,
+ float* z, const integer_t* ldz, float* work, integer_t* info );
+void LAPACK_DSBGV( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, double* ab,
+ const integer_t* ldab, double* bb, const integer_t* ldbb, double* w,
+ double* z, const integer_t* ldz, double* work, integer_t* info );
 
 // Value-type variants of sbgvd
-void LAPACK_SSBGVD( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, float* ab,
- integer_t const* ldab, float* bb, integer_t const* ldbb, float* w,
- float* z, integer_t const* ldz, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_DSBGVD( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* ka, integer_t const* kb, double* ab,
- integer_t const* ldab, double* bb, integer_t const* ldbb, double* w,
- double* z, integer_t const* ldz, double* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
+void LAPACK_SSBGVD( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, float* ab,
+ const integer_t* ldab, float* bb, const integer_t* ldbb, float* w,
+ float* z, const integer_t* ldz, float* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_DSBGVD( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* ka, const integer_t* kb, double* ab,
+ const integer_t* ldab, double* bb, const integer_t* ldbb, double* w,
+ double* z, const integer_t* ldz, double* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
 
 // Value-type variants of sbgvx
-void LAPACK_SSBGVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, integer_t const* ka, integer_t const* kb,
- float* ab, integer_t const* ldab, float* bb, integer_t const* ldbb,
- float* q, integer_t const* ldq, float const* vl, float const* vu,
- integer_t const* il, integer_t const* iu, float const* abstol,
- integer_t* m, float* w, float* z, integer_t const* ldz, float* work,
+void LAPACK_SSBGVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, const integer_t* ka, const integer_t* kb,
+ float* ab, const integer_t* ldab, float* bb, const integer_t* ldbb,
+ float* q, const integer_t* ldq, const float* vl, const float* vu,
+ const integer_t* il, const integer_t* iu, const float* abstol,
+ integer_t* m, float* w, float* z, const integer_t* ldz, float* work,
         integer_t* iwork, integer_t* ifail, integer_t* info );
-void LAPACK_DSBGVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, integer_t const* ka, integer_t const* kb,
- double* ab, integer_t const* ldab, double* bb, integer_t const* ldbb,
- double* q, integer_t const* ldq, double const* vl, double const* vu,
- integer_t const* il, integer_t const* iu, double const* abstol,
- integer_t* m, double* w, double* z, integer_t const* ldz,
+void LAPACK_DSBGVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, const integer_t* ka, const integer_t* kb,
+ double* ab, const integer_t* ldab, double* bb, const integer_t* ldbb,
+ double* q, const integer_t* ldq, const double* vl, const double* vu,
+ const integer_t* il, const integer_t* iu, const double* abstol,
+ integer_t* m, double* w, double* z, const integer_t* ldz,
         double* work, integer_t* iwork, integer_t* ifail, integer_t* info );
 
 // Value-type variants of spgv
-void LAPACK_SSPGV( integer_t const* itype, char const* jobz, char const* uplo,
- integer_t const* n, float* ap, float* bp, float* w, float* z,
- integer_t const* ldz, float* work, integer_t* info );
-void LAPACK_DSPGV( integer_t const* itype, char const* jobz, char const* uplo,
- integer_t const* n, double* ap, double* bp, double* w, double* z,
- integer_t const* ldz, double* work, integer_t* info );
+void LAPACK_SSPGV( const integer_t* itype, const char* jobz, const char* uplo,
+ const integer_t* n, float* ap, float* bp, float* w, float* z,
+ const integer_t* ldz, float* work, integer_t* info );
+void LAPACK_DSPGV( const integer_t* itype, const char* jobz, const char* uplo,
+ const integer_t* n, double* ap, double* bp, double* w, double* z,
+ const integer_t* ldz, double* work, integer_t* info );
 
 // Value-type variants of spgvd
-void LAPACK_SSPGVD( integer_t const* itype, char const* jobz,
- char const* uplo, integer_t const* n, float* ap, float* bp, float* w,
- float* z, integer_t const* ldz, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_DSPGVD( integer_t const* itype, char const* jobz,
- char const* uplo, integer_t const* n, double* ap, double* bp,
- double* w, double* z, integer_t const* ldz, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+void LAPACK_SSPGVD( const integer_t* itype, const char* jobz,
+ const char* uplo, const integer_t* n, float* ap, float* bp, float* w,
+ float* z, const integer_t* ldz, float* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_DSPGVD( const integer_t* itype, const char* jobz,
+ const char* uplo, const integer_t* n, double* ap, double* bp,
+ double* w, double* z, const integer_t* ldz, double* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
 
 // Value-type variants of spgvx
-void LAPACK_SSPGVX( integer_t const* itype, char const* jobz,
- char const* range, char const* uplo, integer_t const* n, float* ap,
- float* bp, float const* vl, float const* vu, integer_t const* il,
- integer_t const* iu, float const* abstol, integer_t* m, float* w,
- float* z, integer_t const* ldz, float* work, integer_t* iwork,
+void LAPACK_SSPGVX( const integer_t* itype, const char* jobz,
+ const char* range, const char* uplo, const integer_t* n, float* ap,
+ float* bp, const float* vl, const float* vu, const integer_t* il,
+ const integer_t* iu, const float* abstol, integer_t* m, float* w,
+ float* z, const integer_t* ldz, float* work, integer_t* iwork,
         integer_t* ifail, integer_t* info );
-void LAPACK_DSPGVX( integer_t const* itype, char const* jobz,
- char const* range, char const* uplo, integer_t const* n, double* ap,
- double* bp, double const* vl, double const* vu, integer_t const* il,
- integer_t const* iu, double const* abstol, integer_t* m, double* w,
- double* z, integer_t const* ldz, double* work, integer_t* iwork,
+void LAPACK_DSPGVX( const integer_t* itype, const char* jobz,
+ const char* range, const char* uplo, const integer_t* n, double* ap,
+ double* bp, const double* vl, const double* vu, const integer_t* il,
+ const integer_t* iu, const double* abstol, integer_t* m, double* w,
+ double* z, const integer_t* ldz, double* work, integer_t* iwork,
         integer_t* ifail, integer_t* info );
 
 // Value-type variants of sygv
-void LAPACK_SSYGV( integer_t const* itype, char const* jobz, char const* uplo,
- integer_t const* n, float* a, integer_t const* lda, float* b,
- integer_t const* ldb, float* w, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DSYGV( integer_t const* itype, char const* jobz, char const* uplo,
- integer_t const* n, double* a, integer_t const* lda, double* b,
- integer_t const* ldb, double* w, double* work, integer_t const* lwork,
+void LAPACK_SSYGV( const integer_t* itype, const char* jobz, const char* uplo,
+ const integer_t* n, float* a, const integer_t* lda, float* b,
+ const integer_t* ldb, float* w, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DSYGV( const integer_t* itype, const char* jobz, const char* uplo,
+ const integer_t* n, double* a, const integer_t* lda, double* b,
+ const integer_t* ldb, double* w, double* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of sygvd
-void LAPACK_SSYGVD( integer_t const* itype, char const* jobz,
- char const* uplo, integer_t const* n, float* a, integer_t const* lda,
- float* b, integer_t const* ldb, float* w, float* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
- integer_t* info );
-void LAPACK_DSYGVD( integer_t const* itype, char const* jobz,
- char const* uplo, integer_t const* n, double* a, integer_t const* lda,
- double* b, integer_t const* ldb, double* w, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+void LAPACK_SSYGVD( const integer_t* itype, const char* jobz,
+ const char* uplo, const integer_t* n, float* a, const integer_t* lda,
+ float* b, const integer_t* ldb, float* w, float* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
+ integer_t* info );
+void LAPACK_DSYGVD( const integer_t* itype, const char* jobz,
+ const char* uplo, const integer_t* n, double* a, const integer_t* lda,
+ double* b, const integer_t* ldb, double* w, double* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
 
 // Value-type variants of sygvx
-void LAPACK_SSYGVX( integer_t const* itype, char const* jobz,
- char const* range, char const* uplo, integer_t const* n, float* a,
- integer_t const* lda, float* b, integer_t const* ldb, float const* vl,
- float const* vu, integer_t const* il, integer_t const* iu,
- float const* abstol, integer_t* m, float* w, float* z,
- integer_t const* ldz, float* work, integer_t const* lwork,
+void LAPACK_SSYGVX( const integer_t* itype, const char* jobz,
+ const char* range, const char* uplo, const integer_t* n, float* a,
+ const integer_t* lda, float* b, const integer_t* ldb, const float* vl,
+ const float* vu, const integer_t* il, const integer_t* iu,
+ const float* abstol, integer_t* m, float* w, float* z,
+ const integer_t* ldz, float* work, const integer_t* lwork,
         integer_t* iwork, integer_t* ifail, integer_t* info );
-void LAPACK_DSYGVX( integer_t const* itype, char const* jobz,
- char const* range, char const* uplo, integer_t const* n, double* a,
- integer_t const* lda, double* b, integer_t const* ldb,
- double const* vl, double const* vu, integer_t const* il,
- integer_t const* iu, double const* abstol, integer_t* m, double* w,
- double* z, integer_t const* ldz, double* work, integer_t const* lwork,
+void LAPACK_DSYGVX( const integer_t* itype, const char* jobz,
+ const char* range, const char* uplo, const integer_t* n, double* a,
+ const integer_t* lda, double* b, const integer_t* ldb,
+ const double* vl, const double* vu, const integer_t* il,
+ const integer_t* iu, const double* abstol, integer_t* m, double* w,
+ double* z, const integer_t* ldz, double* work, const integer_t* lwork,
         integer_t* iwork, integer_t* ifail, integer_t* info );
 
 // Value-type variants of ggglm
-void LAPACK_SGGGLM( integer_t const* n, integer_t const* m,
- integer_t const* p, float* a, integer_t const* lda, float* b,
- integer_t const* ldb, float* d, float* x, float* y, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DGGGLM( integer_t const* n, integer_t const* m,
- integer_t const* p, double* a, integer_t const* lda, double* b,
- integer_t const* ldb, double* d, double* x, double* y, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CGGGLM( integer_t const* n, integer_t const* m,
- integer_t const* p, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb, fcomplex_t* d, fcomplex_t* x,
- fcomplex_t* y, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZGGGLM( integer_t const* n, integer_t const* m,
- integer_t const* p, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb, dcomplex_t* d, dcomplex_t* x,
- dcomplex_t* y, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_SGGGLM( const integer_t* n, const integer_t* m,
+ const integer_t* p, float* a, const integer_t* lda, float* b,
+ const integer_t* ldb, float* d, float* x, float* y, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DGGGLM( const integer_t* n, const integer_t* m,
+ const integer_t* p, double* a, const integer_t* lda, double* b,
+ const integer_t* ldb, double* d, double* x, double* y, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CGGGLM( const integer_t* n, const integer_t* m,
+ const integer_t* p, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb, fcomplex_t* d, fcomplex_t* x,
+ fcomplex_t* y, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZGGGLM( const integer_t* n, const integer_t* m,
+ const integer_t* p, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb, dcomplex_t* d, dcomplex_t* x,
+ dcomplex_t* y, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of gglse
-void LAPACK_SGGLSE( integer_t const* m, integer_t const* n,
- integer_t const* p, float* a, integer_t const* lda, float* b,
- integer_t const* ldb, float* c, float* d, float* x, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DGGLSE( integer_t const* m, integer_t const* n,
- integer_t const* p, double* a, integer_t const* lda, double* b,
- integer_t const* ldb, double* c, double* d, double* x, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CGGLSE( integer_t const* m, integer_t const* n,
- integer_t const* p, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb, fcomplex_t* c, fcomplex_t* d,
- fcomplex_t* x, fcomplex_t* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_ZGGLSE( integer_t const* m, integer_t const* n,
- integer_t const* p, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb, dcomplex_t* c, dcomplex_t* d,
- dcomplex_t* x, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_SGGLSE( const integer_t* m, const integer_t* n,
+ const integer_t* p, float* a, const integer_t* lda, float* b,
+ const integer_t* ldb, float* c, float* d, float* x, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DGGLSE( const integer_t* m, const integer_t* n,
+ const integer_t* p, double* a, const integer_t* lda, double* b,
+ const integer_t* ldb, double* c, double* d, double* x, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CGGLSE( const integer_t* m, const integer_t* n,
+ const integer_t* p, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb, fcomplex_t* c, fcomplex_t* d,
+ fcomplex_t* x, fcomplex_t* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_ZGGLSE( const integer_t* m, const integer_t* n,
+ const integer_t* p, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb, dcomplex_t* c, dcomplex_t* d,
+ dcomplex_t* x, dcomplex_t* work, const integer_t* lwork,
         integer_t* info );
 
 // Value-type variants of cgesv
-void LAPACK_ZCGESV( integer_t const* n, integer_t const* nrhs, dcomplex_t* a,
- integer_t const* lda, integer_t* ipiv, dcomplex_t const* b,
- integer_t const* ldb, dcomplex_t* x, integer_t const* ldx,
+void LAPACK_ZCGESV( const integer_t* n, const integer_t* nrhs, dcomplex_t* a,
+ const integer_t* lda, integer_t* ipiv, const dcomplex_t* b,
+ const integer_t* ldb, dcomplex_t* x, const integer_t* ldx,
         dcomplex_t* work, fcomplex_t* swork, double* rwork, integer_t* iter,
         integer_t* info );
 
 // Value-type variants of cposv
-void LAPACK_ZCPOSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* a, integer_t const* lda,
- dcomplex_t const* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, dcomplex_t* work, fcomplex_t* swork,
+void LAPACK_ZCPOSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* a, const integer_t* lda,
+ const dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, dcomplex_t* work, fcomplex_t* swork,
         double* rwork, integer_t* iter, integer_t* info );
 
 // Value-type variants of gbsv
-void LAPACK_SGBSV( integer_t const* n, integer_t const* kl,
- integer_t const* ku, integer_t const* nrhs, float* ab,
- integer_t const* ldab, integer_t* ipiv, float* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_DGBSV( integer_t const* n, integer_t const* kl,
- integer_t const* ku, integer_t const* nrhs, double* ab,
- integer_t const* ldab, integer_t* ipiv, double* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_CGBSV( integer_t const* n, integer_t const* kl,
- integer_t const* ku, integer_t const* nrhs, fcomplex_t* ab,
- integer_t const* ldab, integer_t* ipiv, fcomplex_t* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_ZGBSV( integer_t const* n, integer_t const* kl,
- integer_t const* ku, integer_t const* nrhs, dcomplex_t* ab,
- integer_t const* ldab, integer_t* ipiv, dcomplex_t* b,
- integer_t const* ldb, integer_t* info );
+void LAPACK_SGBSV( const integer_t* n, const integer_t* kl,
+ const integer_t* ku, const integer_t* nrhs, float* ab,
+ const integer_t* ldab, integer_t* ipiv, float* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_DGBSV( const integer_t* n, const integer_t* kl,
+ const integer_t* ku, const integer_t* nrhs, double* ab,
+ const integer_t* ldab, integer_t* ipiv, double* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_CGBSV( const integer_t* n, const integer_t* kl,
+ const integer_t* ku, const integer_t* nrhs, fcomplex_t* ab,
+ const integer_t* ldab, integer_t* ipiv, fcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_ZGBSV( const integer_t* n, const integer_t* kl,
+ const integer_t* ku, const integer_t* nrhs, dcomplex_t* ab,
+ const integer_t* ldab, integer_t* ipiv, dcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
 
 // Value-type variants of gbsvx
-void LAPACK_SGBSVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- float* ab, integer_t const* ldab, float* afb, integer_t const* ldafb,
+void LAPACK_SGBSVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ float* ab, const integer_t* ldab, float* afb, const integer_t* ldafb,
         integer_t* ipiv, char* equed, float* r, float* c, float* b,
- integer_t const* ldb, float* x, integer_t const* ldx, float* rcond,
+ const integer_t* ldb, float* x, const integer_t* ldx, float* rcond,
         float* ferr, float* berr, float* work, integer_t* iwork,
         integer_t* info );
-void LAPACK_DGBSVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- double* ab, integer_t const* ldab, double* afb,
- integer_t const* ldafb, integer_t* ipiv, char* equed, double* r,
- double* c, double* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
+void LAPACK_DGBSVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ double* ab, const integer_t* ldab, double* afb,
+ const integer_t* ldafb, integer_t* ipiv, char* equed, double* r,
+ double* c, double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CGBSVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- fcomplex_t* ab, integer_t const* ldab, fcomplex_t* afb,
- integer_t const* ldafb, integer_t* ipiv, char* equed, float* r,
- float* c, fcomplex_t* b, integer_t const* ldb, fcomplex_t* x,
- integer_t const* ldx, float* rcond, float* ferr, float* berr,
+void LAPACK_CGBSVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ fcomplex_t* ab, const integer_t* ldab, fcomplex_t* afb,
+ const integer_t* ldafb, integer_t* ipiv, char* equed, float* r,
+ float* c, fcomplex_t* b, const integer_t* ldb, fcomplex_t* x,
+ const integer_t* ldx, float* rcond, float* ferr, float* berr,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZGBSVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* kl, integer_t const* ku, integer_t const* nrhs,
- dcomplex_t* ab, integer_t const* ldab, dcomplex_t* afb,
- integer_t const* ldafb, integer_t* ipiv, char* equed, double* r,
- double* c, dcomplex_t* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
+void LAPACK_ZGBSVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* kl, const integer_t* ku, const integer_t* nrhs,
+ dcomplex_t* ab, const integer_t* ldab, dcomplex_t* afb,
+ const integer_t* ldafb, integer_t* ipiv, char* equed, double* r,
+ double* c, dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of gesv
-void LAPACK_SGESV( integer_t const* n, integer_t const* nrhs, float* a,
- integer_t const* lda, integer_t* ipiv, float* b, integer_t const* ldb,
+void LAPACK_SGESV( const integer_t* n, const integer_t* nrhs, float* a,
+ const integer_t* lda, integer_t* ipiv, float* b, const integer_t* ldb,
         integer_t* info );
-void LAPACK_DGESV( integer_t const* n, integer_t const* nrhs, double* a,
- integer_t const* lda, integer_t* ipiv, double* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_CGESV( integer_t const* n, integer_t const* nrhs, fcomplex_t* a,
- integer_t const* lda, integer_t* ipiv, fcomplex_t* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_ZGESV( integer_t const* n, integer_t const* nrhs, dcomplex_t* a,
- integer_t const* lda, integer_t* ipiv, dcomplex_t* b,
- integer_t const* ldb, integer_t* info );
+void LAPACK_DGESV( const integer_t* n, const integer_t* nrhs, double* a,
+ const integer_t* lda, integer_t* ipiv, double* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_CGESV( const integer_t* n, const integer_t* nrhs, fcomplex_t* a,
+ const integer_t* lda, integer_t* ipiv, fcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_ZGESV( const integer_t* n, const integer_t* nrhs, dcomplex_t* a,
+ const integer_t* lda, integer_t* ipiv, dcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
 
 // Value-type variants of gesvx
-void LAPACK_SGESVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* nrhs, float* a, integer_t const* lda, float* af,
- integer_t const* ldaf, integer_t* ipiv, char* equed, float* r,
- float* c, float* b, integer_t const* ldb, float* x,
- integer_t const* ldx, float* rcond, float* ferr, float* berr,
+void LAPACK_SGESVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* nrhs, float* a, const integer_t* lda, float* af,
+ const integer_t* ldaf, integer_t* ipiv, char* equed, float* r,
+ float* c, float* b, const integer_t* ldb, float* x,
+ const integer_t* ldx, float* rcond, float* ferr, float* berr,
         float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DGESVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* nrhs, double* a, integer_t const* lda, double* af,
- integer_t const* ldaf, integer_t* ipiv, char* equed, double* r,
- double* c, double* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
+void LAPACK_DGESVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* nrhs, double* a, const integer_t* lda, double* af,
+ const integer_t* ldaf, integer_t* ipiv, char* equed, double* r,
+ double* c, double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CGESVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* af, integer_t const* ldaf, integer_t* ipiv, char* equed,
- float* r, float* c, fcomplex_t* b, integer_t const* ldb,
- fcomplex_t* x, integer_t const* ldx, float* rcond, float* ferr,
+void LAPACK_CGESVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* af, const integer_t* ldaf, integer_t* ipiv, char* equed,
+ float* r, float* c, fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* x, const integer_t* ldx, float* rcond, float* ferr,
         float* berr, fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZGESVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* af, integer_t const* ldaf, integer_t* ipiv, char* equed,
- double* r, double* c, dcomplex_t* b, integer_t const* ldb,
- dcomplex_t* x, integer_t const* ldx, double* rcond, double* ferr,
+void LAPACK_ZGESVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* af, const integer_t* ldaf, integer_t* ipiv, char* equed,
+ double* r, double* c, dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* x, const integer_t* ldx, double* rcond, double* ferr,
         double* berr, dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of gtsv
-void LAPACK_SGTSV( integer_t const* n, integer_t const* nrhs, float* dl,
- float* d, float* du, float* b, integer_t const* ldb, integer_t* info );
-void LAPACK_DGTSV( integer_t const* n, integer_t const* nrhs, double* dl,
- double* d, double* du, double* b, integer_t const* ldb,
+void LAPACK_SGTSV( const integer_t* n, const integer_t* nrhs, float* dl,
+ float* d, float* du, float* b, const integer_t* ldb, integer_t* info );
+void LAPACK_DGTSV( const integer_t* n, const integer_t* nrhs, double* dl,
+ double* d, double* du, double* b, const integer_t* ldb,
         integer_t* info );
-void LAPACK_CGTSV( integer_t const* n, integer_t const* nrhs, fcomplex_t* dl,
- fcomplex_t* d, fcomplex_t* du, fcomplex_t* b, integer_t const* ldb,
+void LAPACK_CGTSV( const integer_t* n, const integer_t* nrhs, fcomplex_t* dl,
+ fcomplex_t* d, fcomplex_t* du, fcomplex_t* b, const integer_t* ldb,
         integer_t* info );
-void LAPACK_ZGTSV( integer_t const* n, integer_t const* nrhs, dcomplex_t* dl,
- dcomplex_t* d, dcomplex_t* du, dcomplex_t* b, integer_t const* ldb,
+void LAPACK_ZGTSV( const integer_t* n, const integer_t* nrhs, dcomplex_t* dl,
+ dcomplex_t* d, dcomplex_t* du, dcomplex_t* b, const integer_t* ldb,
         integer_t* info );
 
 // Value-type variants of gtsvx
-void LAPACK_SGTSVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* nrhs, float const* dl, float const* d,
- float const* du, float* dlf, float* df, float* duf, float* du2,
- integer_t* ipiv, float const* b, integer_t const* ldb, float* x,
- integer_t const* ldx, float* rcond, float* ferr, float* berr,
+void LAPACK_SGTSVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* nrhs, const float* dl, const float* d,
+ const float* du, float* dlf, float* df, float* duf, float* du2,
+ integer_t* ipiv, const float* b, const integer_t* ldb, float* x,
+ const integer_t* ldx, float* rcond, float* ferr, float* berr,
         float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DGTSVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* nrhs, double const* dl, double const* d,
- double const* du, double* dlf, double* df, double* duf, double* du2,
- integer_t* ipiv, double const* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
+void LAPACK_DGTSVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* nrhs, const double* dl, const double* d,
+ const double* du, double* dlf, double* df, double* duf, double* du2,
+ integer_t* ipiv, const double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CGTSVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* dl, fcomplex_t const* d,
- fcomplex_t const* du, fcomplex_t* dlf, fcomplex_t* df,
+void LAPACK_CGTSVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* dl, const fcomplex_t* d,
+ const fcomplex_t* du, fcomplex_t* dlf, fcomplex_t* df,
         fcomplex_t* duf, fcomplex_t* du2, integer_t* ipiv,
- fcomplex_t const* b, integer_t const* ldb, fcomplex_t* x,
- integer_t const* ldx, float* rcond, float* ferr, float* berr,
+ const fcomplex_t* b, const integer_t* ldb, fcomplex_t* x,
+ const integer_t* ldx, float* rcond, float* ferr, float* berr,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZGTSVX( char const* fact, char const* trans, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* dl, dcomplex_t const* d,
- dcomplex_t const* du, dcomplex_t* dlf, dcomplex_t* df,
+void LAPACK_ZGTSVX( const char* fact, const char* trans, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* dl, const dcomplex_t* d,
+ const dcomplex_t* du, dcomplex_t* dlf, dcomplex_t* df,
         dcomplex_t* duf, dcomplex_t* du2, integer_t* ipiv,
- dcomplex_t const* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
+ const dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of hesv
-void LAPACK_CHESV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* a, integer_t const* lda,
- integer_t* ipiv, fcomplex_t* b, integer_t const* ldb,
- fcomplex_t* work, integer_t const* lwork, integer_t* info );
-void LAPACK_ZHESV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* a, integer_t const* lda,
- integer_t* ipiv, dcomplex_t* b, integer_t const* ldb,
- dcomplex_t* work, integer_t const* lwork, integer_t* info );
+void LAPACK_CHESV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* a, const integer_t* lda,
+ integer_t* ipiv, fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* work, const integer_t* lwork, integer_t* info );
+void LAPACK_ZHESV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* a, const integer_t* lda,
+ integer_t* ipiv, dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* work, const integer_t* lwork, integer_t* info );
 
 // Value-type variants of hesvx
-void LAPACK_CHESVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t* af, integer_t const* ldaf, integer_t* ipiv,
- fcomplex_t const* b, integer_t const* ldb, fcomplex_t* x,
- integer_t const* ldx, float* rcond, float* ferr, float* berr,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
- integer_t* info );
-void LAPACK_ZHESVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t* af, integer_t const* ldaf, integer_t* ipiv,
- dcomplex_t const* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
+void LAPACK_CHESVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* af, const integer_t* ldaf, integer_t* ipiv,
+ const fcomplex_t* b, const integer_t* ldb, fcomplex_t* x,
+ const integer_t* ldx, float* rcond, float* ferr, float* berr,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
+ integer_t* info );
+void LAPACK_ZHESVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* af, const integer_t* ldaf, integer_t* ipiv,
+ const dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
         integer_t* info );
 
 // Value-type variants of hpsv
-void LAPACK_CHPSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* ap, integer_t* ipiv, fcomplex_t* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_ZHPSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* ap, integer_t* ipiv, dcomplex_t* b,
- integer_t const* ldb, integer_t* info );
+void LAPACK_CHPSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* ap, integer_t* ipiv, fcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_ZHPSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* ap, integer_t* ipiv, dcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
 
 // Value-type variants of hpsvx
-void LAPACK_CHPSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* ap, fcomplex_t* afp,
- integer_t* ipiv, fcomplex_t const* b, integer_t const* ldb,
- fcomplex_t* x, integer_t const* ldx, float* rcond, float* ferr,
+void LAPACK_CHPSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* ap, fcomplex_t* afp,
+ integer_t* ipiv, const fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* x, const integer_t* ldx, float* rcond, float* ferr,
         float* berr, fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZHPSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* ap, dcomplex_t* afp,
- integer_t* ipiv, dcomplex_t const* b, integer_t const* ldb,
- dcomplex_t* x, integer_t const* ldx, double* rcond, double* ferr,
+void LAPACK_ZHPSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* ap, dcomplex_t* afp,
+ integer_t* ipiv, const dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* x, const integer_t* ldx, double* rcond, double* ferr,
         double* berr, dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of pbsv
-void LAPACK_SPBSV( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, float* ab, integer_t const* ldab, float* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_DPBSV( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, double* ab, integer_t const* ldab, double* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_CPBSV( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, fcomplex_t* ab, integer_t const* ldab,
- fcomplex_t* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZPBSV( char const* uplo, integer_t const* n, integer_t const* kd,
- integer_t const* nrhs, dcomplex_t* ab, integer_t const* ldab,
- dcomplex_t* b, integer_t const* ldb, integer_t* info );
+void LAPACK_SPBSV( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, float* ab, const integer_t* ldab, float* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_DPBSV( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, double* ab, const integer_t* ldab, double* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_CPBSV( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, fcomplex_t* ab, const integer_t* ldab,
+ fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZPBSV( const char* uplo, const integer_t* n, const integer_t* kd,
+ const integer_t* nrhs, dcomplex_t* ab, const integer_t* ldab,
+ dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of pbsvx
-void LAPACK_SPBSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* kd, integer_t const* nrhs, float* ab,
- integer_t const* ldab, float* afb, integer_t const* ldafb,
- char* equed, float* s, float* b, integer_t const* ldb, float* x,
- integer_t const* ldx, float* rcond, float* ferr, float* berr,
+void LAPACK_SPBSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* kd, const integer_t* nrhs, float* ab,
+ const integer_t* ldab, float* afb, const integer_t* ldafb,
+ char* equed, float* s, float* b, const integer_t* ldb, float* x,
+ const integer_t* ldx, float* rcond, float* ferr, float* berr,
         float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DPBSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* kd, integer_t const* nrhs, double* ab,
- integer_t const* ldab, double* afb, integer_t const* ldafb,
- char* equed, double* s, double* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
+void LAPACK_DPBSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* kd, const integer_t* nrhs, double* ab,
+ const integer_t* ldab, double* afb, const integer_t* ldafb,
+ char* equed, double* s, double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CPBSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* kd, integer_t const* nrhs, fcomplex_t* ab,
- integer_t const* ldab, fcomplex_t* afb, integer_t const* ldafb,
- char* equed, float* s, fcomplex_t* b, integer_t const* ldb,
- fcomplex_t* x, integer_t const* ldx, float* rcond, float* ferr,
+void LAPACK_CPBSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* kd, const integer_t* nrhs, fcomplex_t* ab,
+ const integer_t* ldab, fcomplex_t* afb, const integer_t* ldafb,
+ char* equed, float* s, fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* x, const integer_t* ldx, float* rcond, float* ferr,
         float* berr, fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZPBSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* kd, integer_t const* nrhs, dcomplex_t* ab,
- integer_t const* ldab, dcomplex_t* afb, integer_t const* ldafb,
- char* equed, double* s, dcomplex_t* b, integer_t const* ldb,
- dcomplex_t* x, integer_t const* ldx, double* rcond, double* ferr,
+void LAPACK_ZPBSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* kd, const integer_t* nrhs, dcomplex_t* ab,
+ const integer_t* ldab, dcomplex_t* afb, const integer_t* ldafb,
+ char* equed, double* s, dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* x, const integer_t* ldx, double* rcond, double* ferr,
         double* berr, dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of posv
-void LAPACK_SPOSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float* a, integer_t const* lda, float* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_DPOSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double* a, integer_t const* lda, double* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_CPOSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZPOSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb, integer_t* info );
+void LAPACK_SPOSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, float* a, const integer_t* lda, float* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_DPOSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, double* a, const integer_t* lda, double* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_CPOSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZPOSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of posvx
-void LAPACK_SPOSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, float* a, integer_t const* lda, float* af,
- integer_t const* ldaf, char* equed, float* s, float* b,
- integer_t const* ldb, float* x, integer_t const* ldx, float* rcond,
+void LAPACK_SPOSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, float* a, const integer_t* lda, float* af,
+ const integer_t* ldaf, char* equed, float* s, float* b,
+ const integer_t* ldb, float* x, const integer_t* ldx, float* rcond,
         float* ferr, float* berr, float* work, integer_t* iwork,
         integer_t* info );
-void LAPACK_DPOSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, double* a, integer_t const* lda, double* af,
- integer_t const* ldaf, char* equed, double* s, double* b,
- integer_t const* ldb, double* x, integer_t const* ldx, double* rcond,
+void LAPACK_DPOSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, double* a, const integer_t* lda, double* af,
+ const integer_t* ldaf, char* equed, double* s, double* b,
+ const integer_t* ldb, double* x, const integer_t* ldx, double* rcond,
         double* ferr, double* berr, double* work, integer_t* iwork,
         integer_t* info );
-void LAPACK_CPOSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* af, integer_t const* ldaf, char* equed, float* s,
- fcomplex_t* b, integer_t const* ldb, fcomplex_t* x,
- integer_t const* ldx, float* rcond, float* ferr, float* berr,
+void LAPACK_CPOSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* af, const integer_t* ldaf, char* equed, float* s,
+ fcomplex_t* b, const integer_t* ldb, fcomplex_t* x,
+ const integer_t* ldx, float* rcond, float* ferr, float* berr,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZPOSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* af, integer_t const* ldaf, char* equed, double* s,
- dcomplex_t* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
+void LAPACK_ZPOSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* af, const integer_t* ldaf, char* equed, double* s,
+ dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of ppsv
-void LAPACK_SPPSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float* ap, float* b, integer_t const* ldb,
+void LAPACK_SPPSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, float* ap, float* b, const integer_t* ldb,
         integer_t* info );
-void LAPACK_DPPSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double* ap, double* b, integer_t const* ldb,
+void LAPACK_DPPSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, double* ap, double* b, const integer_t* ldb,
         integer_t* info );
-void LAPACK_CPPSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* ap, fcomplex_t* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_ZPPSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* ap, dcomplex_t* b,
- integer_t const* ldb, integer_t* info );
+void LAPACK_CPPSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* ap, fcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_ZPPSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* ap, dcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
 
 // Value-type variants of ppsvx
-void LAPACK_SPPSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, float* ap, float* afp, char* equed, float* s,
- float* b, integer_t const* ldb, float* x, integer_t const* ldx,
+void LAPACK_SPPSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, float* ap, float* afp, char* equed, float* s,
+ float* b, const integer_t* ldb, float* x, const integer_t* ldx,
         float* rcond, float* ferr, float* berr, float* work, integer_t* iwork,
         integer_t* info );
-void LAPACK_DPPSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, double* ap, double* afp, char* equed,
- double* s, double* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
+void LAPACK_DPPSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, double* ap, double* afp, char* equed,
+ double* s, double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CPPSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* ap, fcomplex_t* afp, char* equed,
- float* s, fcomplex_t* b, integer_t const* ldb, fcomplex_t* x,
- integer_t const* ldx, float* rcond, float* ferr, float* berr,
+void LAPACK_CPPSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* ap, fcomplex_t* afp, char* equed,
+ float* s, fcomplex_t* b, const integer_t* ldb, fcomplex_t* x,
+ const integer_t* ldx, float* rcond, float* ferr, float* berr,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZPPSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* ap, dcomplex_t* afp, char* equed,
- double* s, dcomplex_t* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
+void LAPACK_ZPPSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* ap, dcomplex_t* afp, char* equed,
+ double* s, dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of ptsv
-void LAPACK_SPTSV( integer_t const* n, integer_t const* nrhs, float* d,
- float* e, float* b, integer_t const* ldb, integer_t* info );
-void LAPACK_DPTSV( integer_t const* n, integer_t const* nrhs, double* d,
- double* e, double* b, integer_t const* ldb, integer_t* info );
-void LAPACK_CPTSV( integer_t const* n, integer_t const* nrhs, float* d,
- fcomplex_t* e, fcomplex_t* b, integer_t const* ldb, integer_t* info );
-void LAPACK_ZPTSV( integer_t const* n, integer_t const* nrhs, double* d,
- dcomplex_t* e, dcomplex_t* b, integer_t const* ldb, integer_t* info );
+void LAPACK_SPTSV( const integer_t* n, const integer_t* nrhs, float* d,
+ float* e, float* b, const integer_t* ldb, integer_t* info );
+void LAPACK_DPTSV( const integer_t* n, const integer_t* nrhs, double* d,
+ double* e, double* b, const integer_t* ldb, integer_t* info );
+void LAPACK_CPTSV( const integer_t* n, const integer_t* nrhs, float* d,
+ fcomplex_t* e, fcomplex_t* b, const integer_t* ldb, integer_t* info );
+void LAPACK_ZPTSV( const integer_t* n, const integer_t* nrhs, double* d,
+ dcomplex_t* e, dcomplex_t* b, const integer_t* ldb, integer_t* info );
 
 // Value-type variants of ptsvx
-void LAPACK_SPTSVX( char const* fact, integer_t const* n,
- integer_t const* nrhs, float const* d, float const* e, float* df,
- float* ef, float const* b, integer_t const* ldb, float* x,
- integer_t const* ldx, float* rcond, float* ferr, float* berr,
+void LAPACK_SPTSVX( const char* fact, const integer_t* n,
+ const integer_t* nrhs, const float* d, const float* e, float* df,
+ float* ef, const float* b, const integer_t* ldb, float* x,
+ const integer_t* ldx, float* rcond, float* ferr, float* berr,
         float* work, integer_t* info );
-void LAPACK_DPTSVX( char const* fact, integer_t const* n,
- integer_t const* nrhs, double const* d, double const* e, double* df,
- double* ef, double const* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
+void LAPACK_DPTSVX( const char* fact, const integer_t* n,
+ const integer_t* nrhs, const double* d, const double* e, double* df,
+ double* ef, const double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
         double* work, integer_t* info );
-void LAPACK_CPTSVX( char const* fact, integer_t const* n,
- integer_t const* nrhs, float const* d, fcomplex_t const* e, float* df,
- fcomplex_t* ef, fcomplex_t const* b, integer_t const* ldb,
- fcomplex_t* x, integer_t const* ldx, float* rcond, float* ferr,
+void LAPACK_CPTSVX( const char* fact, const integer_t* n,
+ const integer_t* nrhs, const float* d, const fcomplex_t* e, float* df,
+ fcomplex_t* ef, const fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* x, const integer_t* ldx, float* rcond, float* ferr,
         float* berr, fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZPTSVX( char const* fact, integer_t const* n,
- integer_t const* nrhs, double const* d, dcomplex_t const* e,
- double* df, dcomplex_t* ef, dcomplex_t const* b, integer_t const* ldb,
- dcomplex_t* x, integer_t const* ldx, double* rcond, double* ferr,
+void LAPACK_ZPTSVX( const char* fact, const integer_t* n,
+ const integer_t* nrhs, const double* d, const dcomplex_t* e,
+ double* df, dcomplex_t* ef, const dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* x, const integer_t* ldx, double* rcond, double* ferr,
         double* berr, dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of sgesv
-void LAPACK_DSGESV( integer_t const* n, integer_t const* nrhs, double* a,
- integer_t const* lda, integer_t* ipiv, double const* b,
- integer_t const* ldb, double* x, integer_t const* ldx, double* work,
+void LAPACK_DSGESV( const integer_t* n, const integer_t* nrhs, double* a,
+ const integer_t* lda, integer_t* ipiv, const double* b,
+ const integer_t* ldb, double* x, const integer_t* ldx, double* work,
         float* swork, integer_t* iter, integer_t* info );
 
 // Value-type variants of sposv
-void LAPACK_DSPOSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double* a, integer_t const* lda,
- double const* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* work, float* swork, integer_t* iter,
+void LAPACK_DSPOSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, double* a, const integer_t* lda,
+ const double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* work, float* swork, integer_t* iter,
         integer_t* info );
 
 // Value-type variants of spsv
-void LAPACK_SSPSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float* ap, integer_t* ipiv, float* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_DSPSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double* ap, integer_t* ipiv, double* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_CSPSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* ap, integer_t* ipiv, fcomplex_t* b,
- integer_t const* ldb, integer_t* info );
-void LAPACK_ZSPSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* ap, integer_t* ipiv, dcomplex_t* b,
- integer_t const* ldb, integer_t* info );
+void LAPACK_SSPSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, float* ap, integer_t* ipiv, float* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_DSPSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, double* ap, integer_t* ipiv, double* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_CSPSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* ap, integer_t* ipiv, fcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
+void LAPACK_ZSPSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* ap, integer_t* ipiv, dcomplex_t* b,
+ const integer_t* ldb, integer_t* info );
 
 // Value-type variants of spsvx
-void LAPACK_SSPSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* ap, float* afp, integer_t* ipiv,
- float const* b, integer_t const* ldb, float* x, integer_t const* ldx,
+void LAPACK_SSPSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* ap, float* afp, integer_t* ipiv,
+ const float* b, const integer_t* ldb, float* x, const integer_t* ldx,
         float* rcond, float* ferr, float* berr, float* work, integer_t* iwork,
         integer_t* info );
-void LAPACK_DSPSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* ap, double* afp, integer_t* ipiv,
- double const* b, integer_t const* ldb, double* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
+void LAPACK_DSPSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* ap, double* afp, integer_t* ipiv,
+ const double* b, const integer_t* ldb, double* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CSPSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* ap, fcomplex_t* afp,
- integer_t* ipiv, fcomplex_t const* b, integer_t const* ldb,
- fcomplex_t* x, integer_t const* ldx, float* rcond, float* ferr,
+void LAPACK_CSPSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* ap, fcomplex_t* afp,
+ integer_t* ipiv, const fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* x, const integer_t* ldx, float* rcond, float* ferr,
         float* berr, fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZSPSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* ap, dcomplex_t* afp,
- integer_t* ipiv, dcomplex_t const* b, integer_t const* ldb,
- dcomplex_t* x, integer_t const* ldx, double* rcond, double* ferr,
+void LAPACK_ZSPSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* ap, dcomplex_t* afp,
+ integer_t* ipiv, const dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* x, const integer_t* ldx, double* rcond, double* ferr,
         double* berr, dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of sysv
-void LAPACK_SSYSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, float* a, integer_t const* lda,
- integer_t* ipiv, float* b, integer_t const* ldb, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DSYSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, double* a, integer_t const* lda,
- integer_t* ipiv, double* b, integer_t const* ldb, double* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_CSYSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* a, integer_t const* lda,
- integer_t* ipiv, fcomplex_t* b, integer_t const* ldb,
- fcomplex_t* work, integer_t const* lwork, integer_t* info );
-void LAPACK_ZSYSV( char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* a, integer_t const* lda,
- integer_t* ipiv, dcomplex_t* b, integer_t const* ldb,
- dcomplex_t* work, integer_t const* lwork, integer_t* info );
+void LAPACK_SSYSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, float* a, const integer_t* lda,
+ integer_t* ipiv, float* b, const integer_t* ldb, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DSYSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, double* a, const integer_t* lda,
+ integer_t* ipiv, double* b, const integer_t* ldb, double* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_CSYSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* a, const integer_t* lda,
+ integer_t* ipiv, fcomplex_t* b, const integer_t* ldb,
+ fcomplex_t* work, const integer_t* lwork, integer_t* info );
+void LAPACK_ZSYSV( const char* uplo, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* a, const integer_t* lda,
+ integer_t* ipiv, dcomplex_t* b, const integer_t* ldb,
+ dcomplex_t* work, const integer_t* lwork, integer_t* info );
 
 // Value-type variants of sysvx
-void LAPACK_SSYSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, float const* a, integer_t const* lda,
- float* af, integer_t const* ldaf, integer_t* ipiv, float const* b,
- integer_t const* ldb, float* x, integer_t const* ldx, float* rcond,
- float* ferr, float* berr, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t* info );
-void LAPACK_DSYSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, double const* a, integer_t const* lda,
- double* af, integer_t const* ldaf, integer_t* ipiv, double const* b,
- integer_t const* ldb, double* x, integer_t const* ldx, double* rcond,
- double* ferr, double* berr, double* work, integer_t const* lwork,
- integer_t* iwork, integer_t* info );
-void LAPACK_CSYSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, fcomplex_t const* a, integer_t const* lda,
- fcomplex_t* af, integer_t const* ldaf, integer_t* ipiv,
- fcomplex_t const* b, integer_t const* ldb, fcomplex_t* x,
- integer_t const* ldx, float* rcond, float* ferr, float* berr,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
- integer_t* info );
-void LAPACK_ZSYSVX( char const* fact, char const* uplo, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t* af, integer_t const* ldaf, integer_t* ipiv,
- dcomplex_t const* b, integer_t const* ldb, dcomplex_t* x,
- integer_t const* ldx, double* rcond, double* ferr, double* berr,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
+void LAPACK_SSYSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const float* a, const integer_t* lda,
+ float* af, const integer_t* ldaf, integer_t* ipiv, const float* b,
+ const integer_t* ldb, float* x, const integer_t* ldx, float* rcond,
+ float* ferr, float* berr, float* work, const integer_t* lwork,
+ integer_t* iwork, integer_t* info );
+void LAPACK_DSYSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const double* a, const integer_t* lda,
+ double* af, const integer_t* ldaf, integer_t* ipiv, const double* b,
+ const integer_t* ldb, double* x, const integer_t* ldx, double* rcond,
+ double* ferr, double* berr, double* work, const integer_t* lwork,
+ integer_t* iwork, integer_t* info );
+void LAPACK_CSYSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* af, const integer_t* ldaf, integer_t* ipiv,
+ const fcomplex_t* b, const integer_t* ldb, fcomplex_t* x,
+ const integer_t* ldx, float* rcond, float* ferr, float* berr,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
+ integer_t* info );
+void LAPACK_ZSYSVX( const char* fact, const char* uplo, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* af, const integer_t* ldaf, integer_t* ipiv,
+ const dcomplex_t* b, const integer_t* ldb, dcomplex_t* x,
+ const integer_t* ldx, double* rcond, double* ferr, double* berr,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
         integer_t* info );
 
 // Value-type variants of gees
-void LAPACK_SGEES( char const* jobvs, char const* sort, logical_t* select,
- integer_t const* n, float* a, integer_t const* lda, integer_t* sdim,
- float* wr, float* wi, float* vs, integer_t const* ldvs, float* work,
- integer_t const* lwork, logical_t* bwork, integer_t* info );
-void LAPACK_DGEES( char const* jobvs, char const* sort, logical_t* select,
- integer_t const* n, double* a, integer_t const* lda, integer_t* sdim,
- double* wr, double* wi, double* vs, integer_t const* ldvs,
- double* work, integer_t const* lwork, logical_t* bwork,
- integer_t* info );
-void LAPACK_CGEES( char const* jobvs, char const* sort, logical_t* select,
- integer_t const* n, fcomplex_t* a, integer_t const* lda,
- integer_t* sdim, fcomplex_t* w, fcomplex_t* vs, integer_t const* ldvs,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
+void LAPACK_SGEES( const char* jobvs, const char* sort, logical_t* select,
+ const integer_t* n, float* a, const integer_t* lda, integer_t* sdim,
+ float* wr, float* wi, float* vs, const integer_t* ldvs, float* work,
+ const integer_t* lwork, logical_t* bwork, integer_t* info );
+void LAPACK_DGEES( const char* jobvs, const char* sort, logical_t* select,
+ const integer_t* n, double* a, const integer_t* lda, integer_t* sdim,
+ double* wr, double* wi, double* vs, const integer_t* ldvs,
+ double* work, const integer_t* lwork, logical_t* bwork,
+ integer_t* info );
+void LAPACK_CGEES( const char* jobvs, const char* sort, logical_t* select,
+ const integer_t* n, fcomplex_t* a, const integer_t* lda,
+ integer_t* sdim, fcomplex_t* w, fcomplex_t* vs, const integer_t* ldvs,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
         logical_t* bwork, integer_t* info );
-void LAPACK_ZGEES( char const* jobvs, char const* sort, logical_t* select,
- integer_t const* n, dcomplex_t* a, integer_t const* lda,
- integer_t* sdim, dcomplex_t* w, dcomplex_t* vs, integer_t const* ldvs,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
+void LAPACK_ZGEES( const char* jobvs, const char* sort, logical_t* select,
+ const integer_t* n, dcomplex_t* a, const integer_t* lda,
+ integer_t* sdim, dcomplex_t* w, dcomplex_t* vs, const integer_t* ldvs,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
         logical_t* bwork, integer_t* info );
 
 // Value-type variants of geesx
-void LAPACK_SGEESX( char const* jobvs, char const* sort, logical_t* select,
- char const* sense, integer_t const* n, float* a, integer_t const* lda,
+void LAPACK_SGEESX( const char* jobvs, const char* sort, logical_t* select,
+ const char* sense, const integer_t* n, float* a, const integer_t* lda,
         integer_t* sdim, float* wr, float* wi, float* vs,
- integer_t const* ldvs, float* rconde, float* rcondv, float* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+ const integer_t* ldvs, float* rconde, float* rcondv, float* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         logical_t* bwork, integer_t* info );
-void LAPACK_DGEESX( char const* jobvs, char const* sort, logical_t* select,
- char const* sense, integer_t const* n, double* a,
- integer_t const* lda, integer_t* sdim, double* wr, double* wi,
- double* vs, integer_t const* ldvs, double* rconde, double* rcondv,
- double* work, integer_t const* lwork, integer_t* iwork,
- integer_t const* liwork, logical_t* bwork, integer_t* info );
-void LAPACK_CGEESX( char const* jobvs, char const* sort, logical_t* select,
- char const* sense, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, integer_t* sdim, fcomplex_t* w, fcomplex_t* vs,
- integer_t const* ldvs, float* rconde, float* rcondv, fcomplex_t* work,
- integer_t const* lwork, float* rwork, logical_t* bwork,
- integer_t* info );
-void LAPACK_ZGEESX( char const* jobvs, char const* sort, logical_t* select,
- char const* sense, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, integer_t* sdim, dcomplex_t* w, dcomplex_t* vs,
- integer_t const* ldvs, double* rconde, double* rcondv,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
+void LAPACK_DGEESX( const char* jobvs, const char* sort, logical_t* select,
+ const char* sense, const integer_t* n, double* a,
+ const integer_t* lda, integer_t* sdim, double* wr, double* wi,
+ double* vs, const integer_t* ldvs, double* rconde, double* rcondv,
+ double* work, const integer_t* lwork, integer_t* iwork,
+ const integer_t* liwork, logical_t* bwork, integer_t* info );
+void LAPACK_CGEESX( const char* jobvs, const char* sort, logical_t* select,
+ const char* sense, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, integer_t* sdim, fcomplex_t* w, fcomplex_t* vs,
+ const integer_t* ldvs, float* rconde, float* rcondv, fcomplex_t* work,
+ const integer_t* lwork, float* rwork, logical_t* bwork,
+ integer_t* info );
+void LAPACK_ZGEESX( const char* jobvs, const char* sort, logical_t* select,
+ const char* sense, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, integer_t* sdim, dcomplex_t* w, dcomplex_t* vs,
+ const integer_t* ldvs, double* rconde, double* rcondv,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
         logical_t* bwork, integer_t* info );
 
 // Value-type variants of geev
-void LAPACK_SGEEV( char const* jobvl, char const* jobvr, integer_t const* n,
- float* a, integer_t const* lda, float* wr, float* wi, float* vl,
- integer_t const* ldvl, float* vr, integer_t const* ldvr, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DGEEV( char const* jobvl, char const* jobvr, integer_t const* n,
- double* a, integer_t const* lda, double* wr, double* wi, double* vl,
- integer_t const* ldvl, double* vr, integer_t const* ldvr,
- double* work, integer_t const* lwork, integer_t* info );
-void LAPACK_CGEEV( char const* jobvl, char const* jobvr, integer_t const* n,
- fcomplex_t* a, integer_t const* lda, fcomplex_t* w, fcomplex_t* vl,
- integer_t const* ldvl, fcomplex_t* vr, integer_t const* ldvr,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
- integer_t* info );
-void LAPACK_ZGEEV( char const* jobvl, char const* jobvr, integer_t const* n,
- dcomplex_t* a, integer_t const* lda, dcomplex_t* w, dcomplex_t* vl,
- integer_t const* ldvl, dcomplex_t* vr, integer_t const* ldvr,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
+void LAPACK_SGEEV( const char* jobvl, const char* jobvr, const integer_t* n,
+ float* a, const integer_t* lda, float* wr, float* wi, float* vl,
+ const integer_t* ldvl, float* vr, const integer_t* ldvr, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DGEEV( const char* jobvl, const char* jobvr, const integer_t* n,
+ double* a, const integer_t* lda, double* wr, double* wi, double* vl,
+ const integer_t* ldvl, double* vr, const integer_t* ldvr,
+ double* work, const integer_t* lwork, integer_t* info );
+void LAPACK_CGEEV( const char* jobvl, const char* jobvr, const integer_t* n,
+ fcomplex_t* a, const integer_t* lda, fcomplex_t* w, fcomplex_t* vl,
+ const integer_t* ldvl, fcomplex_t* vr, const integer_t* ldvr,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
+ integer_t* info );
+void LAPACK_ZGEEV( const char* jobvl, const char* jobvr, const integer_t* n,
+ dcomplex_t* a, const integer_t* lda, dcomplex_t* w, dcomplex_t* vl,
+ const integer_t* ldvl, dcomplex_t* vr, const integer_t* ldvr,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
         integer_t* info );
 
 // Value-type variants of geevx
-void LAPACK_SGEEVX( char const* balanc, char const* jobvl, char const* jobvr,
- char const* sense, integer_t const* n, float* a, integer_t const* lda,
- float* wr, float* wi, float* vl, integer_t const* ldvl, float* vr,
- integer_t const* ldvr, integer_t* ilo, integer_t* ihi, float* scale,
+void LAPACK_SGEEVX( const char* balanc, const char* jobvl, const char* jobvr,
+ const char* sense, const integer_t* n, float* a, const integer_t* lda,
+ float* wr, float* wi, float* vl, const integer_t* ldvl, float* vr,
+ const integer_t* ldvr, integer_t* ilo, integer_t* ihi, float* scale,
         float* abnrm, float* rconde, float* rcondv, float* work,
- integer_t const* lwork, integer_t* iwork, integer_t* info );
-void LAPACK_DGEEVX( char const* balanc, char const* jobvl, char const* jobvr,
- char const* sense, integer_t const* n, double* a,
- integer_t const* lda, double* wr, double* wi, double* vl,
- integer_t const* ldvl, double* vr, integer_t const* ldvr,
+ const integer_t* lwork, integer_t* iwork, integer_t* info );
+void LAPACK_DGEEVX( const char* balanc, const char* jobvl, const char* jobvr,
+ const char* sense, const integer_t* n, double* a,
+ const integer_t* lda, double* wr, double* wi, double* vl,
+ const integer_t* ldvl, double* vr, const integer_t* ldvr,
         integer_t* ilo, integer_t* ihi, double* scale, double* abnrm,
- double* rconde, double* rcondv, double* work, integer_t const* lwork,
+ double* rconde, double* rcondv, double* work, const integer_t* lwork,
         integer_t* iwork, integer_t* info );
-void LAPACK_CGEEVX( char const* balanc, char const* jobvl, char const* jobvr,
- char const* sense, integer_t const* n, fcomplex_t* a,
- integer_t const* lda, fcomplex_t* w, fcomplex_t* vl,
- integer_t const* ldvl, fcomplex_t* vr, integer_t const* ldvr,
+void LAPACK_CGEEVX( const char* balanc, const char* jobvl, const char* jobvr,
+ const char* sense, const integer_t* n, fcomplex_t* a,
+ const integer_t* lda, fcomplex_t* w, fcomplex_t* vl,
+ const integer_t* ldvl, fcomplex_t* vr, const integer_t* ldvr,
         integer_t* ilo, integer_t* ihi, float* scale, float* abnrm,
         float* rconde, float* rcondv, fcomplex_t* work,
- integer_t const* lwork, float* rwork, integer_t* info );
-void LAPACK_ZGEEVX( char const* balanc, char const* jobvl, char const* jobvr,
- char const* sense, integer_t const* n, dcomplex_t* a,
- integer_t const* lda, dcomplex_t* w, dcomplex_t* vl,
- integer_t const* ldvl, dcomplex_t* vr, integer_t const* ldvr,
+ const integer_t* lwork, float* rwork, integer_t* info );
+void LAPACK_ZGEEVX( const char* balanc, const char* jobvl, const char* jobvr,
+ const char* sense, const integer_t* n, dcomplex_t* a,
+ const integer_t* lda, dcomplex_t* w, dcomplex_t* vl,
+ const integer_t* ldvl, dcomplex_t* vr, const integer_t* ldvr,
         integer_t* ilo, integer_t* ihi, double* scale, double* abnrm,
         double* rconde, double* rcondv, dcomplex_t* work,
- integer_t const* lwork, double* rwork, integer_t* info );
+ const integer_t* lwork, double* rwork, integer_t* info );
 
 // Value-type variants of gesdd
-void LAPACK_SGESDD( char const* jobz, integer_t const* m, integer_t const* n,
- float* a, integer_t const* lda, float* s, float* u,
- integer_t const* ldu, float* vt, integer_t const* ldvt, float* work,
- integer_t const* lwork, integer_t* iwork, integer_t* info );
-void LAPACK_DGESDD( char const* jobz, integer_t const* m, integer_t const* n,
- double* a, integer_t const* lda, double* s, double* u,
- integer_t const* ldu, double* vt, integer_t const* ldvt, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t* info );
-void LAPACK_CGESDD( char const* jobz, integer_t const* m, integer_t const* n,
- fcomplex_t* a, integer_t const* lda, float* s, fcomplex_t* u,
- integer_t const* ldu, fcomplex_t* vt, integer_t const* ldvt,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
- integer_t* iwork, integer_t* info );
-void LAPACK_ZGESDD( char const* jobz, integer_t const* m, integer_t const* n,
- dcomplex_t* a, integer_t const* lda, double* s, dcomplex_t* u,
- integer_t const* ldu, dcomplex_t* vt, integer_t const* ldvt,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
+void LAPACK_SGESDD( const char* jobz, const integer_t* m, const integer_t* n,
+ float* a, const integer_t* lda, float* s, float* u,
+ const integer_t* ldu, float* vt, const integer_t* ldvt, float* work,
+ const integer_t* lwork, integer_t* iwork, integer_t* info );
+void LAPACK_DGESDD( const char* jobz, const integer_t* m, const integer_t* n,
+ double* a, const integer_t* lda, double* s, double* u,
+ const integer_t* ldu, double* vt, const integer_t* ldvt, double* work,
+ const integer_t* lwork, integer_t* iwork, integer_t* info );
+void LAPACK_CGESDD( const char* jobz, const integer_t* m, const integer_t* n,
+ fcomplex_t* a, const integer_t* lda, float* s, fcomplex_t* u,
+ const integer_t* ldu, fcomplex_t* vt, const integer_t* ldvt,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
+ integer_t* iwork, integer_t* info );
+void LAPACK_ZGESDD( const char* jobz, const integer_t* m, const integer_t* n,
+ dcomplex_t* a, const integer_t* lda, double* s, dcomplex_t* u,
+ const integer_t* ldu, dcomplex_t* vt, const integer_t* ldvt,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
         integer_t* iwork, integer_t* info );
 
 // Value-type variants of gesvd
-void LAPACK_SGESVD( char const* jobu, char const* jobvt, integer_t const* m,
- integer_t const* n, float* a, integer_t const* lda, float* s,
- float* u, integer_t const* ldu, float* vt, integer_t const* ldvt,
- float* work, integer_t const* lwork, integer_t* info );
-void LAPACK_DGESVD( char const* jobu, char const* jobvt, integer_t const* m,
- integer_t const* n, double* a, integer_t const* lda, double* s,
- double* u, integer_t const* ldu, double* vt, integer_t const* ldvt,
- double* work, integer_t const* lwork, integer_t* info );
-void LAPACK_CGESVD( char const* jobu, char const* jobvt, integer_t const* m,
- integer_t const* n, fcomplex_t* a, integer_t const* lda, float* s,
- fcomplex_t* u, integer_t const* ldu, fcomplex_t* vt,
- integer_t const* ldvt, fcomplex_t* work, integer_t const* lwork,
+void LAPACK_SGESVD( const char* jobu, const char* jobvt, const integer_t* m,
+ const integer_t* n, float* a, const integer_t* lda, float* s,
+ float* u, const integer_t* ldu, float* vt, const integer_t* ldvt,
+ float* work, const integer_t* lwork, integer_t* info );
+void LAPACK_DGESVD( const char* jobu, const char* jobvt, const integer_t* m,
+ const integer_t* n, double* a, const integer_t* lda, double* s,
+ double* u, const integer_t* ldu, double* vt, const integer_t* ldvt,
+ double* work, const integer_t* lwork, integer_t* info );
+void LAPACK_CGESVD( const char* jobu, const char* jobvt, const integer_t* m,
+ const integer_t* n, fcomplex_t* a, const integer_t* lda, float* s,
+ fcomplex_t* u, const integer_t* ldu, fcomplex_t* vt,
+ const integer_t* ldvt, fcomplex_t* work, const integer_t* lwork,
         float* rwork, integer_t* info );
-void LAPACK_ZGESVD( char const* jobu, char const* jobvt, integer_t const* m,
- integer_t const* n, dcomplex_t* a, integer_t const* lda, double* s,
- dcomplex_t* u, integer_t const* ldu, dcomplex_t* vt,
- integer_t const* ldvt, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_ZGESVD( const char* jobu, const char* jobvt, const integer_t* m,
+ const integer_t* n, dcomplex_t* a, const integer_t* lda, double* s,
+ dcomplex_t* u, const integer_t* ldu, dcomplex_t* vt,
+ const integer_t* ldvt, dcomplex_t* work, const integer_t* lwork,
         double* rwork, integer_t* info );
 
 // Value-type variants of hbev
-void LAPACK_CHBEV( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* kd, fcomplex_t* ab, integer_t const* ldab, float* w,
- fcomplex_t* z, integer_t const* ldz, fcomplex_t* work, float* rwork,
- integer_t* info );
-void LAPACK_ZHBEV( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* kd, dcomplex_t* ab, integer_t const* ldab, double* w,
- dcomplex_t* z, integer_t const* ldz, dcomplex_t* work, double* rwork,
+void LAPACK_CHBEV( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* kd, fcomplex_t* ab, const integer_t* ldab, float* w,
+ fcomplex_t* z, const integer_t* ldz, fcomplex_t* work, float* rwork,
+ integer_t* info );
+void LAPACK_ZHBEV( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* kd, dcomplex_t* ab, const integer_t* ldab, double* w,
+ dcomplex_t* z, const integer_t* ldz, dcomplex_t* work, double* rwork,
         integer_t* info );
 
 // Value-type variants of hbevd
-void LAPACK_CHBEVD( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* kd, fcomplex_t* ab, integer_t const* ldab, float* w,
- fcomplex_t* z, integer_t const* ldz, fcomplex_t* work,
- integer_t const* lwork, float* rwork, integer_t const* lrwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_ZHBEVD( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* kd, dcomplex_t* ab, integer_t const* ldab, double* w,
- dcomplex_t* z, integer_t const* ldz, dcomplex_t* work,
- integer_t const* lwork, double* rwork, integer_t const* lrwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
+void LAPACK_CHBEVD( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* kd, fcomplex_t* ab, const integer_t* ldab, float* w,
+ fcomplex_t* z, const integer_t* ldz, fcomplex_t* work,
+ const integer_t* lwork, float* rwork, const integer_t* lrwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_ZHBEVD( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* kd, dcomplex_t* ab, const integer_t* ldab, double* w,
+ dcomplex_t* z, const integer_t* ldz, dcomplex_t* work,
+ const integer_t* lwork, double* rwork, const integer_t* lrwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
 
 // Value-type variants of hbevx
-void LAPACK_CHBEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, integer_t const* kd, fcomplex_t* ab,
- integer_t const* ldab, fcomplex_t* q, integer_t const* ldq,
- float const* vl, float const* vu, integer_t const* il,
- integer_t const* iu, float const* abstol, integer_t* m, float* w,
- fcomplex_t* z, integer_t const* ldz, fcomplex_t* work, float* rwork,
+void LAPACK_CHBEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, const integer_t* kd, fcomplex_t* ab,
+ const integer_t* ldab, fcomplex_t* q, const integer_t* ldq,
+ const float* vl, const float* vu, const integer_t* il,
+ const integer_t* iu, const float* abstol, integer_t* m, float* w,
+ fcomplex_t* z, const integer_t* ldz, fcomplex_t* work, float* rwork,
         integer_t* iwork, integer_t* ifail, integer_t* info );
-void LAPACK_ZHBEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, integer_t const* kd, dcomplex_t* ab,
- integer_t const* ldab, dcomplex_t* q, integer_t const* ldq,
- double const* vl, double const* vu, integer_t const* il,
- integer_t const* iu, double const* abstol, integer_t* m, double* w,
- dcomplex_t* z, integer_t const* ldz, dcomplex_t* work, double* rwork,
+void LAPACK_ZHBEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, const integer_t* kd, dcomplex_t* ab,
+ const integer_t* ldab, dcomplex_t* q, const integer_t* ldq,
+ const double* vl, const double* vu, const integer_t* il,
+ const integer_t* iu, const double* abstol, integer_t* m, double* w,
+ dcomplex_t* z, const integer_t* ldz, dcomplex_t* work, double* rwork,
         integer_t* iwork, integer_t* ifail, integer_t* info );
 
 // Value-type variants of heev
-void LAPACK_CHEEV( char const* jobz, char const* uplo, integer_t const* n,
- fcomplex_t* a, integer_t const* lda, float* w, fcomplex_t* work,
- integer_t const* lwork, float* rwork, integer_t* info );
-void LAPACK_ZHEEV( char const* jobz, char const* uplo, integer_t const* n,
- dcomplex_t* a, integer_t const* lda, double* w, dcomplex_t* work,
- integer_t const* lwork, double* rwork, integer_t* info );
+void LAPACK_CHEEV( const char* jobz, const char* uplo, const integer_t* n,
+ fcomplex_t* a, const integer_t* lda, float* w, fcomplex_t* work,
+ const integer_t* lwork, float* rwork, integer_t* info );
+void LAPACK_ZHEEV( const char* jobz, const char* uplo, const integer_t* n,
+ dcomplex_t* a, const integer_t* lda, double* w, dcomplex_t* work,
+ const integer_t* lwork, double* rwork, integer_t* info );
 
 // Value-type variants of heevd
-void LAPACK_CHEEVD( char const* jobz, char const* uplo, integer_t const* n,
- fcomplex_t* a, integer_t const* lda, float* w, fcomplex_t* work,
- integer_t const* lwork, float* rwork, integer_t const* lrwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_ZHEEVD( char const* jobz, char const* uplo, integer_t const* n,
- dcomplex_t* a, integer_t const* lda, double* w, dcomplex_t* work,
- integer_t const* lwork, double* rwork, integer_t const* lrwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
+void LAPACK_CHEEVD( const char* jobz, const char* uplo, const integer_t* n,
+ fcomplex_t* a, const integer_t* lda, float* w, fcomplex_t* work,
+ const integer_t* lwork, float* rwork, const integer_t* lrwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_ZHEEVD( const char* jobz, const char* uplo, const integer_t* n,
+ dcomplex_t* a, const integer_t* lda, double* w, dcomplex_t* work,
+ const integer_t* lwork, double* rwork, const integer_t* lrwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
 
 // Value-type variants of heevr
-void LAPACK_CHEEVR( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, fcomplex_t* a, integer_t const* lda,
- float const* vl, float const* vu, integer_t const* il,
- integer_t const* iu, float const* abstol, integer_t* m, float* w,
- fcomplex_t* z, integer_t const* ldz, integer_t* isuppz,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
- integer_t const* lrwork, integer_t* iwork, integer_t const* liwork,
- integer_t* info );
-void LAPACK_ZHEEVR( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, dcomplex_t* a, integer_t const* lda,
- double const* vl, double const* vu, integer_t const* il,
- integer_t const* iu, double const* abstol, integer_t* m, double* w,
- dcomplex_t* z, integer_t const* ldz, integer_t* isuppz,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
- integer_t const* lrwork, integer_t* iwork, integer_t const* liwork,
+void LAPACK_CHEEVR( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, fcomplex_t* a, const integer_t* lda,
+ const float* vl, const float* vu, const integer_t* il,
+ const integer_t* iu, const float* abstol, integer_t* m, float* w,
+ fcomplex_t* z, const integer_t* ldz, integer_t* isuppz,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
+ const integer_t* lrwork, integer_t* iwork, const integer_t* liwork,
+ integer_t* info );
+void LAPACK_ZHEEVR( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, dcomplex_t* a, const integer_t* lda,
+ const double* vl, const double* vu, const integer_t* il,
+ const integer_t* iu, const double* abstol, integer_t* m, double* w,
+ dcomplex_t* z, const integer_t* ldz, integer_t* isuppz,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
+ const integer_t* lrwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
 
 // Value-type variants of heevx
-void LAPACK_CHEEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, fcomplex_t* a, integer_t const* lda,
- float const* vl, float const* vu, integer_t const* il,
- integer_t const* iu, float const* abstol, integer_t* m, float* w,
- fcomplex_t* z, integer_t const* ldz, fcomplex_t* work,
- integer_t const* lwork, float* rwork, integer_t* iwork,
+void LAPACK_CHEEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, fcomplex_t* a, const integer_t* lda,
+ const float* vl, const float* vu, const integer_t* il,
+ const integer_t* iu, const float* abstol, integer_t* m, float* w,
+ fcomplex_t* z, const integer_t* ldz, fcomplex_t* work,
+ const integer_t* lwork, float* rwork, integer_t* iwork,
         integer_t* ifail, integer_t* info );
-void LAPACK_ZHEEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, dcomplex_t* a, integer_t const* lda,
- double const* vl, double const* vu, integer_t const* il,
- integer_t const* iu, double const* abstol, integer_t* m, double* w,
- dcomplex_t* z, integer_t const* ldz, dcomplex_t* work,
- integer_t const* lwork, double* rwork, integer_t* iwork,
+void LAPACK_ZHEEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, dcomplex_t* a, const integer_t* lda,
+ const double* vl, const double* vu, const integer_t* il,
+ const integer_t* iu, const double* abstol, integer_t* m, double* w,
+ dcomplex_t* z, const integer_t* ldz, dcomplex_t* work,
+ const integer_t* lwork, double* rwork, integer_t* iwork,
         integer_t* ifail, integer_t* info );
 
 // Value-type variants of hpev
-void LAPACK_CHPEV( char const* jobz, char const* uplo, integer_t const* n,
- fcomplex_t* ap, float* w, fcomplex_t* z, integer_t const* ldz,
+void LAPACK_CHPEV( const char* jobz, const char* uplo, const integer_t* n,
+ fcomplex_t* ap, float* w, fcomplex_t* z, const integer_t* ldz,
         fcomplex_t* work, float* rwork, integer_t* info );
-void LAPACK_ZHPEV( char const* jobz, char const* uplo, integer_t const* n,
- dcomplex_t* ap, double* w, dcomplex_t* z, integer_t const* ldz,
+void LAPACK_ZHPEV( const char* jobz, const char* uplo, const integer_t* n,
+ dcomplex_t* ap, double* w, dcomplex_t* z, const integer_t* ldz,
         dcomplex_t* work, double* rwork, integer_t* info );
 
 // Value-type variants of hpevd
-void LAPACK_CHPEVD( char const* jobz, char const* uplo, integer_t const* n,
- fcomplex_t* ap, float* w, fcomplex_t* z, integer_t const* ldz,
- fcomplex_t* work, integer_t const* lwork, float* rwork,
- integer_t const* lrwork, integer_t* iwork, integer_t const* liwork,
- integer_t* info );
-void LAPACK_ZHPEVD( char const* jobz, char const* uplo, integer_t const* n,
- dcomplex_t* ap, double* w, dcomplex_t* z, integer_t const* ldz,
- dcomplex_t* work, integer_t const* lwork, double* rwork,
- integer_t const* lrwork, integer_t* iwork, integer_t const* liwork,
+void LAPACK_CHPEVD( const char* jobz, const char* uplo, const integer_t* n,
+ fcomplex_t* ap, float* w, fcomplex_t* z, const integer_t* ldz,
+ fcomplex_t* work, const integer_t* lwork, float* rwork,
+ const integer_t* lrwork, integer_t* iwork, const integer_t* liwork,
+ integer_t* info );
+void LAPACK_ZHPEVD( const char* jobz, const char* uplo, const integer_t* n,
+ dcomplex_t* ap, double* w, dcomplex_t* z, const integer_t* ldz,
+ dcomplex_t* work, const integer_t* lwork, double* rwork,
+ const integer_t* lrwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
 
 // Value-type variants of hpevx
-void LAPACK_CHPEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, fcomplex_t* ap, float const* vl, float const* vu,
- integer_t const* il, integer_t const* iu, float const* abstol,
- integer_t* m, float* w, fcomplex_t* z, integer_t const* ldz,
+void LAPACK_CHPEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, fcomplex_t* ap, const float* vl, const float* vu,
+ const integer_t* il, const integer_t* iu, const float* abstol,
+ integer_t* m, float* w, fcomplex_t* z, const integer_t* ldz,
         fcomplex_t* work, float* rwork, integer_t* iwork, integer_t* ifail,
         integer_t* info );
-void LAPACK_ZHPEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, dcomplex_t* ap, double const* vl,
- double const* vu, integer_t const* il, integer_t const* iu,
- double const* abstol, integer_t* m, double* w, dcomplex_t* z,
- integer_t const* ldz, dcomplex_t* work, double* rwork,
+void LAPACK_ZHPEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, dcomplex_t* ap, const double* vl,
+ const double* vu, const integer_t* il, const integer_t* iu,
+ const double* abstol, integer_t* m, double* w, dcomplex_t* z,
+ const integer_t* ldz, dcomplex_t* work, double* rwork,
         integer_t* iwork, integer_t* ifail, integer_t* info );
 
 // Value-type variants of sbev
-void LAPACK_SSBEV( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* kd, float* ab, integer_t const* ldab, float* w,
- float* z, integer_t const* ldz, float* work, integer_t* info );
-void LAPACK_DSBEV( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* kd, double* ab, integer_t const* ldab, double* w,
- double* z, integer_t const* ldz, double* work, integer_t* info );
+void LAPACK_SSBEV( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* kd, float* ab, const integer_t* ldab, float* w,
+ float* z, const integer_t* ldz, float* work, integer_t* info );
+void LAPACK_DSBEV( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* kd, double* ab, const integer_t* ldab, double* w,
+ double* z, const integer_t* ldz, double* work, integer_t* info );
 
 // Value-type variants of sbevd
-void LAPACK_SSBEVD( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* kd, float* ab, integer_t const* ldab, float* w,
- float* z, integer_t const* ldz, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_DSBEVD( char const* jobz, char const* uplo, integer_t const* n,
- integer_t const* kd, double* ab, integer_t const* ldab, double* w,
- double* z, integer_t const* ldz, double* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
+void LAPACK_SSBEVD( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* kd, float* ab, const integer_t* ldab, float* w,
+ float* z, const integer_t* ldz, float* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_DSBEVD( const char* jobz, const char* uplo, const integer_t* n,
+ const integer_t* kd, double* ab, const integer_t* ldab, double* w,
+ double* z, const integer_t* ldz, double* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
 
 // Value-type variants of sbevx
-void LAPACK_SSBEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, integer_t const* kd, float* ab,
- integer_t const* ldab, float* q, integer_t const* ldq,
- float const* vl, float const* vu, integer_t const* il,
- integer_t const* iu, float const* abstol, integer_t* m, float* w,
- float* z, integer_t const* ldz, float* work, integer_t* iwork,
+void LAPACK_SSBEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, const integer_t* kd, float* ab,
+ const integer_t* ldab, float* q, const integer_t* ldq,
+ const float* vl, const float* vu, const integer_t* il,
+ const integer_t* iu, const float* abstol, integer_t* m, float* w,
+ float* z, const integer_t* ldz, float* work, integer_t* iwork,
         integer_t* ifail, integer_t* info );
-void LAPACK_DSBEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, integer_t const* kd, double* ab,
- integer_t const* ldab, double* q, integer_t const* ldq,
- double const* vl, double const* vu, integer_t const* il,
- integer_t const* iu, double const* abstol, integer_t* m, double* w,
- double* z, integer_t const* ldz, double* work, integer_t* iwork,
+void LAPACK_DSBEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, const integer_t* kd, double* ab,
+ const integer_t* ldab, double* q, const integer_t* ldq,
+ const double* vl, const double* vu, const integer_t* il,
+ const integer_t* iu, const double* abstol, integer_t* m, double* w,
+ double* z, const integer_t* ldz, double* work, integer_t* iwork,
         integer_t* ifail, integer_t* info );
 
 // Value-type variants of spev
-void LAPACK_SSPEV( char const* jobz, char const* uplo, integer_t const* n,
- float* ap, float* w, float* z, integer_t const* ldz, float* work,
+void LAPACK_SSPEV( const char* jobz, const char* uplo, const integer_t* n,
+ float* ap, float* w, float* z, const integer_t* ldz, float* work,
         integer_t* info );
-void LAPACK_DSPEV( char const* jobz, char const* uplo, integer_t const* n,
- double* ap, double* w, double* z, integer_t const* ldz, double* work,
+void LAPACK_DSPEV( const char* jobz, const char* uplo, const integer_t* n,
+ double* ap, double* w, double* z, const integer_t* ldz, double* work,
         integer_t* info );
 
 // Value-type variants of spevd
-void LAPACK_SSPEVD( char const* jobz, char const* uplo, integer_t const* n,
- float* ap, float* w, float* z, integer_t const* ldz, float* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
- integer_t* info );
-void LAPACK_DSPEVD( char const* jobz, char const* uplo, integer_t const* n,
- double* ap, double* w, double* z, integer_t const* ldz, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+void LAPACK_SSPEVD( const char* jobz, const char* uplo, const integer_t* n,
+ float* ap, float* w, float* z, const integer_t* ldz, float* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
+ integer_t* info );
+void LAPACK_DSPEVD( const char* jobz, const char* uplo, const integer_t* n,
+ double* ap, double* w, double* z, const integer_t* ldz, double* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
 
 // Value-type variants of spevx
-void LAPACK_SSPEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, float* ap, float const* vl, float const* vu,
- integer_t const* il, integer_t const* iu, float const* abstol,
- integer_t* m, float* w, float* z, integer_t const* ldz, float* work,
+void LAPACK_SSPEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, float* ap, const float* vl, const float* vu,
+ const integer_t* il, const integer_t* iu, const float* abstol,
+ integer_t* m, float* w, float* z, const integer_t* ldz, float* work,
         integer_t* iwork, integer_t* ifail, integer_t* info );
-void LAPACK_DSPEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, double* ap, double const* vl, double const* vu,
- integer_t const* il, integer_t const* iu, double const* abstol,
- integer_t* m, double* w, double* z, integer_t const* ldz,
+void LAPACK_DSPEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, double* ap, const double* vl, const double* vu,
+ const integer_t* il, const integer_t* iu, const double* abstol,
+ integer_t* m, double* w, double* z, const integer_t* ldz,
         double* work, integer_t* iwork, integer_t* ifail, integer_t* info );
 
 // Value-type variants of stev
-void LAPACK_SSTEV( char const* jobz, integer_t const* n, float* d, float* e,
- float* z, integer_t const* ldz, float* work, integer_t* info );
-void LAPACK_DSTEV( char const* jobz, integer_t const* n, double* d, double* e,
- double* z, integer_t const* ldz, double* work, integer_t* info );
+void LAPACK_SSTEV( const char* jobz, const integer_t* n, float* d, float* e,
+ float* z, const integer_t* ldz, float* work, integer_t* info );
+void LAPACK_DSTEV( const char* jobz, const integer_t* n, double* d, double* e,
+ double* z, const integer_t* ldz, double* work, integer_t* info );
 
 // Value-type variants of stevd
-void LAPACK_SSTEVD( char const* jobz, integer_t const* n, float* d, float* e,
- float* z, integer_t const* ldz, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_DSTEVD( char const* jobz, integer_t const* n, double* d,
- double* e, double* z, integer_t const* ldz, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+void LAPACK_SSTEVD( const char* jobz, const integer_t* n, float* d, float* e,
+ float* z, const integer_t* ldz, float* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_DSTEVD( const char* jobz, const integer_t* n, double* d,
+ double* e, double* z, const integer_t* ldz, double* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
 
 // Value-type variants of stevr
-void LAPACK_SSTEVR( char const* jobz, char const* range, integer_t const* n,
- float* d, float* e, float const* vl, float const* vu,
- integer_t const* il, integer_t const* iu, float const* abstol,
- integer_t* m, float* w, float* z, integer_t const* ldz,
- integer_t* isuppz, float* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
-void LAPACK_DSTEVR( char const* jobz, char const* range, integer_t const* n,
- double* d, double* e, double const* vl, double const* vu,
- integer_t const* il, integer_t const* iu, double const* abstol,
- integer_t* m, double* w, double* z, integer_t const* ldz,
- integer_t* isuppz, double* work, integer_t const* lwork,
- integer_t* iwork, integer_t const* liwork, integer_t* info );
+void LAPACK_SSTEVR( const char* jobz, const char* range, const integer_t* n,
+ float* d, float* e, const float* vl, const float* vu,
+ const integer_t* il, const integer_t* iu, const float* abstol,
+ integer_t* m, float* w, float* z, const integer_t* ldz,
+ integer_t* isuppz, float* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
+void LAPACK_DSTEVR( const char* jobz, const char* range, const integer_t* n,
+ double* d, double* e, const double* vl, const double* vu,
+ const integer_t* il, const integer_t* iu, const double* abstol,
+ integer_t* m, double* w, double* z, const integer_t* ldz,
+ integer_t* isuppz, double* work, const integer_t* lwork,
+ integer_t* iwork, const integer_t* liwork, integer_t* info );
 
 // Value-type variants of stevx
-void LAPACK_SSTEVX( char const* jobz, char const* range, integer_t const* n,
- float* d, float* e, float const* vl, float const* vu,
- integer_t const* il, integer_t const* iu, float const* abstol,
- integer_t* m, float* w, float* z, integer_t const* ldz, float* work,
+void LAPACK_SSTEVX( const char* jobz, const char* range, const integer_t* n,
+ float* d, float* e, const float* vl, const float* vu,
+ const integer_t* il, const integer_t* iu, const float* abstol,
+ integer_t* m, float* w, float* z, const integer_t* ldz, float* work,
         integer_t* iwork, integer_t* ifail, integer_t* info );
-void LAPACK_DSTEVX( char const* jobz, char const* range, integer_t const* n,
- double* d, double* e, double const* vl, double const* vu,
- integer_t const* il, integer_t const* iu, double const* abstol,
- integer_t* m, double* w, double* z, integer_t const* ldz,
+void LAPACK_DSTEVX( const char* jobz, const char* range, const integer_t* n,
+ double* d, double* e, const double* vl, const double* vu,
+ const integer_t* il, const integer_t* iu, const double* abstol,
+ integer_t* m, double* w, double* z, const integer_t* ldz,
         double* work, integer_t* iwork, integer_t* ifail, integer_t* info );
 
 // Value-type variants of syev
-void LAPACK_SSYEV( char const* jobz, char const* uplo, integer_t const* n,
- float* a, integer_t const* lda, float* w, float* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_DSYEV( char const* jobz, char const* uplo, integer_t const* n,
- double* a, integer_t const* lda, double* w, double* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_SSYEV( const char* jobz, const char* uplo, const integer_t* n,
+ float* a, const integer_t* lda, float* w, float* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_DSYEV( const char* jobz, const char* uplo, const integer_t* n,
+ double* a, const integer_t* lda, double* w, double* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of syevd
-void LAPACK_SSYEVD( char const* jobz, char const* uplo, integer_t const* n,
- float* a, integer_t const* lda, float* w, float* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
- integer_t* info );
-void LAPACK_DSYEVD( char const* jobz, char const* uplo, integer_t const* n,
- double* a, integer_t const* lda, double* w, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+void LAPACK_SSYEVD( const char* jobz, const char* uplo, const integer_t* n,
+ float* a, const integer_t* lda, float* w, float* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
+ integer_t* info );
+void LAPACK_DSYEVD( const char* jobz, const char* uplo, const integer_t* n,
+ double* a, const integer_t* lda, double* w, double* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
 
 // Value-type variants of syevr
-void LAPACK_SSYEVR( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, float* a, integer_t const* lda, float const* vl,
- float const* vu, integer_t const* il, integer_t const* iu,
- float const* abstol, integer_t* m, float* w, float* z,
- integer_t const* ldz, integer_t* isuppz, float* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
- integer_t* info );
-void LAPACK_DSYEVR( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, double* a, integer_t const* lda, double const* vl,
- double const* vu, integer_t const* il, integer_t const* iu,
- double const* abstol, integer_t* m, double* w, double* z,
- integer_t const* ldz, integer_t* isuppz, double* work,
- integer_t const* lwork, integer_t* iwork, integer_t const* liwork,
+void LAPACK_SSYEVR( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, float* a, const integer_t* lda, const float* vl,
+ const float* vu, const integer_t* il, const integer_t* iu,
+ const float* abstol, integer_t* m, float* w, float* z,
+ const integer_t* ldz, integer_t* isuppz, float* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
+ integer_t* info );
+void LAPACK_DSYEVR( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, double* a, const integer_t* lda, const double* vl,
+ const double* vu, const integer_t* il, const integer_t* iu,
+ const double* abstol, integer_t* m, double* w, double* z,
+ const integer_t* ldz, integer_t* isuppz, double* work,
+ const integer_t* lwork, integer_t* iwork, const integer_t* liwork,
         integer_t* info );
 
 // Value-type variants of syevx
-void LAPACK_SSYEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, float* a, integer_t const* lda, float const* vl,
- float const* vu, integer_t const* il, integer_t const* iu,
- float const* abstol, integer_t* m, float* w, float* z,
- integer_t const* ldz, float* work, integer_t const* lwork,
+void LAPACK_SSYEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, float* a, const integer_t* lda, const float* vl,
+ const float* vu, const integer_t* il, const integer_t* iu,
+ const float* abstol, integer_t* m, float* w, float* z,
+ const integer_t* ldz, float* work, const integer_t* lwork,
         integer_t* iwork, integer_t* ifail, integer_t* info );
-void LAPACK_DSYEVX( char const* jobz, char const* range, char const* uplo,
- integer_t const* n, double* a, integer_t const* lda, double const* vl,
- double const* vu, integer_t const* il, integer_t const* iu,
- double const* abstol, integer_t* m, double* w, double* z,
- integer_t const* ldz, double* work, integer_t const* lwork,
+void LAPACK_DSYEVX( const char* jobz, const char* range, const char* uplo,
+ const integer_t* n, double* a, const integer_t* lda, const double* vl,
+ const double* vu, const integer_t* il, const integer_t* iu,
+ const double* abstol, integer_t* m, double* w, double* z,
+ const integer_t* ldz, double* work, const integer_t* lwork,
         integer_t* iwork, integer_t* ifail, integer_t* info );
 
 // Value-type variants of gels
-void LAPACK_SGELS( char const* trans, integer_t const* m, integer_t const* n,
- integer_t const* nrhs, float* a, integer_t const* lda, float* b,
- integer_t const* ldb, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DGELS( char const* trans, integer_t const* m, integer_t const* n,
- integer_t const* nrhs, double* a, integer_t const* lda, double* b,
- integer_t const* ldb, double* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_CGELS( char const* trans, integer_t const* m, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb, fcomplex_t* work,
- integer_t const* lwork, integer_t* info );
-void LAPACK_ZGELS( char const* trans, integer_t const* m, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb, dcomplex_t* work,
- integer_t const* lwork, integer_t* info );
+void LAPACK_SGELS( const char* trans, const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, float* a, const integer_t* lda, float* b,
+ const integer_t* ldb, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DGELS( const char* trans, const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, double* a, const integer_t* lda, double* b,
+ const integer_t* ldb, double* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_CGELS( const char* trans, const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb, fcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
+void LAPACK_ZGELS( const char* trans, const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb, dcomplex_t* work,
+ const integer_t* lwork, integer_t* info );
 
 // Value-type variants of gelsd
-void LAPACK_SGELSD( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, float const* a, integer_t const* lda, float* b,
- integer_t const* ldb, float* s, float const* rcond, integer_t* rank,
- float* work, integer_t const* lwork, integer_t* iwork,
- integer_t* info );
-void LAPACK_DGELSD( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, double const* a, integer_t const* lda,
- double* b, integer_t const* ldb, double* s, double const* rcond,
- integer_t* rank, double* work, integer_t const* lwork,
- integer_t* iwork, integer_t* info );
-void LAPACK_CGELSD( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb, float* s, float const* rcond,
- integer_t* rank, fcomplex_t* work, integer_t const* lwork,
+void LAPACK_SGELSD( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, const float* a, const integer_t* lda, float* b,
+ const integer_t* ldb, float* s, const float* rcond, integer_t* rank,
+ float* work, const integer_t* lwork, integer_t* iwork,
+ integer_t* info );
+void LAPACK_DGELSD( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, const double* a, const integer_t* lda,
+ double* b, const integer_t* ldb, double* s, const double* rcond,
+ integer_t* rank, double* work, const integer_t* lwork,
+ integer_t* iwork, integer_t* info );
+void LAPACK_CGELSD( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb, float* s, const float* rcond,
+ integer_t* rank, fcomplex_t* work, const integer_t* lwork,
         float* rwork, integer_t* iwork, integer_t* info );
-void LAPACK_ZGELSD( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, dcomplex_t const* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb, double* s, double const* rcond,
- integer_t* rank, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_ZGELSD( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, const dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb, double* s, const double* rcond,
+ integer_t* rank, dcomplex_t* work, const integer_t* lwork,
         double* rwork, integer_t* iwork, integer_t* info );
 
 // Value-type variants of gelss
-void LAPACK_SGELSS( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, float* a, integer_t const* lda, float* b,
- integer_t const* ldb, float* s, float const* rcond, integer_t* rank,
- float* work, integer_t const* lwork, integer_t* info );
-void LAPACK_DGELSS( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, double* a, integer_t const* lda, double* b,
- integer_t const* ldb, double* s, double const* rcond, integer_t* rank,
- double* work, integer_t const* lwork, integer_t* info );
-void LAPACK_CGELSS( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb, float* s, float const* rcond,
- integer_t* rank, fcomplex_t* work, integer_t const* lwork,
+void LAPACK_SGELSS( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, float* a, const integer_t* lda, float* b,
+ const integer_t* ldb, float* s, const float* rcond, integer_t* rank,
+ float* work, const integer_t* lwork, integer_t* info );
+void LAPACK_DGELSS( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, double* a, const integer_t* lda, double* b,
+ const integer_t* ldb, double* s, const double* rcond, integer_t* rank,
+ double* work, const integer_t* lwork, integer_t* info );
+void LAPACK_CGELSS( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb, float* s, const float* rcond,
+ integer_t* rank, fcomplex_t* work, const integer_t* lwork,
         float* rwork, integer_t* info );
-void LAPACK_ZGELSS( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb, double* s, double const* rcond,
- integer_t* rank, dcomplex_t* work, integer_t const* lwork,
+void LAPACK_ZGELSS( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb, double* s, const double* rcond,
+ integer_t* rank, dcomplex_t* work, const integer_t* lwork,
         double* rwork, integer_t* info );
 
 // Value-type variants of gelsy
-void LAPACK_SGELSY( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, float* a, integer_t const* lda, float* b,
- integer_t const* ldb, integer_t* jpvt, float const* rcond,
- integer_t* rank, float* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_DGELSY( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, double* a, integer_t const* lda, double* b,
- integer_t const* ldb, integer_t* jpvt, double const* rcond,
- integer_t* rank, double* work, integer_t const* lwork,
- integer_t* info );
-void LAPACK_CGELSY( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, fcomplex_t* a, integer_t const* lda,
- fcomplex_t* b, integer_t const* ldb, integer_t* jpvt,
- float const* rcond, integer_t* rank, fcomplex_t* work,
- integer_t const* lwork, float* rwork, integer_t* info );
-void LAPACK_ZGELSY( integer_t const* m, integer_t const* n,
- integer_t const* nrhs, dcomplex_t* a, integer_t const* lda,
- dcomplex_t* b, integer_t const* ldb, integer_t* jpvt,
- double const* rcond, integer_t* rank, dcomplex_t* work,
- integer_t const* lwork, double* rwork, integer_t* info );
+void LAPACK_SGELSY( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, float* a, const integer_t* lda, float* b,
+ const integer_t* ldb, integer_t* jpvt, const float* rcond,
+ integer_t* rank, float* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_DGELSY( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, double* a, const integer_t* lda, double* b,
+ const integer_t* ldb, integer_t* jpvt, const double* rcond,
+ integer_t* rank, double* work, const integer_t* lwork,
+ integer_t* info );
+void LAPACK_CGELSY( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, fcomplex_t* a, const integer_t* lda,
+ fcomplex_t* b, const integer_t* ldb, integer_t* jpvt,
+ const float* rcond, integer_t* rank, fcomplex_t* work,
+ const integer_t* lwork, float* rwork, integer_t* info );
+void LAPACK_ZGELSY( const integer_t* m, const integer_t* n,
+ const integer_t* nrhs, dcomplex_t* a, const integer_t* lda,
+ dcomplex_t* b, const integer_t* ldb, integer_t* jpvt,
+ const double* rcond, integer_t* rank, dcomplex_t* work,
+ const integer_t* lwork, double* rwork, integer_t* info );
 
 // Value-type variants of lalsd
-void LAPACK_SLALSD( char const* uplo, integer_t const* smlsiz,
- integer_t const* n, integer_t const* nrhs, float* d, float* e,
- float* b, integer_t const* ldb, float const* rcond, integer_t* rank,
+void LAPACK_SLALSD( const char* uplo, const integer_t* smlsiz,
+ const integer_t* n, const integer_t* nrhs, float* d, float* e,
+ float* b, const integer_t* ldb, const float* rcond, integer_t* rank,
         float* work, integer_t* iwork, integer_t* info );
-void LAPACK_DLALSD( char const* uplo, integer_t const* smlsiz,
- integer_t const* n, integer_t const* nrhs, double* d, double* e,
- double* b, integer_t const* ldb, double const* rcond, integer_t* rank,
+void LAPACK_DLALSD( const char* uplo, const integer_t* smlsiz,
+ const integer_t* n, const integer_t* nrhs, double* d, double* e,
+ double* b, const integer_t* ldb, const double* rcond, integer_t* rank,
         double* work, integer_t* iwork, integer_t* info );
-void LAPACK_CLALSD( char const* uplo, integer_t const* smlsiz,
- integer_t const* n, integer_t const* nrhs, float* d, float* e,
- fcomplex_t* b, integer_t const* ldb, float const* rcond,
+void LAPACK_CLALSD( const char* uplo, const integer_t* smlsiz,
+ const integer_t* n, const integer_t* nrhs, float* d, float* e,
+ fcomplex_t* b, const integer_t* ldb, const float* rcond,
         integer_t* rank, fcomplex_t* work, float* rwork, integer_t* iwork,
         integer_t* info );
-void LAPACK_ZLALSD( char const* uplo, integer_t const* smlsiz,
- integer_t const* n, integer_t const* nrhs, double* d, double* e,
- dcomplex_t* b, integer_t const* ldb, double const* rcond,
+void LAPACK_ZLALSD( const char* uplo, const integer_t* smlsiz,
+ const integer_t* n, const integer_t* nrhs, double* d, double* e,
+ dcomplex_t* b, const integer_t* ldb, const double* rcond,
         integer_t* rank, dcomplex_t* work, double* rwork, integer_t* iwork,
         integer_t* info );
 

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/cgesv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/cgesv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/cgesv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,12 +33,12 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void cgesv( integer_t const n, integer_t const nrhs,
- traits::complex_d* a, integer_t const lda, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, traits::complex_d* work,
- traits::complex_f* swork, double* rwork, integer_t& iter,
- integer_t& info ) {
+ inline void cgesv( const integer_t n, const integer_t nrhs,
+ traits::complex_d* a, const integer_t lda, integer_t* ipiv,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx,
+ traits::complex_d* work, traits::complex_f* swork, double* rwork,
+ integer_t& iter, integer_t& info ) {
         LAPACK_ZCGESV( &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(x), &ldx,
                 traits::complex_ptr(work), traits::complex_ptr(swork), rwork,
@@ -56,9 +56,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename WORK, typename SWORK, typename RWORK >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- integer_t& iter, integer_t& info, detail::workspace3< WORK, SWORK,
- RWORK > work ) {
+ static void invoke( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, integer_t& iter, integer_t& info, detail::workspace3<
+ WORK, SWORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -95,8 +95,9 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename MatrixB,
             typename MatrixX >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- integer_t& iter, integer_t& info, minimal_workspace work ) {
+ static void invoke( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, integer_t& iter, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         traits::detail::array< value_type > tmp_swork( min_size_swork(
@@ -111,8 +112,9 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename MatrixB,
             typename MatrixX >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- integer_t& iter, integer_t& info, optimal_workspace work ) {
+ static void invoke( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, integer_t& iter, integer_t& info,
+ optimal_workspace work ) {
         invoke( a, ipiv, b, x, iter, info, minimal_workspace() );
     }
 
@@ -120,12 +122,12 @@
         return n*nrhs;
     }
 
- static integer_t min_size_swork( integer_t const n,
- integer_t const nrhs ) {
+ static integer_t min_size_swork( const integer_t n,
+ const integer_t nrhs ) {
         return n*(n+nrhs);
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -134,7 +136,7 @@
 // template function to call cgesv
 template< typename MatrixA, typename VectorIPIV, typename MatrixB,
         typename MatrixX, typename Workspace >
-inline integer_t cgesv( MatrixA& a, VectorIPIV& ipiv, MatrixB& b,
+inline integer_t cgesv( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b,
         MatrixX& x, integer_t& iter, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -145,7 +147,7 @@
 // template function to call cgesv, default workspace type
 template< typename MatrixA, typename VectorIPIV, typename MatrixB,
         typename MatrixX >
-inline integer_t cgesv( MatrixA& a, VectorIPIV& ipiv, MatrixB& b,
+inline integer_t cgesv( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b,
         MatrixX& x, integer_t& iter ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/cposv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/cposv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/cposv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,12 +33,12 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void cposv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, traits::complex_d* work,
- traits::complex_f* swork, double* rwork, integer_t& iter,
- integer_t& info ) {
+ inline void cposv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_d* a, const integer_t lda,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx,
+ traits::complex_d* work, traits::complex_f* swork, double* rwork,
+ integer_t& iter, integer_t& info ) {
         LAPACK_ZCPOSV( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(x), &ldx,
                 traits::complex_ptr(work), traits::complex_ptr(swork), rwork,
@@ -56,8 +56,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixX,
             typename WORK, typename SWORK, typename RWORK >
- static void invoke( MatrixA& a, MatrixB& b, MatrixX& x, integer_t& iter,
- integer_t& info, detail::workspace3< WORK, SWORK, RWORK > work ) {
+ static void invoke( MatrixA& a, const MatrixB& b, MatrixX& x,
+ integer_t& iter, integer_t& info, detail::workspace3< WORK, SWORK,
+ RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -93,8 +94,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixX >
- static void invoke( MatrixA& a, MatrixB& b, MatrixX& x, integer_t& iter,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( MatrixA& a, const MatrixB& b, MatrixX& x,
+ integer_t& iter, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         traits::detail::array< value_type > tmp_swork( min_size_swork(
@@ -108,8 +109,8 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixX >
- static void invoke( MatrixA& a, MatrixB& b, MatrixX& x, integer_t& iter,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( MatrixA& a, const MatrixB& b, MatrixX& x,
+ integer_t& iter, integer_t& info, optimal_workspace work ) {
         invoke( a, b, x, iter, info, minimal_workspace() );
     }
 
@@ -117,12 +118,12 @@
         $MIN_SIZE
     }
 
- static integer_t min_size_swork( integer_t const n,
- integer_t const nrhs ) {
+ static integer_t min_size_swork( const integer_t n,
+ const integer_t nrhs ) {
         return n*(n+nrhs);
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -131,7 +132,7 @@
 // template function to call cposv
 template< typename MatrixA, typename MatrixB, typename MatrixX,
         typename Workspace >
-inline integer_t cposv( MatrixA& a, MatrixB& b, MatrixX& x,
+inline integer_t cposv( MatrixA& a, const MatrixB& b, MatrixX& x,
         integer_t& iter, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -141,7 +142,7 @@
 
 // template function to call cposv, default workspace type
 template< typename MatrixA, typename MatrixB, typename MatrixX >
-inline integer_t cposv( MatrixA& a, MatrixB& b, MatrixX& x,
+inline integer_t cposv( MatrixA& a, const MatrixB& b, MatrixX& x,
         integer_t& iter ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gbsv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gbsv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gbsv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -32,29 +32,29 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gbsv( integer_t const n, integer_t const kl,
- integer_t const ku, integer_t const nrhs, float* ab,
- integer_t const ldab, integer_t* ipiv, float* b,
- integer_t const ldb, integer_t& info ) {
+ inline void gbsv( const integer_t n, const integer_t kl,
+ const integer_t ku, const integer_t nrhs, float* ab,
+ const integer_t ldab, integer_t* ipiv, float* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_SGBSV( &n, &kl, &ku, &nrhs, ab, &ldab, ipiv, b, &ldb, &info );
     }
- inline void gbsv( integer_t const n, integer_t const kl,
- integer_t const ku, integer_t const nrhs, double* ab,
- integer_t const ldab, integer_t* ipiv, double* b,
- integer_t const ldb, integer_t& info ) {
+ inline void gbsv( const integer_t n, const integer_t kl,
+ const integer_t ku, const integer_t nrhs, double* ab,
+ const integer_t ldab, integer_t* ipiv, double* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_DGBSV( &n, &kl, &ku, &nrhs, ab, &ldab, ipiv, b, &ldb, &info );
     }
- inline void gbsv( integer_t const n, integer_t const kl,
- integer_t const ku, integer_t const nrhs, traits::complex_f* ab,
- integer_t const ldab, integer_t* ipiv, traits::complex_f* b,
- integer_t const ldb, integer_t& info ) {
+ inline void gbsv( const integer_t n, const integer_t kl,
+ const integer_t ku, const integer_t nrhs, traits::complex_f* ab,
+ const integer_t ldab, integer_t* ipiv, traits::complex_f* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_CGBSV( &n, &kl, &ku, &nrhs, traits::complex_ptr(ab), &ldab,
                 ipiv, traits::complex_ptr(b), &ldb, &info );
     }
- inline void gbsv( integer_t const n, integer_t const kl,
- integer_t const ku, integer_t const nrhs, traits::complex_d* ab,
- integer_t const ldab, integer_t* ipiv, traits::complex_d* b,
- integer_t const ldb, integer_t& info ) {
+ inline void gbsv( const integer_t n, const integer_t kl,
+ const integer_t ku, const integer_t nrhs, traits::complex_d* ab,
+ const integer_t ldab, integer_t* ipiv, traits::complex_d* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_ZGBSV( &n, &kl, &ku, &nrhs, traits::complex_ptr(ab), &ldab,
                 ipiv, traits::complex_ptr(b), &ldb, &info );
     }
@@ -86,7 +86,7 @@
 
     // templated specialization
     template< typename MatrixAB, typename VectorIPIV, typename MatrixB >
- static void invoke( integer_t const kl, integer_t const ku, MatrixAB& ab,
+ static void invoke( const integer_t kl, const integer_t ku, MatrixAB& ab,
             VectorIPIV& ipiv, MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
@@ -111,7 +111,7 @@
 
 // template function to call gbsv
 template< typename MatrixAB, typename VectorIPIV, typename MatrixB >
-inline integer_t gbsv( integer_t const kl, integer_t const ku,
+inline integer_t gbsv( const integer_t kl, const integer_t ku,
         MatrixAB& ab, VectorIPIV& ipiv, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gbsvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gbsvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gbsvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,34 +36,34 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gbsvx( char const fact, char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- float* ab, integer_t const ldab, float* afb,
- integer_t const ldafb, integer_t* ipiv, char& equed, float* r,
- float* c, float* b, integer_t const ldb, float* x,
- integer_t const ldx, float& rcond, float* ferr, float* berr,
+ inline void gbsvx( const char fact, const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ float* ab, const integer_t ldab, float* afb,
+ const integer_t ldafb, integer_t* ipiv, char& equed, float* r,
+ float* c, float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float& rcond, float* ferr, float* berr,
             float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SGBSVX( &fact, &trans, &n, &kl, &ku, &nrhs, ab, &ldab, afb,
                 &ldafb, ipiv, &equed, r, c, b, &ldb, x, &ldx, &rcond, ferr,
                 berr, work, iwork, &info );
     }
- inline void gbsvx( char const fact, char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- double* ab, integer_t const ldab, double* afb,
- integer_t const ldafb, integer_t* ipiv, char& equed, double* r,
- double* c, double* b, integer_t const ldb, double* x,
- integer_t const ldx, double& rcond, double* ferr, double* berr,
+ inline void gbsvx( const char fact, const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ double* ab, const integer_t ldab, double* afb,
+ const integer_t ldafb, integer_t* ipiv, char& equed, double* r,
+ double* c, double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double& rcond, double* ferr, double* berr,
             double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DGBSVX( &fact, &trans, &n, &kl, &ku, &nrhs, ab, &ldab, afb,
                 &ldafb, ipiv, &equed, r, c, b, &ldb, x, &ldx, &rcond, ferr,
                 berr, work, iwork, &info );
     }
- inline void gbsvx( char const fact, char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- traits::complex_f* ab, integer_t const ldab,
- traits::complex_f* afb, integer_t const ldafb, integer_t* ipiv,
+ inline void gbsvx( const char fact, const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ traits::complex_f* ab, const integer_t ldab,
+ traits::complex_f* afb, const integer_t ldafb, integer_t* ipiv,
             char& equed, float* r, float* c, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* x, integer_t const ldx,
+ const integer_t ldb, traits::complex_f* x, const integer_t ldx,
             float& rcond, float* ferr, float* berr, traits::complex_f* work,
             float* rwork, integer_t& info ) {
         LAPACK_CGBSVX( &fact, &trans, &n, &kl, &ku, &nrhs,
@@ -72,12 +72,12 @@
                 traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void gbsvx( char const fact, char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, integer_t const nrhs,
- traits::complex_d* ab, integer_t const ldab,
- traits::complex_d* afb, integer_t const ldafb, integer_t* ipiv,
+ inline void gbsvx( const char fact, const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, const integer_t nrhs,
+ traits::complex_d* ab, const integer_t ldab,
+ traits::complex_d* afb, const integer_t ldafb, integer_t* ipiv,
             char& equed, double* r, double* c, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* x, integer_t const ldx,
+ const integer_t ldb, traits::complex_d* x, const integer_t ldx,
             double& rcond, double* ferr, double* berr,
             traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZGBSVX( &fact, &trans, &n, &kl, &ku, &nrhs,
@@ -104,8 +104,8 @@
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename IWORK >
- static void invoke( char const fact, char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab,
             MatrixAFB& afb, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -166,8 +166,8 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab,
             MatrixAFB& afb, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -182,8 +182,8 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab,
             MatrixAFB& afb, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -192,11 +192,11 @@
                 rcond, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -213,8 +213,8 @@
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename RWORK >
- static void invoke( char const fact, char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab,
             MatrixAFB& afb, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -272,8 +272,8 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab,
             MatrixAFB& afb, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -288,8 +288,8 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, integer_t const n,
- integer_t const kl, integer_t const ku, MatrixAB& ab,
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const integer_t kl, const integer_t ku, MatrixAB& ab,
             MatrixAFB& afb, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -298,11 +298,11 @@
                 rcond, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -313,8 +313,8 @@
         typename VectorR, typename VectorC, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR,
         typename Workspace >
-inline integer_t gbsvx( char const fact, char const trans,
- integer_t const n, integer_t const kl, integer_t const ku,
+inline integer_t gbsvx( const char fact, const char trans,
+ const integer_t n, const integer_t kl, const integer_t ku,
         MatrixAB& ab, MatrixAFB& afb, VectorIPIV& ipiv, char& equed,
         VectorR& r, VectorC& c, MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<
@@ -331,8 +331,8 @@
 template< typename MatrixAB, typename MatrixAFB, typename VectorIPIV,
         typename VectorR, typename VectorC, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR >
-inline integer_t gbsvx( char const fact, char const trans,
- integer_t const n, integer_t const kl, integer_t const ku,
+inline integer_t gbsvx( const char fact, const char trans,
+ const integer_t n, const integer_t kl, const integer_t ku,
         MatrixAB& ab, MatrixAFB& afb, VectorIPIV& ipiv, char& equed,
         VectorR& r, VectorC& c, MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gees.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gees.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gees.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,38 +37,38 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gees( char const jobvs, char const sort, logical_t* select,
- integer_t const n, float* a, integer_t const lda, integer_t& sdim,
- float* wr, float* wi, float* vs, integer_t const ldvs,
- float* work, integer_t const lwork, logical_t* bwork,
+ inline void gees( const char jobvs, const char sort, logical_t* select,
+ const integer_t n, float* a, const integer_t lda, integer_t& sdim,
+ float* wr, float* wi, float* vs, const integer_t ldvs,
+ float* work, const integer_t lwork, logical_t* bwork,
             integer_t& info ) {
         LAPACK_SGEES( &jobvs, &sort, &select, &n, a, &lda, &sdim, wr, wi, vs,
                 &ldvs, work, &lwork, bwork, &info );
     }
- inline void gees( char const jobvs, char const sort, logical_t* select,
- integer_t const n, double* a, integer_t const lda,
+ inline void gees( const char jobvs, const char sort, logical_t* select,
+ const integer_t n, double* a, const integer_t lda,
             integer_t& sdim, double* wr, double* wi, double* vs,
- integer_t const ldvs, double* work, integer_t const lwork,
+ const integer_t ldvs, double* work, const integer_t lwork,
             logical_t* bwork, integer_t& info ) {
         LAPACK_DGEES( &jobvs, &sort, &select, &n, a, &lda, &sdim, wr, wi, vs,
                 &ldvs, work, &lwork, bwork, &info );
     }
- inline void gees( char const jobvs, char const sort, logical_t* select,
- integer_t const n, traits::complex_f* a, integer_t const lda,
+ inline void gees( const char jobvs, const char sort, logical_t* select,
+ const integer_t n, traits::complex_f* a, const integer_t lda,
             integer_t& sdim, traits::complex_f* w, traits::complex_f* vs,
- integer_t const ldvs, traits::complex_f* work,
- integer_t const lwork, float* rwork, logical_t* bwork,
+ const integer_t ldvs, traits::complex_f* work,
+ const integer_t lwork, float* rwork, logical_t* bwork,
             integer_t& info ) {
         LAPACK_CGEES( &jobvs, &sort, &select, &n, traits::complex_ptr(a),
                 &lda, &sdim, traits::complex_ptr(w), traits::complex_ptr(vs),
                 &ldvs, traits::complex_ptr(work), &lwork, rwork, bwork,
                 &info );
     }
- inline void gees( char const jobvs, char const sort, logical_t* select,
- integer_t const n, traits::complex_d* a, integer_t const lda,
+ inline void gees( const char jobvs, const char sort, logical_t* select,
+ const integer_t n, traits::complex_d* a, const integer_t lda,
             integer_t& sdim, traits::complex_d* w, traits::complex_d* vs,
- integer_t const ldvs, traits::complex_d* work,
- integer_t const lwork, double* rwork, logical_t* bwork,
+ const integer_t ldvs, traits::complex_d* work,
+ const integer_t lwork, double* rwork, logical_t* bwork,
             integer_t& info ) {
         LAPACK_ZGEES( &jobvs, &sort, &select, &n, traits::complex_ptr(a),
                 &lda, &sdim, traits::complex_ptr(w), traits::complex_ptr(vs),
@@ -91,7 +91,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorWR, typename VectorWI,
             typename MatrixVS, typename WORK, typename BWORK >
- static void invoke( char const jobvs, char const sort, logical_t* select,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
             MatrixA& a, integer_t& sdim, VectorWR& wr, VectorWI& wi,
             MatrixVS& vs, integer_t& info, detail::workspace2< WORK,
             BWORK > work ) {
@@ -129,7 +129,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorWR, typename VectorWI,
             typename MatrixVS >
- static void invoke( char const jobvs, char const sort, logical_t* select,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
             MatrixA& a, integer_t& sdim, VectorWR& wr, VectorWI& wi,
             MatrixVS& vs, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
@@ -143,7 +143,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorWR, typename VectorWI,
             typename MatrixVS >
- static void invoke( char const jobvs, char const sort, logical_t* select,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
             MatrixA& a, integer_t& sdim, VectorWR& wr, VectorWI& wi,
             MatrixVS& vs, integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
@@ -161,11 +161,11 @@
                 workspace( tmp_work, tmp_bwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 3*n );
     }
 
- static integer_t min_size_bwork( integer_t const n, char const sort ) {
+ static integer_t min_size_bwork( const integer_t n, const char sort ) {
         if ( sort == 'N' )
             return 0;
         else
@@ -183,7 +183,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixVS,
             typename WORK, typename RWORK, typename BWORK >
- static void invoke( char const jobvs, char const sort, logical_t* select,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
             MatrixA& a, integer_t& sdim, VectorW& w, MatrixVS& vs,
             integer_t& info, detail::workspace3< WORK, RWORK, BWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -217,7 +217,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixVS >
- static void invoke( char const jobvs, char const sort, logical_t* select,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
             MatrixA& a, integer_t& sdim, VectorW& w, MatrixVS& vs,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -232,7 +232,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixVS >
- static void invoke( char const jobvs, char const sort, logical_t* select,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
             MatrixA& a, integer_t& sdim, VectorW& w, MatrixVS& vs,
             integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
@@ -252,15 +252,15 @@
                 workspace( tmp_work, tmp_rwork, tmp_bwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_bwork( integer_t const n, char const sort ) {
+ static integer_t min_size_bwork( const integer_t n, const char sort ) {
         if ( sort == 'N' )
             return 0;
         else
@@ -272,7 +272,7 @@
 // template function to call gees
 template< typename MatrixA, typename VectorWR, typename VectorWI,
         typename MatrixVS, typename Workspace >
-inline integer_t gees( char const jobvs, char const sort,
+inline integer_t gees( const char jobvs, const char sort,
         logical_t* select, MatrixA& a, integer_t& sdim, VectorWR& wr,
         VectorWI& wi, MatrixVS& vs, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -285,7 +285,7 @@
 // template function to call gees, default workspace type
 template< typename MatrixA, typename VectorWR, typename VectorWI,
         typename MatrixVS >
-inline integer_t gees( char const jobvs, char const sort,
+inline integer_t gees( const char jobvs, const char sort,
         logical_t* select, MatrixA& a, integer_t& sdim, VectorWR& wr,
         VectorWI& wi, MatrixVS& vs ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -297,7 +297,7 @@
 // template function to call gees
 template< typename MatrixA, typename VectorW, typename MatrixVS,
         typename Workspace >
-inline integer_t gees( char const jobvs, char const sort,
+inline integer_t gees( const char jobvs, const char sort,
         logical_t* select, MatrixA& a, integer_t& sdim, VectorW& w,
         MatrixVS& vs, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -309,7 +309,7 @@
 
 // template function to call gees, default workspace type
 template< typename MatrixA, typename VectorW, typename MatrixVS >
-inline integer_t gees( char const jobvs, char const sort,
+inline integer_t gees( const char jobvs, const char sort,
         logical_t* select, MatrixA& a, integer_t& sdim, VectorW& w,
         MatrixVS& vs ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geesx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geesx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geesx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,42 +37,42 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void geesx( char const jobvs, char const sort, logical_t* select,
- char const sense, integer_t const n, float* a,
- integer_t const lda, integer_t& sdim, float* wr, float* wi,
- float* vs, integer_t const ldvs, float& rconde, float& rcondv,
- float* work, integer_t const lwork, integer_t* iwork,
- integer_t const liwork, logical_t* bwork, integer_t& info ) {
+ inline void geesx( const char jobvs, const char sort, logical_t* select,
+ const char sense, const integer_t n, float* a,
+ const integer_t lda, integer_t& sdim, float* wr, float* wi,
+ float* vs, const integer_t ldvs, float& rconde, float& rcondv,
+ float* work, const integer_t lwork, integer_t* iwork,
+ const integer_t liwork, logical_t* bwork, integer_t& info ) {
         LAPACK_SGEESX( &jobvs, &sort, &select, &sense, &n, a, &lda, &sdim, wr,
                 wi, vs, &ldvs, &rconde, &rcondv, work, &lwork, iwork, &liwork,
                 bwork, &info );
     }
- inline void geesx( char const jobvs, char const sort, logical_t* select,
- char const sense, integer_t const n, double* a,
- integer_t const lda, integer_t& sdim, double* wr, double* wi,
- double* vs, integer_t const ldvs, double& rconde, double& rcondv,
- double* work, integer_t const lwork, integer_t* iwork,
- integer_t const liwork, logical_t* bwork, integer_t& info ) {
+ inline void geesx( const char jobvs, const char sort, logical_t* select,
+ const char sense, const integer_t n, double* a,
+ const integer_t lda, integer_t& sdim, double* wr, double* wi,
+ double* vs, const integer_t ldvs, double& rconde, double& rcondv,
+ double* work, const integer_t lwork, integer_t* iwork,
+ const integer_t liwork, logical_t* bwork, integer_t& info ) {
         LAPACK_DGEESX( &jobvs, &sort, &select, &sense, &n, a, &lda, &sdim, wr,
                 wi, vs, &ldvs, &rconde, &rcondv, work, &lwork, iwork, &liwork,
                 bwork, &info );
     }
- inline void geesx( char const jobvs, char const sort, logical_t* select,
- char const sense, integer_t const n, traits::complex_f* a,
- integer_t const lda, integer_t& sdim, traits::complex_f* w,
- traits::complex_f* vs, integer_t const ldvs, float& rconde,
- float& rcondv, traits::complex_f* work, integer_t const lwork,
+ inline void geesx( const char jobvs, const char sort, logical_t* select,
+ const char sense, const integer_t n, traits::complex_f* a,
+ const integer_t lda, integer_t& sdim, traits::complex_f* w,
+ traits::complex_f* vs, const integer_t ldvs, float& rconde,
+ float& rcondv, traits::complex_f* work, const integer_t lwork,
             float* rwork, logical_t* bwork, integer_t& info ) {
         LAPACK_CGEESX( &jobvs, &sort, &select, &sense, &n,
                 traits::complex_ptr(a), &lda, &sdim, traits::complex_ptr(w),
                 traits::complex_ptr(vs), &ldvs, &rconde, &rcondv,
                 traits::complex_ptr(work), &lwork, rwork, bwork, &info );
     }
- inline void geesx( char const jobvs, char const sort, logical_t* select,
- char const sense, integer_t const n, traits::complex_d* a,
- integer_t const lda, integer_t& sdim, traits::complex_d* w,
- traits::complex_d* vs, integer_t const ldvs, double& rconde,
- double& rcondv, traits::complex_d* work, integer_t const lwork,
+ inline void geesx( const char jobvs, const char sort, logical_t* select,
+ const char sense, const integer_t n, traits::complex_d* a,
+ const integer_t lda, integer_t& sdim, traits::complex_d* w,
+ traits::complex_d* vs, const integer_t ldvs, double& rconde,
+ double& rcondv, traits::complex_d* work, const integer_t lwork,
             double* rwork, logical_t* bwork, integer_t& info ) {
         LAPACK_ZGEESX( &jobvs, &sort, &select, &sense, &n,
                 traits::complex_ptr(a), &lda, &sdim, traits::complex_ptr(w),
@@ -95,8 +95,8 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorWR, typename VectorWI,
             typename MatrixVS, typename WORK, typename IWORK, typename BWORK >
- static void invoke( char const jobvs, char const sort, logical_t* select,
- char const sense, MatrixA& a, integer_t& sdim, VectorWR& wr,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
+ const char sense, MatrixA& a, integer_t& sdim, VectorWR& wr,
             VectorWI& wi, MatrixVS& vs, real_type& rconde, real_type& rcondv,
             integer_t& info, detail::workspace3< WORK, IWORK, BWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -141,8 +141,8 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorWR, typename VectorWI,
             typename MatrixVS >
- static void invoke( char const jobvs, char const sort, logical_t* select,
- char const sense, MatrixA& a, integer_t& sdim, VectorWR& wr,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
+ const char sense, MatrixA& a, integer_t& sdim, VectorWR& wr,
             VectorWI& wi, MatrixVS& vs, real_type& rconde, real_type& rcondv,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
@@ -158,8 +158,8 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorWR, typename VectorWI,
             typename MatrixVS >
- static void invoke( char const jobvs, char const sort, logical_t* select,
- char const sense, MatrixA& a, integer_t& sdim, VectorWR& wr,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
+ const char sense, MatrixA& a, integer_t& sdim, VectorWR& wr,
             VectorWI& wi, MatrixVS& vs, real_type& rconde, real_type& rcondv,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
@@ -180,21 +180,21 @@
                 rcondv, info, workspace( tmp_work, tmp_iwork, tmp_bwork ) );
     }
 
- static integer_t min_size_work( integer_t const n, char const sense ) {
+ static integer_t min_size_work( const integer_t n, const char sense ) {
         if ( sense == 'N' )
             return std::max( 1, 3*n );
         else
             return std::max( 1, n+n*n/2 );
     }
 
- static integer_t min_size_iwork( integer_t const n, char const sense ) {
+ static integer_t min_size_iwork( const integer_t n, const char sense ) {
         if ( sense == 'N' || sense == 'E' )
             return 1;
         else
             return std::max( 1, n*n/4 );
     }
 
- static integer_t min_size_bwork( integer_t const n, char const sort ) {
+ static integer_t min_size_bwork( const integer_t n, const char sort ) {
         if ( sort == 'N' )
             return 0;
         else
@@ -212,8 +212,8 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixVS,
             typename WORK, typename RWORK, typename BWORK >
- static void invoke( char const jobvs, char const sort, logical_t* select,
- char const sense, MatrixA& a, integer_t& sdim, VectorW& w,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
+ const char sense, MatrixA& a, integer_t& sdim, VectorW& w,
             MatrixVS& vs, real_type& rconde, real_type& rcondv,
             integer_t& info, detail::workspace3< WORK, RWORK, BWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -250,8 +250,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixVS >
- static void invoke( char const jobvs, char const sort, logical_t* select,
- char const sense, MatrixA& a, integer_t& sdim, VectorW& w,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
+ const char sense, MatrixA& a, integer_t& sdim, VectorW& w,
             MatrixVS& vs, real_type& rconde, real_type& rcondv,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -266,8 +266,8 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixVS >
- static void invoke( char const jobvs, char const sort, logical_t* select,
- char const sense, MatrixA& a, integer_t& sdim, VectorW& w,
+ static void invoke( const char jobvs, const char sort, logical_t* select,
+ const char sense, MatrixA& a, integer_t& sdim, VectorW& w,
             MatrixVS& vs, real_type& rconde, real_type& rcondv,
             integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
@@ -288,18 +288,18 @@
                 info, workspace( tmp_work, tmp_rwork, tmp_bwork ) );
     }
 
- static integer_t min_size_work( integer_t const n, char const sense ) {
+ static integer_t min_size_work( const integer_t n, const char sense ) {
         if ( sense == 'N' )
             return std::max( 1, 2*n );
         else
             return std::max( 1, n*n/2 );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_bwork( integer_t const n, char const sort ) {
+ static integer_t min_size_bwork( const integer_t n, const char sort ) {
         if ( sort == 'N' )
             return 0;
         else
@@ -311,8 +311,8 @@
 // template function to call geesx
 template< typename MatrixA, typename VectorWR, typename VectorWI,
         typename MatrixVS, typename Workspace >
-inline integer_t geesx( char const jobvs, char const sort,
- logical_t* select, char const sense, MatrixA& a, integer_t& sdim,
+inline integer_t geesx( const char jobvs, const char sort,
+ logical_t* select, const char sense, MatrixA& a, integer_t& sdim,
         VectorWR& wr, VectorWI& wi, MatrixVS& vs,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rconde,
@@ -328,8 +328,8 @@
 // template function to call geesx, default workspace type
 template< typename MatrixA, typename VectorWR, typename VectorWI,
         typename MatrixVS >
-inline integer_t geesx( char const jobvs, char const sort,
- logical_t* select, char const sense, MatrixA& a, integer_t& sdim,
+inline integer_t geesx( const char jobvs, const char sort,
+ logical_t* select, const char sense, MatrixA& a, integer_t& sdim,
         VectorWR& wr, VectorWI& wi, MatrixVS& vs,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rconde,
@@ -344,8 +344,8 @@
 // template function to call geesx
 template< typename MatrixA, typename VectorW, typename MatrixVS,
         typename Workspace >
-inline integer_t geesx( char const jobvs, char const sort,
- logical_t* select, char const sense, MatrixA& a, integer_t& sdim,
+inline integer_t geesx( const char jobvs, const char sort,
+ logical_t* select, const char sense, MatrixA& a, integer_t& sdim,
         VectorW& w, MatrixVS& vs, typename traits::type_traits<
         typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rconde,
@@ -360,8 +360,8 @@
 
 // template function to call geesx, default workspace type
 template< typename MatrixA, typename VectorW, typename MatrixVS >
-inline integer_t geesx( char const jobvs, char const sort,
- logical_t* select, char const sense, MatrixA& a, integer_t& sdim,
+inline integer_t geesx( const char jobvs, const char sort,
+ logical_t* select, const char sense, MatrixA& a, integer_t& sdim,
         VectorW& w, MatrixVS& vs, typename traits::type_traits<
         typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rconde,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geev.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geev.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geev.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,37 +37,37 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void geev( char const jobvl, char const jobvr, integer_t const n,
- float* a, integer_t const lda, float* wr, float* wi, float* vl,
- integer_t const ldvl, float* vr, integer_t const ldvr,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void geev( const char jobvl, const char jobvr, const integer_t n,
+ float* a, const integer_t lda, float* wr, float* wi, float* vl,
+ const integer_t ldvl, float* vr, const integer_t ldvr,
+ float* work, const integer_t lwork, integer_t& info ) {
         LAPACK_SGEEV( &jobvl, &jobvr, &n, a, &lda, wr, wi, vl, &ldvl, vr,
                 &ldvr, work, &lwork, &info );
     }
- inline void geev( char const jobvl, char const jobvr, integer_t const n,
- double* a, integer_t const lda, double* wr, double* wi,
- double* vl, integer_t const ldvl, double* vr,
- integer_t const ldvr, double* work, integer_t const lwork,
+ inline void geev( const char jobvl, const char jobvr, const integer_t n,
+ double* a, const integer_t lda, double* wr, double* wi,
+ double* vl, const integer_t ldvl, double* vr,
+ const integer_t ldvr, double* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_DGEEV( &jobvl, &jobvr, &n, a, &lda, wr, wi, vl, &ldvl, vr,
                 &ldvr, work, &lwork, &info );
     }
- inline void geev( char const jobvl, char const jobvr, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* w,
- traits::complex_f* vl, integer_t const ldvl,
- traits::complex_f* vr, integer_t const ldvr,
- traits::complex_f* work, integer_t const lwork, float* rwork,
+ inline void geev( const char jobvl, const char jobvr, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* w,
+ traits::complex_f* vl, const integer_t ldvl,
+ traits::complex_f* vr, const integer_t ldvr,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
             integer_t& info ) {
         LAPACK_CGEEV( &jobvl, &jobvr, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(w), traits::complex_ptr(vl), &ldvl,
                 traits::complex_ptr(vr), &ldvr, traits::complex_ptr(work),
                 &lwork, rwork, &info );
     }
- inline void geev( char const jobvl, char const jobvr, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* w,
- traits::complex_d* vl, integer_t const ldvl,
- traits::complex_d* vr, integer_t const ldvr,
- traits::complex_d* work, integer_t const lwork, double* rwork,
+ inline void geev( const char jobvl, const char jobvr, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* w,
+ traits::complex_d* vl, const integer_t ldvl,
+ traits::complex_d* vr, const integer_t ldvr,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
             integer_t& info ) {
         LAPACK_ZGEEV( &jobvl, &jobvr, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(w), traits::complex_ptr(vl), &ldvl,
@@ -90,7 +90,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorWR, typename VectorWI,
             typename MatrixVL, typename MatrixVR, typename WORK >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             VectorWR& wr, VectorWI& wi, MatrixVL& vl, MatrixVR& vr,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -128,7 +128,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorWR, typename VectorWI,
             typename MatrixVL, typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             VectorWR& wr, VectorWI& wi, MatrixVL& vl, MatrixVR& vr,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( jobvl,
@@ -139,7 +139,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorWR, typename VectorWI,
             typename MatrixVL, typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             VectorWR& wr, VectorWI& wi, MatrixVL& vl, MatrixVR& vr,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
@@ -154,8 +154,8 @@
         invoke( jobvl, jobvr, a, wr, wi, vl, vr, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( char const jobvl, char const jobvr,
- integer_t const n ) {
+ static integer_t min_size_work( const char jobvl, const char jobvr,
+ const integer_t n ) {
         if ( jobvl == 'V' || jobvr == 'V' )
             return std::max( 1, 4*n );
         else
@@ -173,7 +173,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixVL,
             typename MatrixVR, typename WORK, typename RWORK >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             VectorW& w, MatrixVL& vl, MatrixVR& vr, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -209,7 +209,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixVL,
             typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             VectorW& w, MatrixVL& vl, MatrixVR& vr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -223,7 +223,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixVL,
             typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             VectorW& w, MatrixVL& vl, MatrixVR& vr, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
@@ -241,11 +241,11 @@
                 tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 2*n;
     }
 };
@@ -254,7 +254,7 @@
 // template function to call geev
 template< typename MatrixA, typename VectorWR, typename VectorWI,
         typename MatrixVL, typename MatrixVR, typename Workspace >
-inline integer_t geev( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t geev( const char jobvl, const char jobvr, MatrixA& a,
         VectorWR& wr, VectorWI& wi, MatrixVL& vl, MatrixVR& vr,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -267,7 +267,7 @@
 // template function to call geev, default workspace type
 template< typename MatrixA, typename VectorWR, typename VectorWI,
         typename MatrixVL, typename MatrixVR >
-inline integer_t geev( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t geev( const char jobvl, const char jobvr, MatrixA& a,
         VectorWR& wr, VectorWI& wi, MatrixVL& vl, MatrixVR& vr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -278,7 +278,7 @@
 // template function to call geev
 template< typename MatrixA, typename VectorW, typename MatrixVL,
         typename MatrixVR, typename Workspace >
-inline integer_t geev( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t geev( const char jobvl, const char jobvr, MatrixA& a,
         VectorW& w, MatrixVL& vl, MatrixVR& vr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -290,7 +290,7 @@
 // template function to call geev, default workspace type
 template< typename MatrixA, typename VectorW, typename MatrixVL,
         typename MatrixVR >
-inline integer_t geev( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t geev( const char jobvl, const char jobvr, MatrixA& a,
         VectorW& w, MatrixVL& vl, MatrixVR& vr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geevx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geevx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/geevx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,48 +37,48 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void geevx( char const balanc, char const jobvl, char const jobvr,
- char const sense, integer_t const n, float* a,
- integer_t const lda, float* wr, float* wi, float* vl,
- integer_t const ldvl, float* vr, integer_t const ldvr,
+ inline void geevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, const integer_t n, float* a,
+ const integer_t lda, float* wr, float* wi, float* vl,
+ const integer_t ldvl, float* vr, const integer_t ldvr,
             integer_t& ilo, integer_t& ihi, float* scale, float& abnrm,
- float* rconde, float* rcondv, float* work, integer_t const lwork,
+ float* rconde, float* rcondv, float* work, const integer_t lwork,
             integer_t* iwork, integer_t& info ) {
         LAPACK_SGEEVX( &balanc, &jobvl, &jobvr, &sense, &n, a, &lda, wr, wi,
                 vl, &ldvl, vr, &ldvr, &ilo, &ihi, scale, &abnrm, rconde,
                 rcondv, work, &lwork, iwork, &info );
     }
- inline void geevx( char const balanc, char const jobvl, char const jobvr,
- char const sense, integer_t const n, double* a,
- integer_t const lda, double* wr, double* wi, double* vl,
- integer_t const ldvl, double* vr, integer_t const ldvr,
+ inline void geevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, const integer_t n, double* a,
+ const integer_t lda, double* wr, double* wi, double* vl,
+ const integer_t ldvl, double* vr, const integer_t ldvr,
             integer_t& ilo, integer_t& ihi, double* scale, double& abnrm,
             double* rconde, double* rcondv, double* work,
- integer_t const lwork, integer_t* iwork, integer_t& info ) {
+ const integer_t lwork, integer_t* iwork, integer_t& info ) {
         LAPACK_DGEEVX( &balanc, &jobvl, &jobvr, &sense, &n, a, &lda, wr, wi,
                 vl, &ldvl, vr, &ldvr, &ilo, &ihi, scale, &abnrm, rconde,
                 rcondv, work, &lwork, iwork, &info );
     }
- inline void geevx( char const balanc, char const jobvl, char const jobvr,
- char const sense, integer_t const n, traits::complex_f* a,
- integer_t const lda, traits::complex_f* w, traits::complex_f* vl,
- integer_t const ldvl, traits::complex_f* vr, integer_t const ldvr,
+ inline void geevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, const integer_t n, traits::complex_f* a,
+ const integer_t lda, traits::complex_f* w, traits::complex_f* vl,
+ const integer_t ldvl, traits::complex_f* vr, const integer_t ldvr,
             integer_t& ilo, integer_t& ihi, float* scale, float& abnrm,
             float* rconde, float* rcondv, traits::complex_f* work,
- integer_t const lwork, float* rwork, integer_t& info ) {
+ const integer_t lwork, float* rwork, integer_t& info ) {
         LAPACK_CGEEVX( &balanc, &jobvl, &jobvr, &sense, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(w),
                 traits::complex_ptr(vl), &ldvl, traits::complex_ptr(vr),
                 &ldvr, &ilo, &ihi, scale, &abnrm, rconde, rcondv,
                 traits::complex_ptr(work), &lwork, rwork, &info );
     }
- inline void geevx( char const balanc, char const jobvl, char const jobvr,
- char const sense, integer_t const n, traits::complex_d* a,
- integer_t const lda, traits::complex_d* w, traits::complex_d* vl,
- integer_t const ldvl, traits::complex_d* vr, integer_t const ldvr,
+ inline void geevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, const integer_t n, traits::complex_d* a,
+ const integer_t lda, traits::complex_d* w, traits::complex_d* vl,
+ const integer_t ldvl, traits::complex_d* vr, const integer_t ldvr,
             integer_t& ilo, integer_t& ihi, double* scale, double& abnrm,
             double* rconde, double* rcondv, traits::complex_d* work,
- integer_t const lwork, double* rwork, integer_t& info ) {
+ const integer_t lwork, double* rwork, integer_t& info ) {
         LAPACK_ZGEEVX( &balanc, &jobvl, &jobvr, &sense, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(w),
                 traits::complex_ptr(vl), &ldvl, traits::complex_ptr(vr),
@@ -103,8 +103,8 @@
             typename MatrixVL, typename MatrixVR, typename VectorSCALE,
             typename VectorRCONDE, typename VectorRCONDV, typename WORK,
             typename IWORK >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, VectorWR& wr, VectorWI& wi,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, VectorWR& wr, VectorWI& wi,
             MatrixVL& vl, MatrixVR& vr, integer_t& ilo, integer_t& ihi,
             VectorSCALE& scale, real_type& abnrm, VectorRCONDE& rconde,
             VectorRCONDV& rcondv, integer_t& info, detail::workspace2< WORK,
@@ -172,8 +172,8 @@
     template< typename MatrixA, typename VectorWR, typename VectorWI,
             typename MatrixVL, typename MatrixVR, typename VectorSCALE,
             typename VectorRCONDE, typename VectorRCONDV >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, VectorWR& wr, VectorWI& wi,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, VectorWR& wr, VectorWI& wi,
             MatrixVL& vl, MatrixVR& vr, integer_t& ilo, integer_t& ihi,
             VectorSCALE& scale, real_type& abnrm, VectorRCONDE& rconde,
             VectorRCONDV& rcondv, integer_t& info, minimal_workspace work ) {
@@ -190,8 +190,8 @@
     template< typename MatrixA, typename VectorWR, typename VectorWI,
             typename MatrixVL, typename MatrixVR, typename VectorSCALE,
             typename VectorRCONDE, typename VectorRCONDV >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, VectorWR& wr, VectorWI& wi,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, VectorWR& wr, VectorWI& wi,
             MatrixVL& vl, MatrixVR& vr, integer_t& ilo, integer_t& ihi,
             VectorSCALE& scale, real_type& abnrm, VectorRCONDE& rconde,
             VectorRCONDV& rcondv, integer_t& info, optimal_workspace work ) {
@@ -215,8 +215,8 @@
                 tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const sense, char const jobvl,
- char const jobvr, integer_t const n ) {
+ static integer_t min_size_work( const char sense, const char jobvl,
+ const char jobvr, const integer_t n ) {
         if ( sense == 'N' || sense == 'E' ) {
             if ( jobvl =='V' || jobvr == 'V' )
                 return std::max( 1, 3*n );
@@ -226,7 +226,7 @@
             return std::max( 1, n*(n+6) );
     }
 
- static integer_t min_size_iwork( char const sense, integer_t const n ) {
+ static integer_t min_size_iwork( const char sense, const integer_t n ) {
         if ( sense == 'N' || sense == 'E' )
             return 0;
         else
@@ -245,8 +245,8 @@
     template< typename MatrixA, typename VectorW, typename MatrixVL,
             typename MatrixVR, typename VectorSCALE, typename VectorRCONDE,
             typename VectorRCONDV, typename WORK, typename RWORK >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, VectorW& w, MatrixVL& vl,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, VectorW& w, MatrixVL& vl,
             MatrixVR& vr, integer_t& ilo, integer_t& ihi, VectorSCALE& scale,
             real_type& abnrm, VectorRCONDE& rconde, VectorRCONDV& rcondv,
             integer_t& info, detail::workspace2< WORK, RWORK > work ) {
@@ -303,8 +303,8 @@
     template< typename MatrixA, typename VectorW, typename MatrixVL,
             typename MatrixVR, typename VectorSCALE, typename VectorRCONDE,
             typename VectorRCONDV >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, VectorW& w, MatrixVL& vl,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, VectorW& w, MatrixVL& vl,
             MatrixVR& vr, integer_t& ilo, integer_t& ihi, VectorSCALE& scale,
             real_type& abnrm, VectorRCONDE& rconde, VectorRCONDV& rcondv,
             integer_t& info, minimal_workspace work ) {
@@ -321,8 +321,8 @@
     template< typename MatrixA, typename VectorW, typename MatrixVL,
             typename MatrixVR, typename VectorSCALE, typename VectorRCONDE,
             typename VectorRCONDV >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, VectorW& w, MatrixVL& vl,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, VectorW& w, MatrixVL& vl,
             MatrixVR& vr, integer_t& ilo, integer_t& ihi, VectorSCALE& scale,
             real_type& abnrm, VectorRCONDE& rconde, VectorRCONDV& rcondv,
             integer_t& info, optimal_workspace work ) {
@@ -345,14 +345,14 @@
                 tmp_rwork ) );
     }
 
- static integer_t min_size_work( char const sense, integer_t const n ) {
+ static integer_t min_size_work( const char sense, const integer_t n ) {
         if ( sense == 'N' || sense == 'E' )
             return std::max( 1, 2*n );
         else
             return std::max( 1, n*n + 2*n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 2*n;
     }
 };
@@ -362,8 +362,8 @@
 template< typename MatrixA, typename VectorWR, typename VectorWI,
         typename MatrixVL, typename MatrixVR, typename VectorSCALE,
         typename VectorRCONDE, typename VectorRCONDV, typename Workspace >
-inline integer_t geevx( char const balanc, char const jobvl,
- char const jobvr, char const sense, MatrixA& a, VectorWR& wr,
+inline integer_t geevx( const char balanc, const char jobvl,
+ const char jobvr, const char sense, MatrixA& a, VectorWR& wr,
         VectorWI& wi, MatrixVL& vl, MatrixVR& vr, integer_t& ilo,
         integer_t& ihi, VectorSCALE& scale, typename traits::type_traits<
         typename traits::matrix_traits<
@@ -380,8 +380,8 @@
 template< typename MatrixA, typename VectorWR, typename VectorWI,
         typename MatrixVL, typename MatrixVR, typename VectorSCALE,
         typename VectorRCONDE, typename VectorRCONDV >
-inline integer_t geevx( char const balanc, char const jobvl,
- char const jobvr, char const sense, MatrixA& a, VectorWR& wr,
+inline integer_t geevx( const char balanc, const char jobvl,
+ const char jobvr, const char sense, MatrixA& a, VectorWR& wr,
         VectorWI& wi, MatrixVL& vl, MatrixVR& vr, integer_t& ilo,
         integer_t& ihi, VectorSCALE& scale, typename traits::type_traits<
         typename traits::matrix_traits<
@@ -398,8 +398,8 @@
 template< typename MatrixA, typename VectorW, typename MatrixVL,
         typename MatrixVR, typename VectorSCALE, typename VectorRCONDE,
         typename VectorRCONDV, typename Workspace >
-inline integer_t geevx( char const balanc, char const jobvl,
- char const jobvr, char const sense, MatrixA& a, VectorW& w,
+inline integer_t geevx( const char balanc, const char jobvl,
+ const char jobvr, const char sense, MatrixA& a, VectorW& w,
         MatrixVL& vl, MatrixVR& vr, integer_t& ilo, integer_t& ihi,
         VectorSCALE& scale, typename traits::type_traits<
         typename traits::matrix_traits<
@@ -416,8 +416,8 @@
 template< typename MatrixA, typename VectorW, typename MatrixVL,
         typename MatrixVR, typename VectorSCALE, typename VectorRCONDE,
         typename VectorRCONDV >
-inline integer_t geevx( char const balanc, char const jobvl,
- char const jobvr, char const sense, MatrixA& a, VectorW& w,
+inline integer_t geevx( const char balanc, const char jobvl,
+ const char jobvr, const char sense, MatrixA& a, VectorW& w,
         MatrixVL& vl, MatrixVR& vr, integer_t& ilo, integer_t& ihi,
         VectorSCALE& scale, typename traits::type_traits<
         typename traits::matrix_traits<

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gegv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gegv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gegv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,28 +37,28 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gegv( char const jobvl, char const jobvr, integer_t const n,
- float* a, integer_t const lda, float* b, integer_t const ldb,
+ inline void gegv( const char jobvl, const char jobvr, const integer_t n,
+ float* a, const integer_t lda, float* b, const integer_t ldb,
             float* alphar, float* alphai, float* beta, float* vl,
- integer_t const ldvl, float* vr, integer_t const ldvr,
- float* work, integer_t const lwork, integer_t& info ) {
+ const integer_t ldvl, float* vr, const integer_t ldvr,
+ float* work, const integer_t lwork, integer_t& info ) {
         LAPACK_SGEGV( &jobvl, &jobvr, &n, a, &lda, b, &ldb, alphar, alphai,
                 beta, vl, &ldvl, vr, &ldvr, work, &lwork, &info );
     }
- inline void gegv( char const jobvl, char const jobvr, integer_t const n,
- double* a, integer_t const lda, double* b, integer_t const ldb,
+ inline void gegv( const char jobvl, const char jobvr, const integer_t n,
+ double* a, const integer_t lda, double* b, const integer_t ldb,
             double* alphar, double* alphai, double* beta, double* vl,
- integer_t const ldvl, double* vr, integer_t const ldvr,
- double* work, integer_t const lwork, integer_t& info ) {
+ const integer_t ldvl, double* vr, const integer_t ldvr,
+ double* work, const integer_t lwork, integer_t& info ) {
         LAPACK_DGEGV( &jobvl, &jobvr, &n, a, &lda, b, &ldb, alphar, alphai,
                 beta, vl, &ldvl, vr, &ldvr, work, &lwork, &info );
     }
- inline void gegv( char const jobvl, char const jobvr, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* alpha,
+ inline void gegv( const char jobvl, const char jobvr, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* b,
+ const integer_t ldb, traits::complex_f* alpha,
             traits::complex_f* beta, traits::complex_f* vl,
- integer_t const ldvl, traits::complex_f* vr, integer_t const ldvr,
- traits::complex_f* work, integer_t const lwork, float* rwork,
+ const integer_t ldvl, traits::complex_f* vr, const integer_t ldvr,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
             integer_t& info ) {
         LAPACK_CGEGV( &jobvl, &jobvr, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(alpha),
@@ -66,12 +66,12 @@
                 traits::complex_ptr(vr), &ldvr, traits::complex_ptr(work),
                 &lwork, rwork, &info );
     }
- inline void gegv( char const jobvl, char const jobvr, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* alpha,
+ inline void gegv( const char jobvl, const char jobvr, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* b,
+ const integer_t ldb, traits::complex_d* alpha,
             traits::complex_d* beta, traits::complex_d* vl,
- integer_t const ldvl, traits::complex_d* vr, integer_t const ldvr,
- traits::complex_d* work, integer_t const lwork, double* rwork,
+ const integer_t ldvl, traits::complex_d* vr, const integer_t ldvr,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
             integer_t& info ) {
         LAPACK_ZGEGV( &jobvl, &jobvr, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(alpha),
@@ -96,7 +96,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
             typename MatrixVR, typename WORK >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
             VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, integer_t& info,
             detail::workspace1< WORK > work ) {
@@ -146,7 +146,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
             typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
             VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, integer_t& info,
             minimal_workspace work ) {
@@ -160,7 +160,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
             typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
             VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, integer_t& info,
             optimal_workspace work ) {
@@ -179,7 +179,7 @@
                 workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 8*n );
     }
 };
@@ -195,7 +195,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixVL, typename MatrixVR,
             typename WORK, typename RWORK >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl,
             MatrixVR& vr, integer_t& info, detail::workspace2< WORK,
             RWORK > work ) {
@@ -243,7 +243,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixVL, typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl,
             MatrixVR& vr, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -257,7 +257,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixVL, typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl,
             MatrixVR& vr, integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
@@ -276,11 +276,11 @@
                 workspace( tmp_work, tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 8*n;
     }
 };
@@ -290,7 +290,7 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
         typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
         typename MatrixVR, typename Workspace >
-inline integer_t gegv( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t gegv( const char jobvl, const char jobvr, MatrixA& a,
         MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
         VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -304,7 +304,7 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
         typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
         typename MatrixVR >
-inline integer_t gegv( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t gegv( const char jobvl, const char jobvr, MatrixA& a,
         MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
         VectorBETA& beta, MatrixVL& vl, MatrixVR& vr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -317,7 +317,7 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixVL, typename MatrixVR,
         typename Workspace >
-inline integer_t gegv( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t gegv( const char jobvl, const char jobvr, MatrixA& a,
         MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl,
         MatrixVR& vr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -330,7 +330,7 @@
 // template function to call gegv, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixVL, typename MatrixVR >
-inline integer_t gegv( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t gegv( const char jobvl, const char jobvr, MatrixA& a,
         MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl,
         MatrixVR& vr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gels.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gels.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gels.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,32 +37,32 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gels( char const trans, integer_t const m, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* b,
- integer_t const ldb, float* work, integer_t const lwork,
+ inline void gels( const char trans, const integer_t m, const integer_t n,
+ const integer_t nrhs, float* a, const integer_t lda, float* b,
+ const integer_t ldb, float* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_SGELS( &trans, &m, &n, &nrhs, a, &lda, b, &ldb, work, &lwork,
                 &info );
     }
- inline void gels( char const trans, integer_t const m, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* b,
- integer_t const ldb, double* work, integer_t const lwork,
+ inline void gels( const char trans, const integer_t m, const integer_t n,
+ const integer_t nrhs, double* a, const integer_t lda, double* b,
+ const integer_t ldb, double* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_DGELS( &trans, &m, &n, &nrhs, a, &lda, b, &ldb, work, &lwork,
                 &info );
     }
- inline void gels( char const trans, integer_t const m, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void gels( const char trans, const integer_t m, const integer_t n,
+ const integer_t nrhs, traits::complex_f* a, const integer_t lda,
+ traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CGELS( &trans, &m, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(work),
                 &lwork, &info );
     }
- inline void gels( char const trans, integer_t const m, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void gels( const char trans, const integer_t m, const integer_t n,
+ const integer_t nrhs, traits::complex_d* a, const integer_t lda,
+ traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZGELS( &trans, &m, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(work),
                 &lwork, &info );
@@ -82,7 +82,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename WORK >
- static void invoke( char const trans, MatrixA& a, MatrixB& b,
+ static void invoke( const char trans, MatrixA& a, MatrixB& b,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -110,7 +110,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB >
- static void invoke( char const trans, MatrixA& a, MatrixB& b,
+ static void invoke( const char trans, MatrixA& a, MatrixB& b,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_rows(a), traits::matrix_num_columns(a),
@@ -120,7 +120,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB >
- static void invoke( char const trans, MatrixA& a, MatrixB& b,
+ static void invoke( const char trans, MatrixA& a, MatrixB& b,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::gels( trans, traits::matrix_num_rows(a),
@@ -133,8 +133,8 @@
         invoke( trans, a, b, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- integer_t const nrhs ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const integer_t nrhs ) {
         integer_t minmn = std::min( m, n );
         return std::max( 1, minmn + std::max( minmn, nrhs ) );
     }
@@ -149,7 +149,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename WORK >
- static void invoke( char const trans, MatrixA& a, MatrixB& b,
+ static void invoke( const char trans, MatrixA& a, MatrixB& b,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -177,7 +177,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB >
- static void invoke( char const trans, MatrixA& a, MatrixB& b,
+ static void invoke( const char trans, MatrixA& a, MatrixB& b,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_rows(a), traits::matrix_num_columns(a),
@@ -187,7 +187,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB >
- static void invoke( char const trans, MatrixA& a, MatrixB& b,
+ static void invoke( const char trans, MatrixA& a, MatrixB& b,
             integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         detail::gels( trans, traits::matrix_num_rows(a),
@@ -200,8 +200,8 @@
         invoke( trans, a, b, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- integer_t const nrhs ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const integer_t nrhs ) {
         integer_t minmn = std::min( m, n );
         return std::max( 1, minmn + std::max( minmn, nrhs ) );
     }
@@ -210,7 +210,7 @@
 
 // template function to call gels
 template< typename MatrixA, typename MatrixB, typename Workspace >
-inline integer_t gels( char const trans, MatrixA& a, MatrixB& b,
+inline integer_t gels( const char trans, MatrixA& a, MatrixB& b,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -220,7 +220,7 @@
 
 // template function to call gels, default workspace type
 template< typename MatrixA, typename MatrixB >
-inline integer_t gels( char const trans, MatrixA& a, MatrixB& b ) {
+inline integer_t gels( const char trans, MatrixA& a, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     gels_impl< value_type >::invoke( trans, a, b, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelsd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelsd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelsd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -38,38 +38,38 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gelsd( integer_t const m, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* b,
- integer_t const ldb, float* s, float const rcond, integer_t& rank,
- float* work, integer_t const lwork, integer_t* iwork,
- integer_t& info ) {
+ inline void gelsd( const integer_t m, const integer_t n,
+ const integer_t nrhs, const float* a, const integer_t lda,
+ float* b, const integer_t ldb, float* s, const float rcond,
+ integer_t& rank, float* work, const integer_t lwork,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_SGELSD( &m, &n, &nrhs, a, &lda, b, &ldb, s, &rcond, &rank,
                 work, &lwork, iwork, &info );
     }
- inline void gelsd( integer_t const m, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* b,
- integer_t const ldb, double* s, double const rcond,
- integer_t& rank, double* work, integer_t const lwork,
+ inline void gelsd( const integer_t m, const integer_t n,
+ const integer_t nrhs, const double* a, const integer_t lda,
+ double* b, const integer_t ldb, double* s, const double rcond,
+ integer_t& rank, double* work, const integer_t lwork,
             integer_t* iwork, integer_t& info ) {
         LAPACK_DGELSD( &m, &n, &nrhs, a, &lda, b, &ldb, s, &rcond, &rank,
                 work, &lwork, iwork, &info );
     }
- inline void gelsd( integer_t const m, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb, float* s,
- float const rcond, integer_t& rank, traits::complex_f* work,
- integer_t const lwork, float* rwork, integer_t* iwork,
+ inline void gelsd( const integer_t m, const integer_t n,
+ const integer_t nrhs, traits::complex_f* a, const integer_t lda,
+ traits::complex_f* b, const integer_t ldb, float* s,
+ const float rcond, integer_t& rank, traits::complex_f* work,
+ const integer_t lwork, float* rwork, integer_t* iwork,
             integer_t& info ) {
         LAPACK_CGELSD( &m, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, s, &rcond, &rank,
                 traits::complex_ptr(work), &lwork, rwork, iwork, &info );
     }
- inline void gelsd( integer_t const m, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, double* s,
- double const rcond, integer_t& rank, traits::complex_d* work,
- integer_t const lwork, double* rwork, integer_t* iwork,
- integer_t& info ) {
+ inline void gelsd( const integer_t m, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ const integer_t lda, traits::complex_d* b, const integer_t ldb,
+ double* s, const double rcond, integer_t& rank,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_ZGELSD( &m, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, s, &rcond, &rank,
                 traits::complex_ptr(work), &lwork, rwork, iwork, &info );
@@ -90,8 +90,8 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorS,
             typename WORK, typename IWORK >
- static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ static void invoke( const MatrixA& a, MatrixB& b, VectorS& s,
+ const real_type rcond, integer_t& rank, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -133,8 +133,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorS >
- static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ static void invoke( const MatrixA& a, MatrixB& b, VectorS& s,
+ const real_type rcond, integer_t& rank, integer_t& info,
             minimal_workspace work ) {
         integer_t minmn = std::min( traits::matrix_num_rows(a),
                 traits::matrix_num_columns(a) );
@@ -151,8 +151,8 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorS >
- static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ static void invoke( const MatrixA& a, MatrixB& b, VectorS& s,
+ const real_type rcond, integer_t& rank, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
         integer_t opt_size_iwork;
@@ -168,16 +168,16 @@
         invoke( a, b, s, rcond, rank, info, workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const minmn,
- integer_t const smlsiz, integer_t const nlvl,
- integer_t const nrhs ) {
+ static integer_t min_size_work( const integer_t minmn,
+ const integer_t smlsiz, const integer_t nlvl,
+ const integer_t nrhs ) {
         integer_t smlsiz_plus_one = smlsiz + 1;
         return std::max( 1, 12*minmn + 2*minmn*smlsiz + 8*minmn*nlvl +
                 minmn*nrhs + smlsiz_plus_one * smlsiz_plus_one );
     }
 
- static integer_t min_size_iwork( integer_t const minmn,
- integer_t const nlvl ) {
+ static integer_t min_size_iwork( const integer_t minmn,
+ const integer_t nlvl ) {
         return std::max( 1, 3*minmn*nlvl + 11*minmn );
     }
 };
@@ -193,7 +193,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorS,
             typename WORK, typename RWORK, typename IWORK >
     static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -236,7 +236,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorS >
     static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             minimal_workspace work ) {
         integer_t minmn = std::min( traits::matrix_num_rows(a),
                 traits::matrix_num_columns(a) );
@@ -257,7 +257,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorS >
     static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
         real_type opt_size_rwork;
@@ -277,21 +277,21 @@
                 tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const minmn,
- integer_t const nrhs ) {
+ static integer_t min_size_work( const integer_t minmn,
+ const integer_t nrhs ) {
         return std::max( 1, 2*minmn + minmn*nrhs );
     }
 
- static integer_t min_size_rwork( integer_t const minmn,
- integer_t const smlsiz, integer_t const nlvl,
- integer_t const nrhs ) {
+ static integer_t min_size_rwork( const integer_t minmn,
+ const integer_t smlsiz, const integer_t nlvl,
+ const integer_t nrhs ) {
         integer_t smlsiz_plus_one = smlsiz + 1;
         return std::max( 1, 10*minmn + 2*minmn*smlsiz + 8*minmn*nlvl +
                 3*smlsiz*nrhs + smlsiz_plus_one * smlsiz_plus_one );
     }
 
- static integer_t min_size_iwork( integer_t const minmn,
- integer_t const nlvl ) {
+ static integer_t min_size_iwork( const integer_t minmn,
+ const integer_t nlvl ) {
         return std::max( 1, 3*minmn*nlvl + 11*minmn );
     }
 };
@@ -300,9 +300,33 @@
 // template function to call gelsd
 template< typename MatrixA, typename MatrixB, typename VectorS,
         typename Workspace >
+inline integer_t gelsd( const MatrixA& a, MatrixB& b, VectorS& s,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type rcond, integer_t& rank,
+ Workspace work ) {
+ typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
+ integer_t info(0);
+ gelsd_impl< value_type >::invoke( a, b, s, rcond, rank, info, work );
+ return info;
+}
+
+// template function to call gelsd, default workspace type
+template< typename MatrixA, typename MatrixB, typename VectorS >
+inline integer_t gelsd( const MatrixA& a, MatrixB& b, VectorS& s,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type rcond, integer_t& rank ) {
+ typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
+ integer_t info(0);
+ gelsd_impl< value_type >::invoke( a, b, s, rcond, rank, info,
+ optimal_workspace() );
+ return info;
+}
+// template function to call gelsd
+template< typename MatrixA, typename MatrixB, typename VectorS,
+ typename Workspace >
 inline integer_t gelsd( MatrixA& a, MatrixB& b, VectorS& s,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const rcond, integer_t& rank,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type rcond, integer_t& rank,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -313,8 +337,8 @@
 // template function to call gelsd, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorS >
 inline integer_t gelsd( MatrixA& a, MatrixB& b, VectorS& s,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const rcond, integer_t& rank ) {
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type rcond, integer_t& rank ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     gelsd_impl< value_type >::invoke( a, b, s, rcond, rank, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelss.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelss.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelss.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,35 +37,35 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gelss( integer_t const m, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* b,
- integer_t const ldb, float* s, float const rcond, integer_t& rank,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void gelss( const integer_t m, const integer_t n,
+ const integer_t nrhs, float* a, const integer_t lda, float* b,
+ const integer_t ldb, float* s, const float rcond, integer_t& rank,
+ float* work, const integer_t lwork, integer_t& info ) {
         LAPACK_SGELSS( &m, &n, &nrhs, a, &lda, b, &ldb, s, &rcond, &rank,
                 work, &lwork, &info );
     }
- inline void gelss( integer_t const m, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* b,
- integer_t const ldb, double* s, double const rcond,
- integer_t& rank, double* work, integer_t const lwork,
+ inline void gelss( const integer_t m, const integer_t n,
+ const integer_t nrhs, double* a, const integer_t lda, double* b,
+ const integer_t ldb, double* s, const double rcond,
+ integer_t& rank, double* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_DGELSS( &m, &n, &nrhs, a, &lda, b, &ldb, s, &rcond, &rank,
                 work, &lwork, &info );
     }
- inline void gelss( integer_t const m, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb, float* s,
- float const rcond, integer_t& rank, traits::complex_f* work,
- integer_t const lwork, float* rwork, integer_t& info ) {
+ inline void gelss( const integer_t m, const integer_t n,
+ const integer_t nrhs, traits::complex_f* a, const integer_t lda,
+ traits::complex_f* b, const integer_t ldb, float* s,
+ const float rcond, integer_t& rank, traits::complex_f* work,
+ const integer_t lwork, float* rwork, integer_t& info ) {
         LAPACK_CGELSS( &m, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, s, &rcond, &rank,
                 traits::complex_ptr(work), &lwork, rwork, &info );
     }
- inline void gelss( integer_t const m, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, double* s,
- double const rcond, integer_t& rank, traits::complex_d* work,
- integer_t const lwork, double* rwork, integer_t& info ) {
+ inline void gelss( const integer_t m, const integer_t n,
+ const integer_t nrhs, traits::complex_d* a, const integer_t lda,
+ traits::complex_d* b, const integer_t ldb, double* s,
+ const double rcond, integer_t& rank, traits::complex_d* work,
+ const integer_t lwork, double* rwork, integer_t& info ) {
         LAPACK_ZGELSS( &m, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, s, &rcond, &rank,
                 traits::complex_ptr(work), &lwork, rwork, &info );
@@ -87,7 +87,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorS,
             typename WORK >
     static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -122,7 +122,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorS >
     static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_rows(a), traits::matrix_num_columns(a),
@@ -133,7 +133,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorS >
     static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
         detail::gelss( traits::matrix_num_rows(a),
@@ -147,8 +147,8 @@
         invoke( a, b, s, rcond, rank, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- integer_t const nrhs ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const integer_t nrhs ) {
         integer_t minmn = std::min( m, n );
         return std::max( 1, 3*minmn + std::max( std::max( 2*minmn, std::max(m,
                 n) ), nrhs ) );
@@ -166,7 +166,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorS,
             typename WORK, typename RWORK >
     static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -203,7 +203,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorS >
     static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             minimal_workspace work ) {
         integer_t minmn = std::min( traits::matrix_num_rows(a),
                 traits::matrix_num_columns(a) );
@@ -218,7 +218,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorS >
     static void invoke( MatrixA& a, MatrixB& b, VectorS& s,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             optimal_workspace work ) {
         integer_t minmn = std::min( traits::matrix_num_rows(a),
                 traits::matrix_num_columns(a) );
@@ -236,12 +236,12 @@
         invoke( a, b, s, rcond, rank, info, workspace( tmp_work, tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- integer_t const nrhs, integer_t const minmn ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const integer_t nrhs, const integer_t minmn ) {
         return std::max( 1, 2*minmn + std::max( std::max( m,n ), nrhs ) );
     }
 
- static integer_t min_size_rwork( integer_t const minmn ) {
+ static integer_t min_size_rwork( const integer_t minmn ) {
         return 5*minmn;
     }
 };
@@ -251,8 +251,8 @@
 template< typename MatrixA, typename MatrixB, typename VectorS,
         typename Workspace >
 inline integer_t gelss( MatrixA& a, MatrixB& b, VectorS& s,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const rcond, integer_t& rank,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type rcond, integer_t& rank,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -263,8 +263,8 @@
 // template function to call gelss, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorS >
 inline integer_t gelss( MatrixA& a, MatrixB& b, VectorS& s,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const rcond, integer_t& rank ) {
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type rcond, integer_t& rank ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     gelss_impl< value_type >::invoke( a, b, s, rcond, rank, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelsy.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelsy.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gelsy.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,36 +37,36 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gelsy( integer_t const m, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* b,
- integer_t const ldb, integer_t* jpvt, float const rcond,
- integer_t& rank, float* work, integer_t const lwork,
+ inline void gelsy( const integer_t m, const integer_t n,
+ const integer_t nrhs, float* a, const integer_t lda, float* b,
+ const integer_t ldb, integer_t* jpvt, const float rcond,
+ integer_t& rank, float* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_SGELSY( &m, &n, &nrhs, a, &lda, b, &ldb, jpvt, &rcond, &rank,
                 work, &lwork, &info );
     }
- inline void gelsy( integer_t const m, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* b,
- integer_t const ldb, integer_t* jpvt, double const rcond,
- integer_t& rank, double* work, integer_t const lwork,
+ inline void gelsy( const integer_t m, const integer_t n,
+ const integer_t nrhs, double* a, const integer_t lda, double* b,
+ const integer_t ldb, integer_t* jpvt, const double rcond,
+ integer_t& rank, double* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_DGELSY( &m, &n, &nrhs, a, &lda, b, &ldb, jpvt, &rcond, &rank,
                 work, &lwork, &info );
     }
- inline void gelsy( integer_t const m, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb, integer_t* jpvt,
- float const rcond, integer_t& rank, traits::complex_f* work,
- integer_t const lwork, float* rwork, integer_t& info ) {
+ inline void gelsy( const integer_t m, const integer_t n,
+ const integer_t nrhs, traits::complex_f* a, const integer_t lda,
+ traits::complex_f* b, const integer_t ldb, integer_t* jpvt,
+ const float rcond, integer_t& rank, traits::complex_f* work,
+ const integer_t lwork, float* rwork, integer_t& info ) {
         LAPACK_CGELSY( &m, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, jpvt, &rcond, &rank,
                 traits::complex_ptr(work), &lwork, rwork, &info );
     }
- inline void gelsy( integer_t const m, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, integer_t* jpvt,
- double const rcond, integer_t& rank, traits::complex_d* work,
- integer_t const lwork, double* rwork, integer_t& info ) {
+ inline void gelsy( const integer_t m, const integer_t n,
+ const integer_t nrhs, traits::complex_d* a, const integer_t lda,
+ traits::complex_d* b, const integer_t ldb, integer_t* jpvt,
+ const double rcond, integer_t& rank, traits::complex_d* work,
+ const integer_t lwork, double* rwork, integer_t& info ) {
         LAPACK_ZGELSY( &m, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, jpvt, &rcond, &rank,
                 traits::complex_ptr(work), &lwork, rwork, &info );
@@ -88,7 +88,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorJPVT,
             typename WORK >
     static void invoke( MatrixA& a, MatrixB& b, VectorJPVT& jpvt,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -117,7 +117,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorJPVT >
     static void invoke( MatrixA& a, MatrixB& b, VectorJPVT& jpvt,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_rows(a), traits::matrix_num_columns(a),
@@ -128,7 +128,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorJPVT >
     static void invoke( MatrixA& a, MatrixB& b, VectorJPVT& jpvt,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
         detail::gelsy( traits::matrix_num_rows(a),
@@ -142,8 +142,8 @@
         invoke( a, b, jpvt, rcond, rank, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- integer_t const nrhs ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const integer_t nrhs ) {
         integer_t minmn = std::min( m, n );
         return std::max( 1, std::max( minmn+3*n+1, 2*minmn+nrhs ));
     }
@@ -160,7 +160,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorJPVT,
             typename WORK, typename RWORK >
     static void invoke( MatrixA& a, MatrixB& b, VectorJPVT& jpvt,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -192,7 +192,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorJPVT >
     static void invoke( MatrixA& a, MatrixB& b, VectorJPVT& jpvt,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_rows(a), traits::matrix_num_columns(a),
@@ -206,7 +206,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorJPVT >
     static void invoke( MatrixA& a, MatrixB& b, VectorJPVT& jpvt,
- real_type const rcond, integer_t& rank, integer_t& info,
+ const real_type rcond, integer_t& rank, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
         traits::detail::array< real_type > tmp_rwork( min_size_rwork(
@@ -223,13 +223,13 @@
                 tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- integer_t const nrhs ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const integer_t nrhs ) {
         integer_t minmn = std::min( m, n );
         return std::max( 1, std::max( std::max( 2*minmn, n+1 ), minmn+nrhs ) );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 2*n;
     }
 };
@@ -239,8 +239,8 @@
 template< typename MatrixA, typename MatrixB, typename VectorJPVT,
         typename Workspace >
 inline integer_t gelsy( MatrixA& a, MatrixB& b, VectorJPVT& jpvt,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const rcond, integer_t& rank,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type rcond, integer_t& rank,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -252,8 +252,8 @@
 // template function to call gelsy, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorJPVT >
 inline integer_t gelsy( MatrixA& a, MatrixB& b, VectorJPVT& jpvt,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const rcond, integer_t& rank ) {
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type rcond, integer_t& rank ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     gelsy_impl< value_type >::invoke( a, b, jpvt, rcond, rank, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesdd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesdd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesdd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,36 +37,36 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gesdd( char const jobz, integer_t const m, integer_t const n,
- float* a, integer_t const lda, float* s, float* u,
- integer_t const ldu, float* vt, integer_t const ldvt, float* work,
- integer_t const lwork, integer_t* iwork, integer_t& info ) {
+ inline void gesdd( const char jobz, const integer_t m, const integer_t n,
+ float* a, const integer_t lda, float* s, float* u,
+ const integer_t ldu, float* vt, const integer_t ldvt, float* work,
+ const integer_t lwork, integer_t* iwork, integer_t& info ) {
         LAPACK_SGESDD( &jobz, &m, &n, a, &lda, s, u, &ldu, vt, &ldvt, work,
                 &lwork, iwork, &info );
     }
- inline void gesdd( char const jobz, integer_t const m, integer_t const n,
- double* a, integer_t const lda, double* s, double* u,
- integer_t const ldu, double* vt, integer_t const ldvt,
- double* work, integer_t const lwork, integer_t* iwork,
+ inline void gesdd( const char jobz, const integer_t m, const integer_t n,
+ double* a, const integer_t lda, double* s, double* u,
+ const integer_t ldu, double* vt, const integer_t ldvt,
+ double* work, const integer_t lwork, integer_t* iwork,
             integer_t& info ) {
         LAPACK_DGESDD( &jobz, &m, &n, a, &lda, s, u, &ldu, vt, &ldvt, work,
                 &lwork, iwork, &info );
     }
- inline void gesdd( char const jobz, integer_t const m, integer_t const n,
- traits::complex_f* a, integer_t const lda, float* s,
- traits::complex_f* u, integer_t const ldu, traits::complex_f* vt,
- integer_t const ldvt, traits::complex_f* work,
- integer_t const lwork, float* rwork, integer_t* iwork,
+ inline void gesdd( const char jobz, const integer_t m, const integer_t n,
+ traits::complex_f* a, const integer_t lda, float* s,
+ traits::complex_f* u, const integer_t ldu, traits::complex_f* vt,
+ const integer_t ldvt, traits::complex_f* work,
+ const integer_t lwork, float* rwork, integer_t* iwork,
             integer_t& info ) {
         LAPACK_CGESDD( &jobz, &m, &n, traits::complex_ptr(a), &lda, s,
                 traits::complex_ptr(u), &ldu, traits::complex_ptr(vt), &ldvt,
                 traits::complex_ptr(work), &lwork, rwork, iwork, &info );
     }
- inline void gesdd( char const jobz, integer_t const m, integer_t const n,
- traits::complex_d* a, integer_t const lda, double* s,
- traits::complex_d* u, integer_t const ldu, traits::complex_d* vt,
- integer_t const ldvt, traits::complex_d* work,
- integer_t const lwork, double* rwork, integer_t* iwork,
+ inline void gesdd( const char jobz, const integer_t m, const integer_t n,
+ traits::complex_d* a, const integer_t lda, double* s,
+ traits::complex_d* u, const integer_t ldu, traits::complex_d* vt,
+ const integer_t ldvt, traits::complex_d* work,
+ const integer_t lwork, double* rwork, integer_t* iwork,
             integer_t& info ) {
         LAPACK_ZGESDD( &jobz, &m, &n, traits::complex_ptr(a), &lda, s,
                 traits::complex_ptr(u), &ldu, traits::complex_ptr(vt), &ldvt,
@@ -88,7 +88,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT, typename WORK, typename IWORK >
- static void invoke( char const jobz, MatrixA& a, VectorS& s, MatrixU& u,
+ static void invoke( const char jobz, MatrixA& a, VectorS& s, MatrixU& u,
             MatrixVT& vt, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -129,7 +129,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT >
- static void invoke( char const jobz, MatrixA& a, VectorS& s, MatrixU& u,
+ static void invoke( const char jobz, MatrixA& a, VectorS& s, MatrixU& u,
             MatrixVT& vt, integer_t& info, minimal_workspace work ) {
         integer_t minmn = std::min( traits::matrix_num_rows(a),
                 traits::matrix_num_columns(a) );
@@ -144,13 +144,13 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT >
- static void invoke( char const jobz, MatrixA& a, VectorS& s, MatrixU& u,
+ static void invoke( const char jobz, MatrixA& a, VectorS& s, MatrixU& u,
             MatrixVT& vt, integer_t& info, optimal_workspace work ) {
         invoke( jobz, a, s, u, vt, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- char const jobz, integer_t const minmn ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const char jobz, const integer_t minmn ) {
         if ( n == 0 ) return 1;
         if ( jobz == 'N' ) return 3*minmn + std::max( std::max(m,n), 7*minmn );
         if ( jobz == 'O' ) return 3*minmn*minmn + std::max( std::max( m,n ),
@@ -159,7 +159,7 @@
                 4*minmn );
     }
 
- static integer_t min_size_iwork( integer_t const minmn ) {
+ static integer_t min_size_iwork( const integer_t minmn ) {
             return 8*minmn;
     }
 };
@@ -174,7 +174,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT, typename WORK, typename RWORK, typename IWORK >
- static void invoke( char const jobz, MatrixA& a, VectorS& s, MatrixU& u,
+ static void invoke( const char jobz, MatrixA& a, VectorS& s, MatrixU& u,
             MatrixVT& vt, integer_t& info, detail::workspace3< WORK, RWORK,
             IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -215,7 +215,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT >
- static void invoke( char const jobz, MatrixA& a, VectorS& s, MatrixU& u,
+ static void invoke( const char jobz, MatrixA& a, VectorS& s, MatrixU& u,
             MatrixVT& vt, integer_t& info, minimal_workspace work ) {
         integer_t minmn = std::min( traits::matrix_num_rows(a),
                 traits::matrix_num_columns(a) );
@@ -233,7 +233,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT >
- static void invoke( char const jobz, MatrixA& a, VectorS& s, MatrixU& u,
+ static void invoke( const char jobz, MatrixA& a, VectorS& s, MatrixU& u,
             MatrixVT& vt, integer_t& info, optimal_workspace work ) {
         integer_t minmn = std::min( traits::matrix_num_rows(a),
                 traits::matrix_num_columns(a) );
@@ -255,20 +255,20 @@
                 tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- char const jobz, integer_t const minmn ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const char jobz, const integer_t minmn ) {
         if ( n == 0 ) return 1;
         if ( jobz == 'N' ) return 2*minmn + std::max( m,n );
         if ( jobz == 'O' ) return 2*(minmn*minmn + minmn) + std::max( m, n );
         return minmn*minmn + 2*minmn + std::max( m, n );
     }
 
- static integer_t min_size_rwork( integer_t const minmn, char const jobz ) {
+ static integer_t min_size_rwork( const integer_t minmn, const char jobz ) {
         if ( jobz == 'N' ) return 5*minmn;
         return 5*minmn*minmn + 7*minmn;
     }
 
- static integer_t min_size_iwork( integer_t const minmn ) {
+ static integer_t min_size_iwork( const integer_t minmn ) {
             return 8*minmn;
     }
 };
@@ -277,7 +277,7 @@
 // template function to call gesdd
 template< typename MatrixA, typename VectorS, typename MatrixU,
         typename MatrixVT, typename Workspace >
-inline integer_t gesdd( char const jobz, MatrixA& a, VectorS& s,
+inline integer_t gesdd( const char jobz, MatrixA& a, VectorS& s,
         MatrixU& u, MatrixVT& vt, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -288,7 +288,7 @@
 // template function to call gesdd, default workspace type
 template< typename MatrixA, typename VectorS, typename MatrixU,
         typename MatrixVT >
-inline integer_t gesdd( char const jobz, MatrixA& a, VectorS& s,
+inline integer_t gesdd( const char jobz, MatrixA& a, VectorS& s,
         MatrixU& u, MatrixVT& vt ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -32,25 +32,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gesv( integer_t const n, integer_t const nrhs, float* a,
- integer_t const lda, integer_t* ipiv, float* b,
- integer_t const ldb, integer_t& info ) {
+ inline void gesv( const integer_t n, const integer_t nrhs, float* a,
+ const integer_t lda, integer_t* ipiv, float* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_SGESV( &n, &nrhs, a, &lda, ipiv, b, &ldb, &info );
     }
- inline void gesv( integer_t const n, integer_t const nrhs, double* a,
- integer_t const lda, integer_t* ipiv, double* b,
- integer_t const ldb, integer_t& info ) {
+ inline void gesv( const integer_t n, const integer_t nrhs, double* a,
+ const integer_t lda, integer_t* ipiv, double* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_DGESV( &n, &nrhs, a, &lda, ipiv, b, &ldb, &info );
     }
- inline void gesv( integer_t const n, integer_t const nrhs,
- traits::complex_f* a, integer_t const lda, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void gesv( const integer_t n, const integer_t nrhs,
+ traits::complex_f* a, const integer_t lda, integer_t* ipiv,
+ traits::complex_f* b, const integer_t ldb, integer_t& info ) {
         LAPACK_CGESV( &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void gesv( integer_t const n, integer_t const nrhs,
- traits::complex_d* a, integer_t const lda, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void gesv( const integer_t n, const integer_t nrhs,
+ traits::complex_d* a, const integer_t lda, integer_t* ipiv,
+ traits::complex_d* b, const integer_t ldb, integer_t& info ) {
         LAPACK_ZGESV( &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesvd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesvd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesvd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,35 +37,35 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gesvd( char const jobu, char const jobvt, integer_t const m,
- integer_t const n, float* a, integer_t const lda, float* s,
- float* u, integer_t const ldu, float* vt, integer_t const ldvt,
- float* work, integer_t const lwork, integer_t& info ) {
+ inline void gesvd( const char jobu, const char jobvt, const integer_t m,
+ const integer_t n, float* a, const integer_t lda, float* s,
+ float* u, const integer_t ldu, float* vt, const integer_t ldvt,
+ float* work, const integer_t lwork, integer_t& info ) {
         LAPACK_SGESVD( &jobu, &jobvt, &m, &n, a, &lda, s, u, &ldu, vt, &ldvt,
                 work, &lwork, &info );
     }
- inline void gesvd( char const jobu, char const jobvt, integer_t const m,
- integer_t const n, double* a, integer_t const lda, double* s,
- double* u, integer_t const ldu, double* vt, integer_t const ldvt,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void gesvd( const char jobu, const char jobvt, const integer_t m,
+ const integer_t n, double* a, const integer_t lda, double* s,
+ double* u, const integer_t ldu, double* vt, const integer_t ldvt,
+ double* work, const integer_t lwork, integer_t& info ) {
         LAPACK_DGESVD( &jobu, &jobvt, &m, &n, a, &lda, s, u, &ldu, vt, &ldvt,
                 work, &lwork, &info );
     }
- inline void gesvd( char const jobu, char const jobvt, integer_t const m,
- integer_t const n, traits::complex_f* a, integer_t const lda,
- float* s, traits::complex_f* u, integer_t const ldu,
- traits::complex_f* vt, integer_t const ldvt,
- traits::complex_f* work, integer_t const lwork, float* rwork,
+ inline void gesvd( const char jobu, const char jobvt, const integer_t m,
+ const integer_t n, traits::complex_f* a, const integer_t lda,
+ float* s, traits::complex_f* u, const integer_t ldu,
+ traits::complex_f* vt, const integer_t ldvt,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
             integer_t& info ) {
         LAPACK_CGESVD( &jobu, &jobvt, &m, &n, traits::complex_ptr(a), &lda, s,
                 traits::complex_ptr(u), &ldu, traits::complex_ptr(vt), &ldvt,
                 traits::complex_ptr(work), &lwork, rwork, &info );
     }
- inline void gesvd( char const jobu, char const jobvt, integer_t const m,
- integer_t const n, traits::complex_d* a, integer_t const lda,
- double* s, traits::complex_d* u, integer_t const ldu,
- traits::complex_d* vt, integer_t const ldvt,
- traits::complex_d* work, integer_t const lwork, double* rwork,
+ inline void gesvd( const char jobu, const char jobvt, const integer_t m,
+ const integer_t n, traits::complex_d* a, const integer_t lda,
+ double* s, traits::complex_d* u, const integer_t ldu,
+ traits::complex_d* vt, const integer_t ldvt,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
             integer_t& info ) {
         LAPACK_ZGESVD( &jobu, &jobvt, &m, &n, traits::complex_ptr(a), &lda, s,
                 traits::complex_ptr(u), &ldu, traits::complex_ptr(vt), &ldvt,
@@ -87,7 +87,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT, typename WORK >
- static void invoke( char const jobu, char const jobvt, MatrixA& a,
+ static void invoke( const char jobu, const char jobvt, MatrixA& a,
             VectorS& s, MatrixU& u, MatrixVT& vt, integer_t& info,
             detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -125,7 +125,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT >
- static void invoke( char const jobu, char const jobvt, MatrixA& a,
+ static void invoke( const char jobu, const char jobvt, MatrixA& a,
             VectorS& s, MatrixU& u, MatrixVT& vt, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
@@ -136,7 +136,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT >
- static void invoke( char const jobu, char const jobvt, MatrixA& a,
+ static void invoke( const char jobu, const char jobvt, MatrixA& a,
             VectorS& s, MatrixU& u, MatrixVT& vt, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
@@ -151,7 +151,7 @@
         invoke( jobu, jobvt, a, s, u, vt, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n ) {
         integer_t minmn = std::min( m, n );
         return std::max( 1, std::max( 3*minmn+std::max(m,n), 5*minmn ) );
     }
@@ -167,7 +167,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT, typename WORK, typename RWORK >
- static void invoke( char const jobu, char const jobvt, MatrixA& a,
+ static void invoke( const char jobu, const char jobvt, MatrixA& a,
             VectorS& s, MatrixU& u, MatrixVT& vt, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -207,7 +207,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT >
- static void invoke( char const jobu, char const jobvt, MatrixA& a,
+ static void invoke( const char jobu, const char jobvt, MatrixA& a,
             VectorS& s, MatrixU& u, MatrixVT& vt, integer_t& info,
             minimal_workspace work ) {
         integer_t minmn = std::min( traits::matrix_num_rows(a),
@@ -224,7 +224,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorS, typename MatrixU,
             typename MatrixVT >
- static void invoke( char const jobu, char const jobvt, MatrixA& a,
+ static void invoke( const char jobu, const char jobvt, MatrixA& a,
             VectorS& s, MatrixU& u, MatrixVT& vt, integer_t& info,
             optimal_workspace work ) {
         integer_t minmn = std::min( traits::matrix_num_rows(a),
@@ -244,12 +244,12 @@
                 tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- integer_t const minmn ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const integer_t minmn ) {
         return std::max( 1, 2*minmn+std::max(m,n) );
     }
 
- static integer_t min_size_rwork( integer_t const minmn ) {
+ static integer_t min_size_rwork( const integer_t minmn ) {
         return 5*minmn;
     }
 };
@@ -258,7 +258,7 @@
 // template function to call gesvd
 template< typename MatrixA, typename VectorS, typename MatrixU,
         typename MatrixVT, typename Workspace >
-inline integer_t gesvd( char const jobu, char const jobvt, MatrixA& a,
+inline integer_t gesvd( const char jobu, const char jobvt, MatrixA& a,
         VectorS& s, MatrixU& u, MatrixVT& vt, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -270,7 +270,7 @@
 // template function to call gesvd, default workspace type
 template< typename MatrixA, typename VectorS, typename MatrixU,
         typename MatrixVT >
-inline integer_t gesvd( char const jobu, char const jobvt, MatrixA& a,
+inline integer_t gesvd( const char jobu, const char jobvt, MatrixA& a,
         VectorS& s, MatrixU& u, MatrixVT& vt ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gesvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,31 +36,31 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gesvx( char const fact, char const trans, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* af,
- integer_t const ldaf, integer_t* ipiv, char& equed, float* r,
- float* c, float* b, integer_t const ldb, float* x,
- integer_t const ldx, float& rcond, float* ferr, float* berr,
+ inline void gesvx( const char fact, const char trans, const integer_t n,
+ const integer_t nrhs, float* a, const integer_t lda, float* af,
+ const integer_t ldaf, integer_t* ipiv, char& equed, float* r,
+ float* c, float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float& rcond, float* ferr, float* berr,
             float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SGESVX( &fact, &trans, &n, &nrhs, a, &lda, af, &ldaf, ipiv,
                 &equed, r, c, b, &ldb, x, &ldx, &rcond, ferr, berr, work,
                 iwork, &info );
     }
- inline void gesvx( char const fact, char const trans, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* af,
- integer_t const ldaf, integer_t* ipiv, char& equed, double* r,
- double* c, double* b, integer_t const ldb, double* x,
- integer_t const ldx, double& rcond, double* ferr, double* berr,
+ inline void gesvx( const char fact, const char trans, const integer_t n,
+ const integer_t nrhs, double* a, const integer_t lda, double* af,
+ const integer_t ldaf, integer_t* ipiv, char& equed, double* r,
+ double* c, double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double& rcond, double* ferr, double* berr,
             double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DGESVX( &fact, &trans, &n, &nrhs, a, &lda, af, &ldaf, ipiv,
                 &equed, r, c, b, &ldb, x, &ldx, &rcond, ferr, berr, work,
                 iwork, &info );
     }
- inline void gesvx( char const fact, char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* af, integer_t const ldaf, integer_t* ipiv,
+ inline void gesvx( const char fact, const char trans, const integer_t n,
+ const integer_t nrhs, traits::complex_f* a, const integer_t lda,
+ traits::complex_f* af, const integer_t ldaf, integer_t* ipiv,
             char& equed, float* r, float* c, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* x, integer_t const ldx,
+ const integer_t ldb, traits::complex_f* x, const integer_t ldx,
             float& rcond, float* ferr, float* berr, traits::complex_f* work,
             float* rwork, integer_t& info ) {
         LAPACK_CGESVX( &fact, &trans, &n, &nrhs, traits::complex_ptr(a), &lda,
@@ -68,11 +68,11 @@
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(x), &ldx,
                 &rcond, ferr, berr, traits::complex_ptr(work), rwork, &info );
     }
- inline void gesvx( char const fact, char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* af, integer_t const ldaf, integer_t* ipiv,
+ inline void gesvx( const char fact, const char trans, const integer_t n,
+ const integer_t nrhs, traits::complex_d* a, const integer_t lda,
+ traits::complex_d* af, const integer_t ldaf, integer_t* ipiv,
             char& equed, double* r, double* c, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* x, integer_t const ldx,
+ const integer_t ldb, traits::complex_d* x, const integer_t ldx,
             double& rcond, double* ferr, double* berr,
             traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZGESVX( &fact, &trans, &n, &nrhs, traits::complex_ptr(a), &lda,
@@ -98,7 +98,7 @@
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename IWORK >
- static void invoke( char const fact, char const trans, MatrixA& a,
+ static void invoke( const char fact, const char trans, MatrixA& a,
             MatrixAF& af, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -161,7 +161,7 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, MatrixA& a,
+ static void invoke( const char fact, const char trans, MatrixA& a,
             MatrixAF& af, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -178,7 +178,7 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, MatrixA& a,
+ static void invoke( const char fact, const char trans, MatrixA& a,
             MatrixAF& af, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -187,11 +187,11 @@
                 berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 4*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -208,7 +208,7 @@
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename RWORK >
- static void invoke( char const fact, char const trans, MatrixA& a,
+ static void invoke( const char fact, const char trans, MatrixA& a,
             MatrixAF& af, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -268,7 +268,7 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, MatrixA& a,
+ static void invoke( const char fact, const char trans, MatrixA& a,
             MatrixAF& af, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -285,7 +285,7 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename VectorR, typename VectorC, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, MatrixA& a,
+ static void invoke( const char fact, const char trans, MatrixA& a,
             MatrixAF& af, VectorIPIV& ipiv, char& equed, VectorR& r,
             VectorC& c, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
@@ -294,11 +294,11 @@
                 berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 2*n;
     }
 };
@@ -309,7 +309,7 @@
         typename VectorR, typename VectorC, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR,
         typename Workspace >
-inline integer_t gesvx( char const fact, char const trans, MatrixA& a,
+inline integer_t gesvx( const char fact, const char trans, MatrixA& a,
         MatrixAF& af, VectorIPIV& ipiv, char& equed, VectorR& r, VectorC& c,
         MatrixB& b, MatrixX& x, typename traits::type_traits<
         typename traits::matrix_traits<
@@ -326,7 +326,7 @@
 template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
         typename VectorR, typename VectorC, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR >
-inline integer_t gesvx( char const fact, char const trans, MatrixA& a,
+inline integer_t gesvx( const char fact, const char trans, MatrixA& a,
         MatrixAF& af, VectorIPIV& ipiv, char& equed, VectorR& r, VectorC& c,
         MatrixB& b, MatrixX& x, typename traits::type_traits<
         typename traits::matrix_traits<

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gges.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gges.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gges.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,36 +37,36 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gges( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, integer_t const n, float* a,
- integer_t const lda, float* b, integer_t const ldb,
+ inline void gges( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const integer_t n, float* a,
+ const integer_t lda, float* b, const integer_t ldb,
             integer_t& sdim, float* alphar, float* alphai, float* beta,
- float* vsl, integer_t const ldvsl, float* vsr,
- integer_t const ldvsr, float* work, integer_t const lwork,
+ float* vsl, const integer_t ldvsl, float* vsr,
+ const integer_t ldvsr, float* work, const integer_t lwork,
             logical_t* bwork, integer_t& info ) {
         LAPACK_SGGES( &jobvsl, &jobvsr, &sort, &selctg, &n, a, &lda, b, &ldb,
                 &sdim, alphar, alphai, beta, vsl, &ldvsl, vsr, &ldvsr, work,
                 &lwork, bwork, &info );
     }
- inline void gges( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, integer_t const n, double* a,
- integer_t const lda, double* b, integer_t const ldb,
+ inline void gges( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const integer_t n, double* a,
+ const integer_t lda, double* b, const integer_t ldb,
             integer_t& sdim, double* alphar, double* alphai, double* beta,
- double* vsl, integer_t const ldvsl, double* vsr,
- integer_t const ldvsr, double* work, integer_t const lwork,
+ double* vsl, const integer_t ldvsl, double* vsr,
+ const integer_t ldvsr, double* work, const integer_t lwork,
             logical_t* bwork, integer_t& info ) {
         LAPACK_DGGES( &jobvsl, &jobvsr, &sort, &selctg, &n, a, &lda, b, &ldb,
                 &sdim, alphar, alphai, beta, vsl, &ldvsl, vsr, &ldvsr, work,
                 &lwork, bwork, &info );
     }
- inline void gges( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, integer_t const n, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb,
+ inline void gges( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const integer_t n, traits::complex_f* a,
+ const integer_t lda, traits::complex_f* b, const integer_t ldb,
             integer_t& sdim, traits::complex_f* alpha,
             traits::complex_f* beta, traits::complex_f* vsl,
- integer_t const ldvsl, traits::complex_f* vsr,
- integer_t const ldvsr, traits::complex_f* work,
- integer_t const lwork, float* rwork, logical_t* bwork,
+ const integer_t ldvsl, traits::complex_f* vsr,
+ const integer_t ldvsr, traits::complex_f* work,
+ const integer_t lwork, float* rwork, logical_t* bwork,
             integer_t& info ) {
         LAPACK_CGGES( &jobvsl, &jobvsr, &sort, &selctg, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
@@ -75,14 +75,14 @@
                 &ldvsr, traits::complex_ptr(work), &lwork, rwork, bwork,
                 &info );
     }
- inline void gges( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, integer_t const n, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb,
+ inline void gges( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const integer_t n, traits::complex_d* a,
+ const integer_t lda, traits::complex_d* b, const integer_t ldb,
             integer_t& sdim, traits::complex_d* alpha,
             traits::complex_d* beta, traits::complex_d* vsl,
- integer_t const ldvsl, traits::complex_d* vsr,
- integer_t const ldvsr, traits::complex_d* work,
- integer_t const lwork, double* rwork, logical_t* bwork,
+ const integer_t ldvsl, traits::complex_d* vsr,
+ const integer_t ldvsr, traits::complex_d* work,
+ const integer_t lwork, double* rwork, logical_t* bwork,
             integer_t& info ) {
         LAPACK_ZGGES( &jobvsl, &jobvsr, &sort, &selctg, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
@@ -108,7 +108,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixVSL,
             typename MatrixVSR, typename WORK, typename BWORK >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
             logical_t* selctg, MatrixA& a, MatrixB& b, integer_t& sdim,
             VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta,
             MatrixVSL& vsl, MatrixVSR& vsr, integer_t& info,
@@ -164,7 +164,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixVSL,
             typename MatrixVSR >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
             logical_t* selctg, MatrixA& a, MatrixB& b, integer_t& sdim,
             VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta,
             MatrixVSL& vsl, MatrixVSR& vsr, integer_t& info,
@@ -181,7 +181,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixVSL,
             typename MatrixVSR >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
             logical_t* selctg, MatrixA& a, MatrixB& b, integer_t& sdim,
             VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta,
             MatrixVSL& vsl, MatrixVSR& vsr, integer_t& info,
@@ -204,11 +204,11 @@
                 beta, vsl, vsr, info, workspace( tmp_work, tmp_bwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 8*n + 16 );
     }
 
- static integer_t min_size_bwork( integer_t const n, char const sort ) {
+ static integer_t min_size_bwork( const integer_t n, const char sort ) {
         if ( sort == 'N' )
             return 0;
         else
@@ -227,7 +227,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixVSL, typename MatrixVSR,
             typename WORK, typename RWORK, typename BWORK >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
             logical_t* selctg, MatrixA& a, MatrixB& b, integer_t& sdim,
             VectorALPHA& alpha, VectorBETA& beta, MatrixVSL& vsl,
             MatrixVSR& vsr, integer_t& info, detail::workspace3< WORK, RWORK,
@@ -281,7 +281,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixVSL, typename MatrixVSR >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
             logical_t* selctg, MatrixA& a, MatrixB& b, integer_t& sdim,
             VectorALPHA& alpha, VectorBETA& beta, MatrixVSL& vsl,
             MatrixVSR& vsr, integer_t& info, minimal_workspace work ) {
@@ -298,7 +298,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixVSL, typename MatrixVSR >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
             logical_t* selctg, MatrixA& a, MatrixB& b, integer_t& sdim,
             VectorALPHA& alpha, VectorBETA& beta, MatrixVSL& vsl,
             MatrixVSR& vsr, integer_t& info, optimal_workspace work ) {
@@ -322,15 +322,15 @@
                 vsr, info, workspace( tmp_work, tmp_rwork, tmp_bwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 8*n;
     }
 
- static integer_t min_size_bwork( integer_t const n, char const sort ) {
+ static integer_t min_size_bwork( const integer_t n, const char sort ) {
         if ( sort == 'N' )
             return 0;
         else
@@ -343,8 +343,8 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
         typename VectorALPHAI, typename VectorBETA, typename MatrixVSL,
         typename MatrixVSR, typename Workspace >
-inline integer_t gges( char const jobvsl, char const jobvsr,
- char const sort, logical_t* selctg, MatrixA& a, MatrixB& b,
+inline integer_t gges( const char jobvsl, const char jobvsr,
+ const char sort, logical_t* selctg, MatrixA& a, MatrixB& b,
         integer_t& sdim, VectorALPHAR& alphar, VectorALPHAI& alphai,
         VectorBETA& beta, MatrixVSL& vsl, MatrixVSR& vsr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -358,8 +358,8 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
         typename VectorALPHAI, typename VectorBETA, typename MatrixVSL,
         typename MatrixVSR >
-inline integer_t gges( char const jobvsl, char const jobvsr,
- char const sort, logical_t* selctg, MatrixA& a, MatrixB& b,
+inline integer_t gges( const char jobvsl, const char jobvsr,
+ const char sort, logical_t* selctg, MatrixA& a, MatrixB& b,
         integer_t& sdim, VectorALPHAR& alphar, VectorALPHAI& alphai,
         VectorBETA& beta, MatrixVSL& vsl, MatrixVSR& vsr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -372,8 +372,8 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixVSL, typename MatrixVSR,
         typename Workspace >
-inline integer_t gges( char const jobvsl, char const jobvsr,
- char const sort, logical_t* selctg, MatrixA& a, MatrixB& b,
+inline integer_t gges( const char jobvsl, const char jobvsr,
+ const char sort, logical_t* selctg, MatrixA& a, MatrixB& b,
         integer_t& sdim, VectorALPHA& alpha, VectorBETA& beta, MatrixVSL& vsl,
         MatrixVSR& vsr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -386,8 +386,8 @@
 // template function to call gges, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixVSL, typename MatrixVSR >
-inline integer_t gges( char const jobvsl, char const jobvsr,
- char const sort, logical_t* selctg, MatrixA& a, MatrixB& b,
+inline integer_t gges( const char jobvsl, const char jobvsr,
+ const char sort, logical_t* selctg, MatrixA& a, MatrixB& b,
         integer_t& sdim, VectorALPHA& alpha, VectorBETA& beta, MatrixVSL& vsl,
         MatrixVSR& vsr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggesx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggesx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggesx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,41 +37,41 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ggesx( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, char const sense, integer_t const n, float* a,
- integer_t const lda, float* b, integer_t const ldb,
+ inline void ggesx( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, const integer_t n, float* a,
+ const integer_t lda, float* b, const integer_t ldb,
             integer_t& sdim, float* alphar, float* alphai, float* beta,
- float* vsl, integer_t const ldvsl, float* vsr,
- integer_t const ldvsr, float* rconde, float* rcondv, float* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ float* vsl, const integer_t ldvsl, float* vsr,
+ const integer_t ldvsr, float* rconde, float* rcondv, float* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             logical_t* bwork, integer_t& info ) {
         LAPACK_SGGESX( &jobvsl, &jobvsr, &sort, &selctg, &sense, &n, a, &lda,
                 b, &ldb, &sdim, alphar, alphai, beta, vsl, &ldvsl, vsr,
                 &ldvsr, rconde, rcondv, work, &lwork, iwork, &liwork, bwork,
                 &info );
     }
- inline void ggesx( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, char const sense, integer_t const n, double* a,
- integer_t const lda, double* b, integer_t const ldb,
+ inline void ggesx( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, const integer_t n, double* a,
+ const integer_t lda, double* b, const integer_t ldb,
             integer_t& sdim, double* alphar, double* alphai, double* beta,
- double* vsl, integer_t const ldvsl, double* vsr,
- integer_t const ldvsr, double* rconde, double* rcondv,
- double* work, integer_t const lwork, integer_t* iwork,
- integer_t const liwork, logical_t* bwork, integer_t& info ) {
+ double* vsl, const integer_t ldvsl, double* vsr,
+ const integer_t ldvsr, double* rconde, double* rcondv,
+ double* work, const integer_t lwork, integer_t* iwork,
+ const integer_t liwork, logical_t* bwork, integer_t& info ) {
         LAPACK_DGGESX( &jobvsl, &jobvsr, &sort, &selctg, &sense, &n, a, &lda,
                 b, &ldb, &sdim, alphar, alphai, beta, vsl, &ldvsl, vsr,
                 &ldvsr, rconde, rcondv, work, &lwork, iwork, &liwork, bwork,
                 &info );
     }
- inline void ggesx( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, char const sense, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, integer_t& sdim, traits::complex_f* alpha,
+ inline void ggesx( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* b,
+ const integer_t ldb, integer_t& sdim, traits::complex_f* alpha,
             traits::complex_f* beta, traits::complex_f* vsl,
- integer_t const ldvsl, traits::complex_f* vsr,
- integer_t const ldvsr, float* rconde, float* rcondv,
- traits::complex_f* work, integer_t const lwork, float* rwork,
- integer_t* iwork, integer_t const liwork, logical_t* bwork,
+ const integer_t ldvsl, traits::complex_f* vsr,
+ const integer_t ldvsr, float* rconde, float* rcondv,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
+ integer_t* iwork, const integer_t liwork, logical_t* bwork,
             integer_t& info ) {
         LAPACK_CGGESX( &jobvsl, &jobvsr, &sort, &selctg, &sense, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
@@ -80,15 +80,15 @@
                 &ldvsr, rconde, rcondv, traits::complex_ptr(work), &lwork,
                 rwork, iwork, &liwork, bwork, &info );
     }
- inline void ggesx( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, char const sense, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, integer_t& sdim, traits::complex_d* alpha,
+ inline void ggesx( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* b,
+ const integer_t ldb, integer_t& sdim, traits::complex_d* alpha,
             traits::complex_d* beta, traits::complex_d* vsl,
- integer_t const ldvsl, traits::complex_d* vsr,
- integer_t const ldvsr, double* rconde, double* rcondv,
- traits::complex_d* work, integer_t const lwork, double* rwork,
- integer_t* iwork, integer_t const liwork, logical_t* bwork,
+ const integer_t ldvsl, traits::complex_d* vsr,
+ const integer_t ldvsr, double* rconde, double* rcondv,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
+ integer_t* iwork, const integer_t liwork, logical_t* bwork,
             integer_t& info ) {
         LAPACK_ZGGESX( &jobvsl, &jobvsr, &sort, &selctg, &sense, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
@@ -115,8 +115,8 @@
             typename VectorALPHAI, typename VectorBETA, typename MatrixVSL,
             typename MatrixVSR, typename VectorRCONDE, typename VectorRCONDV,
             typename WORK, typename IWORK, typename BWORK >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, char const sense, MatrixA& a, MatrixB& b,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, MatrixA& a, MatrixB& b,
             integer_t& sdim, VectorALPHAR& alphar, VectorALPHAI& alphai,
             VectorBETA& beta, MatrixVSL& vsl, MatrixVSR& vsr,
             VectorRCONDE& rconde, VectorRCONDV& rcondv, integer_t& info,
@@ -186,8 +186,8 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixVSL,
             typename MatrixVSR, typename VectorRCONDE, typename VectorRCONDV >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, char const sense, MatrixA& a, MatrixB& b,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, MatrixA& a, MatrixB& b,
             integer_t& sdim, VectorALPHAR& alphar, VectorALPHAI& alphai,
             VectorBETA& beta, MatrixVSL& vsl, MatrixVSR& vsr,
             VectorRCONDE& rconde, VectorRCONDV& rcondv, integer_t& info,
@@ -207,8 +207,8 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixVSL,
             typename MatrixVSR, typename VectorRCONDE, typename VectorRCONDV >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, char const sense, MatrixA& a, MatrixB& b,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, MatrixA& a, MatrixB& b,
             integer_t& sdim, VectorALPHAR& alphar, VectorALPHAI& alphai,
             VectorBETA& beta, MatrixVSL& vsl, MatrixVSR& vsr,
             VectorRCONDE& rconde, VectorRCONDV& rcondv, integer_t& info,
@@ -236,7 +236,7 @@
                 workspace( tmp_work, tmp_iwork, tmp_bwork ) );
     }
 
- static integer_t min_size_work( integer_t const n, char const sense ) {
+ static integer_t min_size_work( const integer_t n, const char sense ) {
         if ( n == 0 )
             return 1;
         if ( sense == 'N' )
@@ -245,14 +245,14 @@
             return std::max( 8*n, std::max( 6*n+16, n*n/2 ));
     }
 
- static integer_t min_size_iwork( integer_t const n, char const sense ) {
+ static integer_t min_size_iwork( const integer_t n, const char sense ) {
         if ( sense == 'N' )
             return 1;
         else
             return std::max( 1, n+6 );
     }
 
- static integer_t min_size_bwork( integer_t const n, char const sort ) {
+ static integer_t min_size_bwork( const integer_t n, const char sort ) {
         if ( sort == 'N' )
             return 0;
         else
@@ -272,8 +272,8 @@
             typename VectorBETA, typename MatrixVSL, typename MatrixVSR,
             typename VectorRCONDE, typename VectorRCONDV, typename WORK,
             typename RWORK, typename IWORK, typename BWORK >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, char const sense, MatrixA& a, MatrixB& b,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, MatrixA& a, MatrixB& b,
             integer_t& sdim, VectorALPHA& alpha, VectorBETA& beta,
             MatrixVSL& vsl, MatrixVSR& vsr, VectorRCONDE& rconde,
             VectorRCONDV& rcondv, integer_t& info, detail::workspace4< WORK,
@@ -339,8 +339,8 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixVSL, typename MatrixVSR,
             typename VectorRCONDE, typename VectorRCONDV >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, char const sense, MatrixA& a, MatrixB& b,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, MatrixA& a, MatrixB& b,
             integer_t& sdim, VectorALPHA& alpha, VectorBETA& beta,
             MatrixVSL& vsl, MatrixVSR& vsr, VectorRCONDE& rconde,
             VectorRCONDV& rcondv, integer_t& info, minimal_workspace work ) {
@@ -361,8 +361,8 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixVSL, typename MatrixVSR,
             typename VectorRCONDE, typename VectorRCONDV >
- static void invoke( char const jobvsl, char const jobvsr, char const sort,
- logical_t* selctg, char const sense, MatrixA& a, MatrixB& b,
+ static void invoke( const char jobvsl, const char jobvsr, const char sort,
+ logical_t* selctg, const char sense, MatrixA& a, MatrixB& b,
             integer_t& sdim, VectorALPHA& alpha, VectorBETA& beta,
             MatrixVSL& vsl, MatrixVSR& vsr, VectorRCONDE& rconde,
             VectorRCONDV& rcondv, integer_t& info, optimal_workspace work ) {
@@ -391,25 +391,25 @@
                 tmp_rwork, tmp_iwork, tmp_bwork ) );
     }
 
- static integer_t min_size_work( integer_t const n, char const sense ) {
+ static integer_t min_size_work( const integer_t n, const char sense ) {
         if ( sense == 'N' )
             return std::max( 1, 2*n );
         else
             return std::max( 1, std::max( 2*n, n*n/2 ) );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 8*n;
     }
 
- static integer_t min_size_iwork( integer_t const n, char const sense ) {
+ static integer_t min_size_iwork( const integer_t n, const char sense ) {
         if ( sense == 'N' )
             return 1;
         else
             return std::max( 1, n+2 );
     }
 
- static integer_t min_size_bwork( integer_t const n, char const sort ) {
+ static integer_t min_size_bwork( const integer_t n, const char sort ) {
         if ( sort == 'N' )
             return 0;
         else
@@ -423,8 +423,8 @@
         typename VectorALPHAI, typename VectorBETA, typename MatrixVSL,
         typename MatrixVSR, typename VectorRCONDE, typename VectorRCONDV,
         typename Workspace >
-inline integer_t ggesx( char const jobvsl, char const jobvsr,
- char const sort, logical_t* selctg, char const sense, MatrixA& a,
+inline integer_t ggesx( const char jobvsl, const char jobvsr,
+ const char sort, logical_t* selctg, const char sense, MatrixA& a,
         MatrixB& b, integer_t& sdim, VectorALPHAR& alphar,
         VectorALPHAI& alphai, VectorBETA& beta, MatrixVSL& vsl,
         MatrixVSR& vsr, VectorRCONDE& rconde, VectorRCONDV& rcondv,
@@ -441,8 +441,8 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
         typename VectorALPHAI, typename VectorBETA, typename MatrixVSL,
         typename MatrixVSR, typename VectorRCONDE, typename VectorRCONDV >
-inline integer_t ggesx( char const jobvsl, char const jobvsr,
- char const sort, logical_t* selctg, char const sense, MatrixA& a,
+inline integer_t ggesx( const char jobvsl, const char jobvsr,
+ const char sort, logical_t* selctg, const char sense, MatrixA& a,
         MatrixB& b, integer_t& sdim, VectorALPHAR& alphar,
         VectorALPHAI& alphai, VectorBETA& beta, MatrixVSL& vsl,
         MatrixVSR& vsr, VectorRCONDE& rconde, VectorRCONDV& rcondv ) {
@@ -457,8 +457,8 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixVSL, typename MatrixVSR,
         typename VectorRCONDE, typename VectorRCONDV, typename Workspace >
-inline integer_t ggesx( char const jobvsl, char const jobvsr,
- char const sort, logical_t* selctg, char const sense, MatrixA& a,
+inline integer_t ggesx( const char jobvsl, const char jobvsr,
+ const char sort, logical_t* selctg, const char sense, MatrixA& a,
         MatrixB& b, integer_t& sdim, VectorALPHA& alpha, VectorBETA& beta,
         MatrixVSL& vsl, MatrixVSR& vsr, VectorRCONDE& rconde,
         VectorRCONDV& rcondv, Workspace work ) {
@@ -474,8 +474,8 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixVSL, typename MatrixVSR,
         typename VectorRCONDE, typename VectorRCONDV >
-inline integer_t ggesx( char const jobvsl, char const jobvsr,
- char const sort, logical_t* selctg, char const sense, MatrixA& a,
+inline integer_t ggesx( const char jobvsl, const char jobvsr,
+ const char sort, logical_t* selctg, const char sense, MatrixA& a,
         MatrixB& b, integer_t& sdim, VectorALPHA& alpha, VectorBETA& beta,
         MatrixVSL& vsl, MatrixVSR& vsr, VectorRCONDE& rconde,
         VectorRCONDV& rcondv ) {

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggev.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggev.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggev.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,28 +37,28 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ggev( char const jobvl, char const jobvr, integer_t const n,
- float* a, integer_t const lda, float* b, integer_t const ldb,
+ inline void ggev( const char jobvl, const char jobvr, const integer_t n,
+ float* a, const integer_t lda, float* b, const integer_t ldb,
             float* alphar, float* alphai, float* beta, float* vl,
- integer_t const ldvl, float* vr, integer_t const ldvr,
- float* work, integer_t const lwork, integer_t& info ) {
+ const integer_t ldvl, float* vr, const integer_t ldvr,
+ float* work, const integer_t lwork, integer_t& info ) {
         LAPACK_SGGEV( &jobvl, &jobvr, &n, a, &lda, b, &ldb, alphar, alphai,
                 beta, vl, &ldvl, vr, &ldvr, work, &lwork, &info );
     }
- inline void ggev( char const jobvl, char const jobvr, integer_t const n,
- double* a, integer_t const lda, double* b, integer_t const ldb,
+ inline void ggev( const char jobvl, const char jobvr, const integer_t n,
+ double* a, const integer_t lda, double* b, const integer_t ldb,
             double* alphar, double* alphai, double* beta, double* vl,
- integer_t const ldvl, double* vr, integer_t const ldvr,
- double* work, integer_t const lwork, integer_t& info ) {
+ const integer_t ldvl, double* vr, const integer_t ldvr,
+ double* work, const integer_t lwork, integer_t& info ) {
         LAPACK_DGGEV( &jobvl, &jobvr, &n, a, &lda, b, &ldb, alphar, alphai,
                 beta, vl, &ldvl, vr, &ldvr, work, &lwork, &info );
     }
- inline void ggev( char const jobvl, char const jobvr, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* alpha,
+ inline void ggev( const char jobvl, const char jobvr, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* b,
+ const integer_t ldb, traits::complex_f* alpha,
             traits::complex_f* beta, traits::complex_f* vl,
- integer_t const ldvl, traits::complex_f* vr, integer_t const ldvr,
- traits::complex_f* work, integer_t const lwork, float* rwork,
+ const integer_t ldvl, traits::complex_f* vr, const integer_t ldvr,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
             integer_t& info ) {
         LAPACK_CGGEV( &jobvl, &jobvr, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(alpha),
@@ -66,12 +66,12 @@
                 traits::complex_ptr(vr), &ldvr, traits::complex_ptr(work),
                 &lwork, rwork, &info );
     }
- inline void ggev( char const jobvl, char const jobvr, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* alpha,
+ inline void ggev( const char jobvl, const char jobvr, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* b,
+ const integer_t ldb, traits::complex_d* alpha,
             traits::complex_d* beta, traits::complex_d* vl,
- integer_t const ldvl, traits::complex_d* vr, integer_t const ldvr,
- traits::complex_d* work, integer_t const lwork, double* rwork,
+ const integer_t ldvl, traits::complex_d* vr, const integer_t ldvr,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
             integer_t& info ) {
         LAPACK_ZGGEV( &jobvl, &jobvr, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(alpha),
@@ -96,7 +96,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
             typename MatrixVR, typename WORK >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
             VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, integer_t& info,
             detail::workspace1< WORK > work ) {
@@ -146,7 +146,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
             typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
             VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, integer_t& info,
             minimal_workspace work ) {
@@ -160,7 +160,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
             typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
             typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
             VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, integer_t& info,
             optimal_workspace work ) {
@@ -179,7 +179,7 @@
                 workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 8*n );
     }
 };
@@ -195,7 +195,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixVL, typename MatrixVR,
             typename WORK, typename RWORK >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl,
             MatrixVR& vr, integer_t& info, detail::workspace2< WORK,
             RWORK > work ) {
@@ -243,7 +243,7 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixVL, typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl,
             MatrixVR& vr, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -257,7 +257,7 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixVL, typename MatrixVR >
- static void invoke( char const jobvl, char const jobvr, MatrixA& a,
+ static void invoke( const char jobvl, const char jobvr, MatrixA& a,
             MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl,
             MatrixVR& vr, integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
@@ -276,11 +276,11 @@
                 workspace( tmp_work, tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 8*n;
     }
 };
@@ -290,7 +290,7 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
         typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
         typename MatrixVR, typename Workspace >
-inline integer_t ggev( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t ggev( const char jobvl, const char jobvr, MatrixA& a,
         MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
         VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -304,7 +304,7 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHAR,
         typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
         typename MatrixVR >
-inline integer_t ggev( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t ggev( const char jobvl, const char jobvr, MatrixA& a,
         MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai,
         VectorBETA& beta, MatrixVL& vl, MatrixVR& vr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -317,7 +317,7 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixVL, typename MatrixVR,
         typename Workspace >
-inline integer_t ggev( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t ggev( const char jobvl, const char jobvr, MatrixA& a,
         MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl,
         MatrixVR& vr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -330,7 +330,7 @@
 // template function to call ggev, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixVL, typename MatrixVR >
-inline integer_t ggev( char const jobvl, char const jobvr, MatrixA& a,
+inline integer_t ggev( const char jobvl, const char jobvr, MatrixA& a,
         MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl,
         MatrixVR& vr ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggevx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggevx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggevx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,42 +37,42 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ggevx( char const balanc, char const jobvl, char const jobvr,
- char const sense, integer_t const n, float* a,
- integer_t const lda, float* b, integer_t const ldb, float* alphar,
- float* alphai, float* beta, float* vl, integer_t const ldvl,
- float* vr, integer_t const ldvr, integer_t& ilo, integer_t& ihi,
+ inline void ggevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, const integer_t n, float* a,
+ const integer_t lda, float* b, const integer_t ldb, float* alphar,
+ float* alphai, float* beta, float* vl, const integer_t ldvl,
+ float* vr, const integer_t ldvr, integer_t& ilo, integer_t& ihi,
             float* lscale, float* rscale, float& abnrm, float& bbnrm,
- float* rconde, float* rcondv, float* work, integer_t const lwork,
+ float* rconde, float* rcondv, float* work, const integer_t lwork,
             integer_t* iwork, logical_t* bwork, integer_t& info ) {
         LAPACK_SGGEVX( &balanc, &jobvl, &jobvr, &sense, &n, a, &lda, b, &ldb,
                 alphar, alphai, beta, vl, &ldvl, vr, &ldvr, &ilo, &ihi,
                 lscale, rscale, &abnrm, &bbnrm, rconde, rcondv, work, &lwork,
                 iwork, bwork, &info );
     }
- inline void ggevx( char const balanc, char const jobvl, char const jobvr,
- char const sense, integer_t const n, double* a,
- integer_t const lda, double* b, integer_t const ldb,
+ inline void ggevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, const integer_t n, double* a,
+ const integer_t lda, double* b, const integer_t ldb,
             double* alphar, double* alphai, double* beta, double* vl,
- integer_t const ldvl, double* vr, integer_t const ldvr,
+ const integer_t ldvl, double* vr, const integer_t ldvr,
             integer_t& ilo, integer_t& ihi, double* lscale, double* rscale,
             double& abnrm, double& bbnrm, double* rconde, double* rcondv,
- double* work, integer_t const lwork, integer_t* iwork,
+ double* work, const integer_t lwork, integer_t* iwork,
             logical_t* bwork, integer_t& info ) {
         LAPACK_DGGEVX( &balanc, &jobvl, &jobvr, &sense, &n, a, &lda, b, &ldb,
                 alphar, alphai, beta, vl, &ldvl, vr, &ldvr, &ilo, &ihi,
                 lscale, rscale, &abnrm, &bbnrm, rconde, rcondv, work, &lwork,
                 iwork, bwork, &info );
     }
- inline void ggevx( char const balanc, char const jobvl, char const jobvr,
- char const sense, integer_t const n, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb,
+ inline void ggevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, const integer_t n, traits::complex_f* a,
+ const integer_t lda, traits::complex_f* b, const integer_t ldb,
             traits::complex_f* alpha, traits::complex_f* beta,
- traits::complex_f* vl, integer_t const ldvl,
- traits::complex_f* vr, integer_t const ldvr, integer_t& ilo,
+ traits::complex_f* vl, const integer_t ldvl,
+ traits::complex_f* vr, const integer_t ldvr, integer_t& ilo,
             integer_t& ihi, float* lscale, float* rscale, float& abnrm,
             float& bbnrm, float* rconde, float* rcondv,
- traits::complex_f* work, integer_t const lwork, float* rwork,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
             integer_t* iwork, logical_t* bwork, integer_t& info ) {
         LAPACK_CGGEVX( &balanc, &jobvl, &jobvr, &sense, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
@@ -82,15 +82,15 @@
                 rcondv, traits::complex_ptr(work), &lwork, rwork, iwork,
                 bwork, &info );
     }
- inline void ggevx( char const balanc, char const jobvl, char const jobvr,
- char const sense, integer_t const n, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb,
+ inline void ggevx( const char balanc, const char jobvl, const char jobvr,
+ const char sense, const integer_t n, traits::complex_d* a,
+ const integer_t lda, traits::complex_d* b, const integer_t ldb,
             traits::complex_d* alpha, traits::complex_d* beta,
- traits::complex_d* vl, integer_t const ldvl,
- traits::complex_d* vr, integer_t const ldvr, integer_t& ilo,
+ traits::complex_d* vl, const integer_t ldvl,
+ traits::complex_d* vr, const integer_t ldvr, integer_t& ilo,
             integer_t& ihi, double* lscale, double* rscale, double& abnrm,
             double& bbnrm, double* rconde, double* rcondv,
- traits::complex_d* work, integer_t const lwork, double* rwork,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
             integer_t* iwork, logical_t* bwork, integer_t& info ) {
         LAPACK_ZGGEVX( &balanc, &jobvl, &jobvr, &sense, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
@@ -119,8 +119,8 @@
             typename MatrixVR, typename VectorLSCALE, typename VectorRSCALE,
             typename VectorRCONDE, typename VectorRCONDV, typename WORK,
             typename IWORK, typename BWORK >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
             VectorALPHAI& alphai, VectorBETA& beta, MatrixVL& vl,
             MatrixVR& vr, integer_t& ilo, integer_t& ihi,
             VectorLSCALE& lscale, VectorRSCALE& rscale, real_type& abnrm,
@@ -200,8 +200,8 @@
             typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
             typename MatrixVR, typename VectorLSCALE, typename VectorRSCALE,
             typename VectorRCONDE, typename VectorRCONDV >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
             VectorALPHAI& alphai, VectorBETA& beta, MatrixVL& vl,
             MatrixVR& vr, integer_t& ilo, integer_t& ihi,
             VectorLSCALE& lscale, VectorRSCALE& rscale, real_type& abnrm,
@@ -223,8 +223,8 @@
             typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
             typename MatrixVR, typename VectorLSCALE, typename VectorRSCALE,
             typename VectorRCONDE, typename VectorRCONDV >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, MatrixB& b, VectorALPHAR& alphar,
             VectorALPHAI& alphai, VectorBETA& beta, MatrixVL& vl,
             MatrixVR& vr, integer_t& ilo, integer_t& ihi,
             VectorLSCALE& lscale, VectorRSCALE& rscale, real_type& abnrm,
@@ -255,8 +255,8 @@
                 info, workspace( tmp_work, tmp_iwork, tmp_bwork ) );
     }
 
- static integer_t min_size_work( char const balanc, char const jobvl,
- char const jobvr, char const sense, integer_t const n ) {
+ static integer_t min_size_work( const char balanc, const char jobvl,
+ const char jobvr, const char sense, const integer_t n ) {
         if ( balanc == 'S' || balanc == 'B' || jobvl == 'V' || jobvr == 'V' )
             return std::max( 1, 6*n );
         if ( sense == 'E' )
@@ -266,14 +266,14 @@
         return std::max( 1, 2*n );
     }
 
- static integer_t min_size_iwork( char const sense, integer_t const n ) {
+ static integer_t min_size_iwork( const char sense, const integer_t n ) {
         if ( sense == 'E' )
           return 0;
         else
           return n+6;
     }
 
- static integer_t min_size_bwork( char const sense, integer_t const n ) {
+ static integer_t min_size_bwork( const char sense, const integer_t n ) {
         if ( sense == 'N' )
           return 0;
         else
@@ -294,8 +294,8 @@
             typename VectorLSCALE, typename VectorRSCALE,
             typename VectorRCONDE, typename VectorRCONDV, typename WORK,
             typename RWORK, typename IWORK, typename BWORK >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, MatrixB& b, VectorALPHA& alpha,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, MatrixB& b, VectorALPHA& alpha,
             VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, integer_t& ilo,
             integer_t& ihi, VectorLSCALE& lscale, VectorRSCALE& rscale,
             real_type& abnrm, real_type& bbnrm, VectorRCONDE& rconde,
@@ -371,8 +371,8 @@
             typename VectorBETA, typename MatrixVL, typename MatrixVR,
             typename VectorLSCALE, typename VectorRSCALE,
             typename VectorRCONDE, typename VectorRCONDV >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, MatrixB& b, VectorALPHA& alpha,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, MatrixB& b, VectorALPHA& alpha,
             VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, integer_t& ilo,
             integer_t& ihi, VectorLSCALE& lscale, VectorRSCALE& rscale,
             real_type& abnrm, real_type& bbnrm, VectorRCONDE& rconde,
@@ -395,8 +395,8 @@
             typename VectorBETA, typename MatrixVL, typename MatrixVR,
             typename VectorLSCALE, typename VectorRSCALE,
             typename VectorRCONDE, typename VectorRCONDV >
- static void invoke( char const balanc, char const jobvl, char const jobvr,
- char const sense, MatrixA& a, MatrixB& b, VectorALPHA& alpha,
+ static void invoke( const char balanc, const char jobvl, const char jobvr,
+ const char sense, MatrixA& a, MatrixB& b, VectorALPHA& alpha,
             VectorBETA& beta, MatrixVL& vl, MatrixVR& vr, integer_t& ilo,
             integer_t& ihi, VectorLSCALE& lscale, VectorRSCALE& rscale,
             real_type& abnrm, real_type& bbnrm, VectorRCONDE& rconde,
@@ -429,7 +429,7 @@
                 workspace( tmp_work, tmp_rwork, tmp_iwork, tmp_bwork ) );
     }
 
- static integer_t min_size_work( char const sense, integer_t const n ) {
+ static integer_t min_size_work( const char sense, const integer_t n ) {
         if ( sense == 'N' )
             return std::max( 1, 2*n );
         else {
@@ -440,21 +440,21 @@
         }
     }
 
- static integer_t min_size_rwork( char const balanc, integer_t const n ) {
+ static integer_t min_size_rwork( const char balanc, const integer_t n ) {
         if ( balanc == 'S' || balanc == 'B' )
             return std::max( 1, 6*n );
         else
             return std::max( 1, 2*n );
     }
 
- static integer_t min_size_iwork( char const sense, integer_t const n ) {
+ static integer_t min_size_iwork( const char sense, const integer_t n ) {
         if ( sense == 'E' )
           return 0;
         else
           return n+2;
     }
 
- static integer_t min_size_bwork( char const sense, integer_t const n ) {
+ static integer_t min_size_bwork( const char sense, const integer_t n ) {
         if ( sense == 'N' )
           return 0;
         else
@@ -468,8 +468,8 @@
         typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
         typename MatrixVR, typename VectorLSCALE, typename VectorRSCALE,
         typename VectorRCONDE, typename VectorRCONDV, typename Workspace >
-inline integer_t ggevx( char const balanc, char const jobvl,
- char const jobvr, char const sense, MatrixA& a, MatrixB& b,
+inline integer_t ggevx( const char balanc, const char jobvl,
+ const char jobvr, const char sense, MatrixA& a, MatrixB& b,
         VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta,
         MatrixVL& vl, MatrixVR& vr, integer_t& ilo, integer_t& ihi,
         VectorLSCALE& lscale, VectorRSCALE& rscale,
@@ -491,8 +491,8 @@
         typename VectorALPHAI, typename VectorBETA, typename MatrixVL,
         typename MatrixVR, typename VectorLSCALE, typename VectorRSCALE,
         typename VectorRCONDE, typename VectorRCONDV >
-inline integer_t ggevx( char const balanc, char const jobvl,
- char const jobvr, char const sense, MatrixA& a, MatrixB& b,
+inline integer_t ggevx( const char balanc, const char jobvl,
+ const char jobvr, const char sense, MatrixA& a, MatrixB& b,
         VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta,
         MatrixVL& vl, MatrixVR& vr, integer_t& ilo, integer_t& ihi,
         VectorLSCALE& lscale, VectorRSCALE& rscale,
@@ -513,8 +513,8 @@
         typename VectorBETA, typename MatrixVL, typename MatrixVR,
         typename VectorLSCALE, typename VectorRSCALE, typename VectorRCONDE,
         typename VectorRCONDV, typename Workspace >
-inline integer_t ggevx( char const balanc, char const jobvl,
- char const jobvr, char const sense, MatrixA& a, MatrixB& b,
+inline integer_t ggevx( const char balanc, const char jobvl,
+ const char jobvr, const char sense, MatrixA& a, MatrixB& b,
         VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl, MatrixVR& vr,
         integer_t& ilo, integer_t& ihi, VectorLSCALE& lscale,
         VectorRSCALE& rscale, typename traits::type_traits<
@@ -536,8 +536,8 @@
         typename VectorBETA, typename MatrixVL, typename MatrixVR,
         typename VectorLSCALE, typename VectorRSCALE, typename VectorRCONDE,
         typename VectorRCONDV >
-inline integer_t ggevx( char const balanc, char const jobvl,
- char const jobvr, char const sense, MatrixA& a, MatrixB& b,
+inline integer_t ggevx( const char balanc, const char jobvl,
+ const char jobvr, const char sense, MatrixA& a, MatrixB& b,
         VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl, MatrixVR& vr,
         integer_t& ilo, integer_t& ihi, VectorLSCALE& lscale,
         VectorRSCALE& rscale, typename traits::type_traits<

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggglm.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggglm.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggglm.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,35 +37,35 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ggglm( integer_t const n, integer_t const m,
- integer_t const p, float* a, integer_t const lda, float* b,
- integer_t const ldb, float* d, float* x, float* y, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void ggglm( const integer_t n, const integer_t m,
+ const integer_t p, float* a, const integer_t lda, float* b,
+ const integer_t ldb, float* d, float* x, float* y, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SGGGLM( &n, &m, &p, a, &lda, b, &ldb, d, x, y, work, &lwork,
                 &info );
     }
- inline void ggglm( integer_t const n, integer_t const m,
- integer_t const p, double* a, integer_t const lda, double* b,
- integer_t const ldb, double* d, double* x, double* y,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void ggglm( const integer_t n, const integer_t m,
+ const integer_t p, double* a, const integer_t lda, double* b,
+ const integer_t ldb, double* d, double* x, double* y,
+ double* work, const integer_t lwork, integer_t& info ) {
         LAPACK_DGGGLM( &n, &m, &p, a, &lda, b, &ldb, d, x, y, work, &lwork,
                 &info );
     }
- inline void ggglm( integer_t const n, integer_t const m,
- integer_t const p, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* d,
+ inline void ggglm( const integer_t n, const integer_t m,
+ const integer_t p, traits::complex_f* a, const integer_t lda,
+ traits::complex_f* b, const integer_t ldb, traits::complex_f* d,
             traits::complex_f* x, traits::complex_f* y,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CGGGLM( &n, &m, &p, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(d),
                 traits::complex_ptr(x), traits::complex_ptr(y),
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void ggglm( integer_t const n, integer_t const m,
- integer_t const p, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* d,
+ inline void ggglm( const integer_t n, const integer_t m,
+ const integer_t p, traits::complex_d* a, const integer_t lda,
+ traits::complex_d* b, const integer_t ldb, traits::complex_d* d,
             traits::complex_d* x, traits::complex_d* y,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZGGGLM( &n, &m, &p, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(d),
                 traits::complex_ptr(x), traits::complex_ptr(y),
@@ -154,8 +154,8 @@
         invoke( a, b, d, x, y, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- integer_t const p ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const integer_t p ) {
         return std::max( 1, n+m+p );
     }
 };
@@ -237,8 +237,8 @@
         invoke( a, b, d, x, y, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- integer_t const p ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const integer_t p ) {
         return std::max( 1, n+m+p );
     }
 };

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gglse.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gglse.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gglse.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,35 +37,35 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gglse( integer_t const m, integer_t const n,
- integer_t const p, float* a, integer_t const lda, float* b,
- integer_t const ldb, float* c, float* d, float* x, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void gglse( const integer_t m, const integer_t n,
+ const integer_t p, float* a, const integer_t lda, float* b,
+ const integer_t ldb, float* c, float* d, float* x, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SGGLSE( &m, &n, &p, a, &lda, b, &ldb, c, d, x, work, &lwork,
                 &info );
     }
- inline void gglse( integer_t const m, integer_t const n,
- integer_t const p, double* a, integer_t const lda, double* b,
- integer_t const ldb, double* c, double* d, double* x,
- double* work, integer_t const lwork, integer_t& info ) {
+ inline void gglse( const integer_t m, const integer_t n,
+ const integer_t p, double* a, const integer_t lda, double* b,
+ const integer_t ldb, double* c, double* d, double* x,
+ double* work, const integer_t lwork, integer_t& info ) {
         LAPACK_DGGLSE( &m, &n, &p, a, &lda, b, &ldb, c, d, x, work, &lwork,
                 &info );
     }
- inline void gglse( integer_t const m, integer_t const n,
- integer_t const p, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* c,
+ inline void gglse( const integer_t m, const integer_t n,
+ const integer_t p, traits::complex_f* a, const integer_t lda,
+ traits::complex_f* b, const integer_t ldb, traits::complex_f* c,
             traits::complex_f* d, traits::complex_f* x,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CGGLSE( &m, &n, &p, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(c),
                 traits::complex_ptr(d), traits::complex_ptr(x),
                 traits::complex_ptr(work), &lwork, &info );
     }
- inline void gglse( integer_t const m, integer_t const n,
- integer_t const p, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* c,
+ inline void gglse( const integer_t m, const integer_t n,
+ const integer_t p, traits::complex_d* a, const integer_t lda,
+ traits::complex_d* b, const integer_t ldb, traits::complex_d* c,
             traits::complex_d* d, traits::complex_d* x,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZGGLSE( &m, &n, &p, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(c),
                 traits::complex_ptr(d), traits::complex_ptr(x),
@@ -152,8 +152,8 @@
         invoke( a, b, c, d, x, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- integer_t const p ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const integer_t p ) {
         return std::max( 1, m+n+p );
     }
 };
@@ -233,8 +233,8 @@
         invoke( a, b, c, d, x, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const m, integer_t const n,
- integer_t const p ) {
+ static integer_t min_size_work( const integer_t m, const integer_t n,
+ const integer_t p ) {
         return std::max( 1, m+n+p );
     }
 };

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggsvd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggsvd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ggsvd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,35 +36,35 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ggsvd( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const n, integer_t const p,
- integer_t& k, integer_t& l, float* a, integer_t const lda,
- float* b, integer_t const ldb, float* alpha, float* beta,
- float* u, integer_t const ldu, float* v, integer_t const ldv,
- float* q, integer_t const ldq, float* work, integer_t* iwork,
+ inline void ggsvd( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t n, const integer_t p,
+ integer_t& k, integer_t& l, float* a, const integer_t lda,
+ float* b, const integer_t ldb, float* alpha, float* beta,
+ float* u, const integer_t ldu, float* v, const integer_t ldv,
+ float* q, const integer_t ldq, float* work, integer_t* iwork,
             integer_t& info ) {
         LAPACK_SGGSVD( &jobu, &jobv, &jobq, &m, &n, &p, &k, &l, a, &lda, b,
                 &ldb, alpha, beta, u, &ldu, v, &ldv, q, &ldq, work, iwork,
                 &info );
     }
- inline void ggsvd( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const n, integer_t const p,
- integer_t& k, integer_t& l, double* a, integer_t const lda,
- double* b, integer_t const ldb, double* alpha, double* beta,
- double* u, integer_t const ldu, double* v, integer_t const ldv,
- double* q, integer_t const ldq, double* work, integer_t* iwork,
+ inline void ggsvd( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t n, const integer_t p,
+ integer_t& k, integer_t& l, double* a, const integer_t lda,
+ double* b, const integer_t ldb, double* alpha, double* beta,
+ double* u, const integer_t ldu, double* v, const integer_t ldv,
+ double* q, const integer_t ldq, double* work, integer_t* iwork,
             integer_t& info ) {
         LAPACK_DGGSVD( &jobu, &jobv, &jobq, &m, &n, &p, &k, &l, a, &lda, b,
                 &ldb, alpha, beta, u, &ldu, v, &ldv, q, &ldq, work, iwork,
                 &info );
     }
- inline void ggsvd( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const n, integer_t const p,
+ inline void ggsvd( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t n, const integer_t p,
             integer_t& k, integer_t& l, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb,
+ const integer_t lda, traits::complex_f* b, const integer_t ldb,
             float* alpha, float* beta, traits::complex_f* u,
- integer_t const ldu, traits::complex_f* v, integer_t const ldv,
- traits::complex_f* q, integer_t const ldq,
+ const integer_t ldu, traits::complex_f* v, const integer_t ldv,
+ traits::complex_f* q, const integer_t ldq,
             traits::complex_f* work, float* rwork, integer_t* iwork,
             integer_t& info ) {
         LAPACK_CGGSVD( &jobu, &jobv, &jobq, &m, &n, &p, &k, &l,
@@ -73,13 +73,13 @@
                 traits::complex_ptr(v), &ldv, traits::complex_ptr(q), &ldq,
                 traits::complex_ptr(work), rwork, iwork, &info );
     }
- inline void ggsvd( char const jobu, char const jobv, char const jobq,
- integer_t const m, integer_t const n, integer_t const p,
+ inline void ggsvd( const char jobu, const char jobv, const char jobq,
+ const integer_t m, const integer_t n, const integer_t p,
             integer_t& k, integer_t& l, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb,
+ const integer_t lda, traits::complex_d* b, const integer_t ldb,
             double* alpha, double* beta, traits::complex_d* u,
- integer_t const ldu, traits::complex_d* v, integer_t const ldv,
- traits::complex_d* q, integer_t const ldq,
+ const integer_t ldu, traits::complex_d* v, const integer_t ldv,
+ traits::complex_d* q, const integer_t ldq,
             traits::complex_d* work, double* rwork, integer_t* iwork,
             integer_t& info ) {
         LAPACK_ZGGSVD( &jobu, &jobv, &jobq, &m, &n, &p, &k, &l,
@@ -105,7 +105,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ, typename WORK, typename IWORK >
- static void invoke( char const jobu, char const jobv, char const jobq,
+ static void invoke( const char jobu, const char jobv, const char jobq,
             integer_t& k, integer_t& l, MatrixA& a, MatrixB& b,
             VectorALPHA& alpha, VectorBETA& beta, MatrixU& u, MatrixV& v,
             MatrixQ& q, integer_t& info, detail::workspace2< WORK,
@@ -161,7 +161,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
+ static void invoke( const char jobu, const char jobv, const char jobq,
             integer_t& k, integer_t& l, MatrixA& a, MatrixB& b,
             VectorALPHA& alpha, VectorBETA& beta, MatrixU& u, MatrixV& v,
             MatrixQ& q, integer_t& info, minimal_workspace work ) {
@@ -178,7 +178,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
+ static void invoke( const char jobu, const char jobv, const char jobq,
             integer_t& k, integer_t& l, MatrixA& a, MatrixB& b,
             VectorALPHA& alpha, VectorBETA& beta, MatrixU& u, MatrixV& v,
             MatrixQ& q, integer_t& info, optimal_workspace work ) {
@@ -186,12 +186,12 @@
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n, integer_t const m,
- integer_t const p ) {
+ static integer_t min_size_work( const integer_t n, const integer_t m,
+ const integer_t p ) {
         return std::max(3*n,std::max(m,p))+n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -207,7 +207,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ, typename WORK, typename RWORK, typename IWORK >
- static void invoke( char const jobu, char const jobv, char const jobq,
+ static void invoke( const char jobu, const char jobv, const char jobq,
             integer_t& k, integer_t& l, MatrixA& a, MatrixB& b,
             VectorALPHA& alpha, VectorBETA& beta, MatrixU& u, MatrixV& v,
             MatrixQ& q, integer_t& info, detail::workspace3< WORK, RWORK,
@@ -263,7 +263,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
+ static void invoke( const char jobu, const char jobv, const char jobq,
             integer_t& k, integer_t& l, MatrixA& a, MatrixB& b,
             VectorALPHA& alpha, VectorBETA& beta, MatrixU& u, MatrixV& v,
             MatrixQ& q, integer_t& info, minimal_workspace work ) {
@@ -282,7 +282,7 @@
     template< typename MatrixA, typename MatrixB, typename VectorALPHA,
             typename VectorBETA, typename MatrixU, typename MatrixV,
             typename MatrixQ >
- static void invoke( char const jobu, char const jobv, char const jobq,
+ static void invoke( const char jobu, const char jobv, const char jobq,
             integer_t& k, integer_t& l, MatrixA& a, MatrixB& b,
             VectorALPHA& alpha, VectorBETA& beta, MatrixU& u, MatrixV& v,
             MatrixQ& q, integer_t& info, optimal_workspace work ) {
@@ -290,16 +290,16 @@
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n, integer_t const m,
- integer_t const p ) {
+ static integer_t min_size_work( const integer_t n, const integer_t m,
+ const integer_t p ) {
         return std::max(3*n,std::max(m,p))+n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -309,8 +309,8 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixU, typename MatrixV,
         typename MatrixQ, typename Workspace >
-inline integer_t ggsvd( char const jobu, char const jobv,
- char const jobq, integer_t& k, integer_t& l, MatrixA& a, MatrixB& b,
+inline integer_t ggsvd( const char jobu, const char jobv,
+ const char jobq, integer_t& k, integer_t& l, MatrixA& a, MatrixB& b,
         VectorALPHA& alpha, VectorBETA& beta, MatrixU& u, MatrixV& v,
         MatrixQ& q, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
@@ -324,8 +324,8 @@
 template< typename MatrixA, typename MatrixB, typename VectorALPHA,
         typename VectorBETA, typename MatrixU, typename MatrixV,
         typename MatrixQ >
-inline integer_t ggsvd( char const jobu, char const jobv,
- char const jobq, integer_t& k, integer_t& l, MatrixA& a, MatrixB& b,
+inline integer_t ggsvd( const char jobu, const char jobv,
+ const char jobq, integer_t& k, integer_t& l, MatrixA& a, MatrixB& b,
         VectorALPHA& alpha, VectorBETA& beta, MatrixU& u, MatrixV& v,
         MatrixQ& q ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gtsv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gtsv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gtsv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,27 +31,27 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gtsv( integer_t const n, integer_t const nrhs, float* dl,
- float* d, float* du, float* b, integer_t const ldb,
+ inline void gtsv( const integer_t n, const integer_t nrhs, float* dl,
+ float* d, float* du, float* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_SGTSV( &n, &nrhs, dl, d, du, b, &ldb, &info );
     }
- inline void gtsv( integer_t const n, integer_t const nrhs, double* dl,
- double* d, double* du, double* b, integer_t const ldb,
+ inline void gtsv( const integer_t n, const integer_t nrhs, double* dl,
+ double* d, double* du, double* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_DGTSV( &n, &nrhs, dl, d, du, b, &ldb, &info );
     }
- inline void gtsv( integer_t const n, integer_t const nrhs,
+ inline void gtsv( const integer_t n, const integer_t nrhs,
             traits::complex_f* dl, traits::complex_f* d,
- traits::complex_f* du, traits::complex_f* b, integer_t const ldb,
+ traits::complex_f* du, traits::complex_f* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_CGTSV( &n, &nrhs, traits::complex_ptr(dl),
                 traits::complex_ptr(d), traits::complex_ptr(du),
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void gtsv( integer_t const n, integer_t const nrhs,
+ inline void gtsv( const integer_t n, const integer_t nrhs,
             traits::complex_d* dl, traits::complex_d* d,
- traits::complex_d* du, traits::complex_d* b, integer_t const ldb,
+ traits::complex_d* du, traits::complex_d* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_ZGTSV( &n, &nrhs, traits::complex_ptr(dl),
                 traits::complex_ptr(d), traits::complex_ptr(du),
@@ -78,7 +78,7 @@
     // templated specialization
     template< typename VectorDL, typename VectorD, typename VectorDU,
             typename MatrixB >
- static void invoke( integer_t const n, VectorDL& dl, VectorD& d,
+ static void invoke( const integer_t n, VectorDL& dl, VectorD& d,
             VectorDU& du, MatrixB& b, integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorDL >::value_type, typename traits::vector_traits<
@@ -106,7 +106,7 @@
 // template function to call gtsv
 template< typename VectorDL, typename VectorD, typename VectorDU,
         typename MatrixB >
-inline integer_t gtsv( integer_t const n, VectorDL& dl, VectorD& d,
+inline integer_t gtsv( const integer_t n, VectorDL& dl, VectorD& d,
         VectorDU& du, MatrixB& b ) {
     typedef typename traits::vector_traits< VectorDL >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gtsvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gtsvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/gtsvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,34 +36,36 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void gtsvx( char const fact, char const trans, integer_t const n,
- integer_t const nrhs, float* dl, float* d, float* du, float* dlf,
- float* df, float* duf, float* du2, integer_t* ipiv, float* b,
- integer_t const ldb, float* x, integer_t const ldx, float& rcond,
- float* ferr, float* berr, float* work, integer_t* iwork,
- integer_t& info ) {
+ inline void gtsvx( const char fact, const char trans, const integer_t n,
+ const integer_t nrhs, const float* dl, const float* d,
+ const float* du, float* dlf, float* df, float* duf, float* du2,
+ integer_t* ipiv, const float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float& rcond, float* ferr, float* berr,
+ float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SGTSVX( &fact, &trans, &n, &nrhs, dl, d, du, dlf, df, duf, du2,
                 ipiv, b, &ldb, x, &ldx, &rcond, ferr, berr, work, iwork,
                 &info );
     }
- inline void gtsvx( char const fact, char const trans, integer_t const n,
- integer_t const nrhs, double* dl, double* d, double* du,
- double* dlf, double* df, double* duf, double* du2,
- integer_t* ipiv, double* b, integer_t const ldb, double* x,
- integer_t const ldx, double& rcond, double* ferr, double* berr,
- double* work, integer_t* iwork, integer_t& info ) {
+ inline void gtsvx( const char fact, const char trans, const integer_t n,
+ const integer_t nrhs, const double* dl, const double* d,
+ const double* du, double* dlf, double* df, double* duf,
+ double* du2, integer_t* ipiv, const double* b,
+ const integer_t ldb, double* x, const integer_t ldx,
+ double& rcond, double* ferr, double* berr, double* work,
+ integer_t* iwork, integer_t& info ) {
         LAPACK_DGTSVX( &fact, &trans, &n, &nrhs, dl, d, du, dlf, df, duf, du2,
                 ipiv, b, &ldb, x, &ldx, &rcond, ferr, berr, work, iwork,
                 &info );
     }
- inline void gtsvx( char const fact, char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_f* dl, traits::complex_f* d,
- traits::complex_f* du, traits::complex_f* dlf,
- traits::complex_f* df, traits::complex_f* duf,
- traits::complex_f* du2, integer_t* ipiv, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* x, integer_t const ldx,
- float& rcond, float* ferr, float* berr, traits::complex_f* work,
- float* rwork, integer_t& info ) {
+ inline void gtsvx( const char fact, const char trans, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* dl,
+ const traits::complex_f* d, const traits::complex_f* du,
+ traits::complex_f* dlf, traits::complex_f* df,
+ traits::complex_f* duf, traits::complex_f* du2, integer_t* ipiv,
+ const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float& rcond,
+ float* ferr, float* berr, traits::complex_f* work, float* rwork,
+ integer_t& info ) {
         LAPACK_CGTSVX( &fact, &trans, &n, &nrhs, traits::complex_ptr(dl),
                 traits::complex_ptr(d), traits::complex_ptr(du),
                 traits::complex_ptr(dlf), traits::complex_ptr(df),
@@ -71,14 +73,15 @@
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(x), &ldx,
                 &rcond, ferr, berr, traits::complex_ptr(work), rwork, &info );
     }
- inline void gtsvx( char const fact, char const trans, integer_t const n,
- integer_t const nrhs, traits::complex_d* dl, traits::complex_d* d,
- traits::complex_d* du, traits::complex_d* dlf,
- traits::complex_d* df, traits::complex_d* duf,
- traits::complex_d* du2, integer_t* ipiv, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* x, integer_t const ldx,
- double& rcond, double* ferr, double* berr,
- traits::complex_d* work, double* rwork, integer_t& info ) {
+ inline void gtsvx( const char fact, const char trans, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* dl,
+ const traits::complex_d* d, const traits::complex_d* du,
+ traits::complex_d* dlf, traits::complex_d* df,
+ traits::complex_d* duf, traits::complex_d* du2, integer_t* ipiv,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double& rcond,
+ double* ferr, double* berr, traits::complex_d* work,
+ double* rwork, integer_t& info ) {
         LAPACK_ZGTSVX( &fact, &trans, &n, &nrhs, traits::complex_ptr(dl),
                 traits::complex_ptr(d), traits::complex_ptr(du),
                 traits::complex_ptr(dlf), traits::complex_ptr(df),
@@ -105,12 +108,12 @@
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename IWORK >
- static void invoke( char const fact, char const trans, integer_t const n,
- VectorDL& dl, VectorD& d, VectorDU& du, VectorDLF& dlf,
- VectorDF& df, VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, real_type& rcond, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
- IWORK > work ) {
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ VectorDLF& dlf, VectorDF& df, VectorDUF& duf, VectorDU2& du2,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorDL >::value_type, typename traits::vector_traits<
                 VectorD >::value_type >::value) );
@@ -174,11 +177,12 @@
             typename VectorDLF, typename VectorDF, typename VectorDUF,
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, integer_t const n,
- VectorDL& dl, VectorD& d, VectorDU& du, VectorDLF& dlf,
- VectorDF& df, VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, real_type& rcond, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ VectorDLF& dlf, VectorDF& df, VectorDUF& duf, VectorDU2& du2,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
         invoke( fact, trans, n, dl, d, du, dlf, df, duf, du2, ipiv, b, x,
@@ -190,20 +194,21 @@
             typename VectorDLF, typename VectorDF, typename VectorDUF,
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, integer_t const n,
- VectorDL& dl, VectorD& d, VectorDU& du, VectorDLF& dlf,
- VectorDF& df, VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, real_type& rcond, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ VectorDLF& dlf, VectorDF& df, VectorDUF& duf, VectorDU2& du2,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( fact, trans, n, dl, d, du, dlf, df, duf, du2, ipiv, b, x,
                 rcond, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -221,12 +226,12 @@
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR,
             typename WORK, typename RWORK >
- static void invoke( char const fact, char const trans, integer_t const n,
- VectorDL& dl, VectorD& d, VectorDU& du, VectorDLF& dlf,
- VectorDF& df, VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, real_type& rcond, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
- RWORK > work ) {
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ VectorDLF& dlf, VectorDF& df, VectorDUF& duf, VectorDU2& du2,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -287,11 +292,12 @@
             typename VectorDLF, typename VectorDF, typename VectorDUF,
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, integer_t const n,
- VectorDL& dl, VectorD& d, VectorDU& du, VectorDLF& dlf,
- VectorDF& df, VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, real_type& rcond, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ VectorDLF& dlf, VectorDF& df, VectorDUF& duf, VectorDU2& du2,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
         invoke( fact, trans, n, dl, d, du, dlf, df, duf, du2, ipiv, b, x,
@@ -303,20 +309,21 @@
             typename VectorDLF, typename VectorDF, typename VectorDUF,
             typename VectorDU2, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, char const trans, integer_t const n,
- VectorDL& dl, VectorD& d, VectorDU& du, VectorDLF& dlf,
- VectorDF& df, VectorDUF& duf, VectorDU2& du2, VectorIPIV& ipiv,
- MatrixB& b, MatrixX& x, real_type& rcond, VectorFERR& ferr,
- VectorBERR& berr, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char fact, const char trans, const integer_t n,
+ const VectorDL& dl, const VectorD& d, const VectorDU& du,
+ VectorDLF& dlf, VectorDF& df, VectorDUF& duf, VectorDU2& du2,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
+ VectorFERR& ferr, VectorBERR& berr, integer_t& info,
+ optimal_workspace work ) {
         invoke( fact, trans, n, dl, d, du, dlf, df, duf, du2, ipiv, b, x,
                 rcond, ferr, berr, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -328,10 +335,10 @@
         typename VectorDU2, typename VectorIPIV, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR,
         typename Workspace >
-inline integer_t gtsvx( char const fact, char const trans,
- integer_t const n, VectorDL& dl, VectorD& d, VectorDU& du,
- VectorDLF& dlf, VectorDF& df, VectorDUF& duf, VectorDU2& du2,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
+inline integer_t gtsvx( const char fact, const char trans,
+ const integer_t n, const VectorDL& dl, const VectorD& d,
+ const VectorDU& du, VectorDLF& dlf, VectorDF& df, VectorDUF& duf,
+ VectorDU2& du2, VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::vector_traits<
         VectorDL >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr, Workspace work ) {
@@ -347,10 +354,10 @@
         typename VectorDLF, typename VectorDF, typename VectorDUF,
         typename VectorDU2, typename VectorIPIV, typename MatrixB,
         typename MatrixX, typename VectorFERR, typename VectorBERR >
-inline integer_t gtsvx( char const fact, char const trans,
- integer_t const n, VectorDL& dl, VectorD& d, VectorDU& du,
- VectorDLF& dlf, VectorDF& df, VectorDUF& duf, VectorDU2& du2,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
+inline integer_t gtsvx( const char fact, const char trans,
+ const integer_t n, const VectorDL& dl, const VectorD& d,
+ const VectorDU& du, VectorDLF& dlf, VectorDF& df, VectorDUF& duf,
+ VectorDU2& du2, VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::vector_traits<
         VectorDL >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr ) {

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbev.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbev.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbev.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,17 +33,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hbev( char const jobz, char const uplo, integer_t const n,
- integer_t const kd, traits::complex_f* ab, integer_t const ldab,
- float* w, traits::complex_f* z, integer_t const ldz,
+ inline void hbev( const char jobz, const char uplo, const integer_t n,
+ const integer_t kd, traits::complex_f* ab, const integer_t ldab,
+ float* w, traits::complex_f* z, const integer_t ldz,
             traits::complex_f* work, float* rwork, integer_t& info ) {
         LAPACK_CHBEV( &jobz, &uplo, &n, &kd, traits::complex_ptr(ab), &ldab,
                 w, traits::complex_ptr(z), &ldz, traits::complex_ptr(work),
                 rwork, &info );
     }
- inline void hbev( char const jobz, char const uplo, integer_t const n,
- integer_t const kd, traits::complex_d* ab, integer_t const ldab,
- double* w, traits::complex_d* z, integer_t const ldz,
+ inline void hbev( const char jobz, const char uplo, const integer_t n,
+ const integer_t kd, traits::complex_d* ab, const integer_t ldab,
+ double* w, traits::complex_d* z, const integer_t ldz,
             traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZHBEV( &jobz, &uplo, &n, &kd, traits::complex_ptr(ab), &ldab,
                 w, traits::complex_ptr(z), &ldz, traits::complex_ptr(work),
@@ -61,8 +61,8 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ,
             typename WORK, typename RWORK >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
             integer_t& info, detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
@@ -87,8 +87,8 @@
 
     // minimal workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -98,17 +98,17 @@
 
     // optimal workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
             integer_t& info, optimal_workspace work ) {
         invoke( jobz, n, kd, ab, w, z, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return std::max(1,3*n-2);
     }
 };
@@ -117,8 +117,8 @@
 // template function to call hbev
 template< typename MatrixAB, typename VectorW, typename MatrixZ,
         typename Workspace >
-inline integer_t hbev( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+inline integer_t hbev( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
@@ -128,8 +128,8 @@
 
 // template function to call hbev, default workspace type
 template< typename MatrixAB, typename VectorW, typename MatrixZ >
-inline integer_t hbev( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z ) {
+inline integer_t hbev( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     hbev_impl< value_type >::invoke( jobz, n, kd, ab, w, z, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbevd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbevd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbevd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,21 +34,21 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hbevd( char const jobz, char const uplo, integer_t const n,
- integer_t const kd, traits::complex_f* ab, integer_t const ldab,
- float* w, traits::complex_f* z, integer_t const ldz,
- traits::complex_f* work, integer_t const lwork, float* rwork,
- integer_t const lrwork, integer_t* iwork, integer_t const liwork,
+ inline void hbevd( const char jobz, const char uplo, const integer_t n,
+ const integer_t kd, traits::complex_f* ab, const integer_t ldab,
+ float* w, traits::complex_f* z, const integer_t ldz,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
+ const integer_t lrwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_CHBEVD( &jobz, &uplo, &n, &kd, traits::complex_ptr(ab), &ldab,
                 w, traits::complex_ptr(z), &ldz, traits::complex_ptr(work),
                 &lwork, rwork, &lrwork, iwork, &liwork, &info );
     }
- inline void hbevd( char const jobz, char const uplo, integer_t const n,
- integer_t const kd, traits::complex_d* ab, integer_t const ldab,
- double* w, traits::complex_d* z, integer_t const ldz,
- traits::complex_d* work, integer_t const lwork, double* rwork,
- integer_t const lrwork, integer_t* iwork, integer_t const liwork,
+ inline void hbevd( const char jobz, const char uplo, const integer_t n,
+ const integer_t kd, traits::complex_d* ab, const integer_t ldab,
+ double* w, traits::complex_d* z, const integer_t ldz,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
+ const integer_t lrwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_ZHBEVD( &jobz, &uplo, &n, &kd, traits::complex_ptr(ab), &ldab,
                 w, traits::complex_ptr(z), &ldz, traits::complex_ptr(work),
@@ -66,8 +66,8 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ,
             typename WORK, typename RWORK, typename IWORK >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
             integer_t& info, detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
@@ -98,8 +98,8 @@
 
     // minimal workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( jobz,
                 n ) );
@@ -113,8 +113,8 @@
 
     // optimal workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
             integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         real_type opt_size_rwork;
@@ -133,7 +133,7 @@
                 tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -144,7 +144,7 @@
         }
     }
 
- static integer_t min_size_rwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_rwork( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -155,7 +155,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -167,8 +167,8 @@
 // template function to call hbevd
 template< typename MatrixAB, typename VectorW, typename MatrixZ,
         typename Workspace >
-inline integer_t hbevd( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+inline integer_t hbevd( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
@@ -178,8 +178,8 @@
 
 // template function to call hbevd, default workspace type
 template< typename MatrixAB, typename VectorW, typename MatrixZ >
-inline integer_t hbevd( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z ) {
+inline integer_t hbevd( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     hbevd_impl< value_type >::invoke( jobz, n, kd, ab, w, z, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbevx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbevx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbevx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,12 +33,12 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hbevx( char const jobz, char const range, char const uplo,
- integer_t const n, integer_t const kd, traits::complex_f* ab,
- integer_t const ldab, traits::complex_f* q, integer_t const ldq,
- float const vl, float const vu, integer_t const il,
- integer_t const iu, float const abstol, integer_t& m, float* w,
- traits::complex_f* z, integer_t const ldz,
+ inline void hbevx( const char jobz, const char range, const char uplo,
+ const integer_t n, const integer_t kd, traits::complex_f* ab,
+ const integer_t ldab, traits::complex_f* q, const integer_t ldq,
+ const float vl, const float vu, const integer_t il,
+ const integer_t iu, const float abstol, integer_t& m, float* w,
+ traits::complex_f* z, const integer_t ldz,
             traits::complex_f* work, float* rwork, integer_t* iwork,
             integer_t* ifail, integer_t& info ) {
         LAPACK_CHBEVX( &jobz, &range, &uplo, &n, &kd, traits::complex_ptr(ab),
@@ -46,12 +46,12 @@
                 &abstol, &m, w, traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), rwork, iwork, ifail, &info );
     }
- inline void hbevx( char const jobz, char const range, char const uplo,
- integer_t const n, integer_t const kd, traits::complex_d* ab,
- integer_t const ldab, traits::complex_d* q, integer_t const ldq,
- double const vl, double const vu, integer_t const il,
- integer_t const iu, double const abstol, integer_t& m, double* w,
- traits::complex_d* z, integer_t const ldz,
+ inline void hbevx( const char jobz, const char range, const char uplo,
+ const integer_t n, const integer_t kd, traits::complex_d* ab,
+ const integer_t ldab, traits::complex_d* q, const integer_t ldq,
+ const double vl, const double vu, const integer_t il,
+ const integer_t iu, const double abstol, integer_t& m, double* w,
+ traits::complex_d* z, const integer_t ldz,
             traits::complex_d* work, double* rwork, integer_t* iwork,
             integer_t* ifail, integer_t& info ) {
         LAPACK_ZHBEVX( &jobz, &range, &uplo, &n, &kd, traits::complex_ptr(ab),
@@ -72,10 +72,10 @@
     template< typename MatrixAB, typename MatrixQ, typename VectorW,
             typename MatrixZ, typename VectorIFAIL, typename WORK,
             typename RWORK, typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixQ& q, real_type const vl,
- real_type const vu, integer_t const il, integer_t const iu,
- real_type const abstol, integer_t& m, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixQ& q, const real_type vl,
+ const real_type vu, const integer_t il, const integer_t iu,
+ const real_type abstol, integer_t& m, VectorW& w, MatrixZ& z,
             VectorIFAIL& ifail, integer_t& info, detail::workspace3< WORK,
             RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -113,10 +113,10 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixQ, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixQ& q, real_type const vl,
- real_type const vu, integer_t const il, integer_t const iu,
- real_type const abstol, integer_t& m, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixQ& q, const real_type vl,
+ const real_type vu, const integer_t il, const integer_t iu,
+ const real_type abstol, integer_t& m, VectorW& w, MatrixZ& z,
             VectorIFAIL& ifail, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -128,24 +128,24 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixQ, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixQ& q, real_type const vl,
- real_type const vu, integer_t const il, integer_t const iu,
- real_type const abstol, integer_t& m, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixQ& q, const real_type vl,
+ const real_type vu, const integer_t il, const integer_t iu,
+ const real_type abstol, integer_t& m, VectorW& w, MatrixZ& z,
             VectorIFAIL& ifail, integer_t& info, optimal_workspace work ) {
         invoke( jobz, range, n, kd, ab, q, vl, vu, il, iu, abstol, m, w, z,
                 ifail, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 7*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -154,16 +154,16 @@
 // template function to call hbevx
 template< typename MatrixAB, typename MatrixQ, typename VectorW,
         typename MatrixZ, typename VectorIFAIL, typename Workspace >
-inline integer_t hbevx( char const jobz, char const range,
- integer_t const n, integer_t const kd, MatrixAB& ab, MatrixQ& q,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t hbevx( const char jobz, const char range,
+ const integer_t n, const integer_t kd, MatrixAB& ab, MatrixQ& q,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixAB >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     hbevx_impl< value_type >::invoke( jobz, range, n, kd, ab, q, vl, vu,
@@ -174,16 +174,16 @@
 // template function to call hbevx, default workspace type
 template< typename MatrixAB, typename MatrixQ, typename VectorW,
         typename MatrixZ, typename VectorIFAIL >
-inline integer_t hbevx( char const jobz, char const range,
- integer_t const n, integer_t const kd, MatrixAB& ab, MatrixQ& q,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t hbevx( const char jobz, const char range,
+ const integer_t n, const integer_t kd, MatrixAB& ab, MatrixQ& q,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixAB >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     hbevx_impl< value_type >::invoke( jobz, range, n, kd, ab, q, vl, vu,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,20 +33,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hbgv( char const jobz, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, traits::complex_f* ab,
- integer_t const ldab, traits::complex_f* bb, integer_t const ldbb,
- float* w, traits::complex_f* z, integer_t const ldz,
+ inline void hbgv( const char jobz, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, traits::complex_f* ab,
+ const integer_t ldab, traits::complex_f* bb, const integer_t ldbb,
+ float* w, traits::complex_f* z, const integer_t ldz,
             traits::complex_f* work, float* rwork, integer_t& info ) {
         LAPACK_CHBGV( &jobz, &uplo, &n, &ka, &kb, traits::complex_ptr(ab),
                 &ldab, traits::complex_ptr(bb), &ldbb, w,
                 traits::complex_ptr(z), &ldz, traits::complex_ptr(work),
                 rwork, &info );
     }
- inline void hbgv( char const jobz, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, traits::complex_d* ab,
- integer_t const ldab, traits::complex_d* bb, integer_t const ldbb,
- double* w, traits::complex_d* z, integer_t const ldz,
+ inline void hbgv( const char jobz, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, traits::complex_d* ab,
+ const integer_t ldab, traits::complex_d* bb, const integer_t ldbb,
+ double* w, traits::complex_d* z, const integer_t ldz,
             traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZHBGV( &jobz, &uplo, &n, &ka, &kb, traits::complex_ptr(ab),
                 &ldab, traits::complex_ptr(bb), &ldbb, w,
@@ -65,8 +65,8 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ, typename WORK, typename RWORK >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -99,8 +99,8 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
@@ -112,18 +112,18 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             optimal_workspace work ) {
         invoke( jobz, n, ka, kb, ab, bb, w, z, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 3*n;
     }
 };
@@ -132,8 +132,8 @@
 // template function to call hbgv
 template< typename MatrixAB, typename MatrixBB, typename VectorW,
         typename MatrixZ, typename Workspace >
-inline integer_t hbgv( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
+inline integer_t hbgv( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab, MatrixBB& bb,
         VectorW& w, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
@@ -145,8 +145,8 @@
 // template function to call hbgv, default workspace type
 template< typename MatrixAB, typename MatrixBB, typename VectorW,
         typename MatrixZ >
-inline integer_t hbgv( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
+inline integer_t hbgv( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab, MatrixBB& bb,
         VectorW& w, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgvd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgvd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgvd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,24 +34,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hbgvd( char const jobz, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, traits::complex_f* ab,
- integer_t const ldab, traits::complex_f* bb, integer_t const ldbb,
- float* w, traits::complex_f* z, integer_t const ldz,
- traits::complex_f* work, integer_t const lwork, float* rwork,
- integer_t const lrwork, integer_t* iwork, integer_t const liwork,
+ inline void hbgvd( const char jobz, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, traits::complex_f* ab,
+ const integer_t ldab, traits::complex_f* bb, const integer_t ldbb,
+ float* w, traits::complex_f* z, const integer_t ldz,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
+ const integer_t lrwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_CHBGVD( &jobz, &uplo, &n, &ka, &kb, traits::complex_ptr(ab),
                 &ldab, traits::complex_ptr(bb), &ldbb, w,
                 traits::complex_ptr(z), &ldz, traits::complex_ptr(work),
                 &lwork, rwork, &lrwork, iwork, &liwork, &info );
     }
- inline void hbgvd( char const jobz, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, traits::complex_d* ab,
- integer_t const ldab, traits::complex_d* bb, integer_t const ldbb,
- double* w, traits::complex_d* z, integer_t const ldz,
- traits::complex_d* work, integer_t const lwork, double* rwork,
- integer_t const lrwork, integer_t* iwork, integer_t const liwork,
+ inline void hbgvd( const char jobz, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, traits::complex_d* ab,
+ const integer_t ldab, traits::complex_d* bb, const integer_t ldbb,
+ double* w, traits::complex_d* z, const integer_t ldz,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
+ const integer_t lrwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_ZHBGVD( &jobz, &uplo, &n, &ka, &kb, traits::complex_ptr(ab),
                 &ldab, traits::complex_ptr(bb), &ldbb, w,
@@ -70,8 +70,8 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ, typename WORK, typename RWORK, typename IWORK >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -110,8 +110,8 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( jobz,
@@ -127,8 +127,8 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
@@ -149,7 +149,7 @@
                 tmp_rwork, tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -160,7 +160,7 @@
         }
     }
 
- static integer_t min_size_rwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_rwork( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -171,7 +171,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -183,8 +183,8 @@
 // template function to call hbgvd
 template< typename MatrixAB, typename MatrixBB, typename VectorW,
         typename MatrixZ, typename Workspace >
-inline integer_t hbgvd( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
+inline integer_t hbgvd( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab, MatrixBB& bb,
         VectorW& w, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
@@ -196,8 +196,8 @@
 // template function to call hbgvd, default workspace type
 template< typename MatrixAB, typename MatrixBB, typename VectorW,
         typename MatrixZ >
-inline integer_t hbgvd( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
+inline integer_t hbgvd( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab, MatrixBB& bb,
         VectorW& w, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hbgvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,13 +33,13 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hbgvx( char const jobz, char const range, char const uplo,
- integer_t const n, integer_t const ka, integer_t const kb,
- traits::complex_f* ab, integer_t const ldab,
- traits::complex_f* bb, integer_t const ldbb, traits::complex_f* q,
- integer_t const ldq, float const vl, float const vu,
- integer_t const il, integer_t const iu, float const abstol,
- integer_t& m, float* w, traits::complex_f* z, integer_t const ldz,
+ inline void hbgvx( const char jobz, const char range, const char uplo,
+ const integer_t n, const integer_t ka, const integer_t kb,
+ traits::complex_f* ab, const integer_t ldab,
+ traits::complex_f* bb, const integer_t ldbb, traits::complex_f* q,
+ const integer_t ldq, const float vl, const float vu,
+ const integer_t il, const integer_t iu, const float abstol,
+ integer_t& m, float* w, traits::complex_f* z, const integer_t ldz,
             traits::complex_f* work, float* rwork, integer_t* iwork,
             integer_t* ifail, integer_t& info ) {
         LAPACK_CHBGVX( &jobz, &range, &uplo, &n, &ka, &kb,
@@ -48,14 +48,14 @@
                 &abstol, &m, w, traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), rwork, iwork, ifail, &info );
     }
- inline void hbgvx( char const jobz, char const range, char const uplo,
- integer_t const n, integer_t const ka, integer_t const kb,
- traits::complex_d* ab, integer_t const ldab,
- traits::complex_d* bb, integer_t const ldbb, traits::complex_d* q,
- integer_t const ldq, double const vl, double const vu,
- integer_t const il, integer_t const iu, double const abstol,
+ inline void hbgvx( const char jobz, const char range, const char uplo,
+ const integer_t n, const integer_t ka, const integer_t kb,
+ traits::complex_d* ab, const integer_t ldab,
+ traits::complex_d* bb, const integer_t ldbb, traits::complex_d* q,
+ const integer_t ldq, const double vl, const double vu,
+ const integer_t il, const integer_t iu, const double abstol,
             integer_t& m, double* w, traits::complex_d* z,
- integer_t const ldz, traits::complex_d* work, double* rwork,
+ const integer_t ldz, traits::complex_d* work, double* rwork,
             integer_t* iwork, integer_t* ifail, integer_t& info ) {
         LAPACK_ZHBGVX( &jobz, &range, &uplo, &n, &ka, &kb,
                 traits::complex_ptr(ab), &ldab, traits::complex_ptr(bb),
@@ -76,10 +76,10 @@
     template< typename MatrixAB, typename MatrixBB, typename MatrixQ,
             typename VectorW, typename MatrixZ, typename VectorIFAIL,
             typename WORK, typename RWORK, typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixQ& q, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ MatrixBB& bb, MatrixQ& q, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -121,10 +121,10 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename MatrixQ,
             typename VectorW, typename MatrixZ, typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixQ& q, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ MatrixBB& bb, MatrixQ& q, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
@@ -138,25 +138,25 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename MatrixQ,
             typename VectorW, typename MatrixZ, typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixQ& q, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ MatrixBB& bb, MatrixQ& q, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, optimal_workspace work ) {
         invoke( jobz, range, n, ka, kb, ab, bb, q, vl, vu, il, iu, abstol, m,
                 w, z, ifail, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 7*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -166,17 +166,17 @@
 template< typename MatrixAB, typename MatrixBB, typename MatrixQ,
         typename VectorW, typename MatrixZ, typename VectorIFAIL,
         typename Workspace >
-inline integer_t hbgvx( char const jobz, char const range,
- integer_t const n, integer_t const ka, integer_t const kb,
- MatrixAB& ab, MatrixBB& bb, MatrixQ& q, typename traits::type_traits<
+inline integer_t hbgvx( const char jobz, const char range,
+ const integer_t n, const integer_t ka, const integer_t kb,
+ MatrixAB& ab, MatrixBB& bb, MatrixQ& q,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
- typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixAB >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     hbgvx_impl< value_type >::invoke( jobz, range, n, ka, kb, ab, bb, q,
@@ -187,17 +187,17 @@
 // template function to call hbgvx, default workspace type
 template< typename MatrixAB, typename MatrixBB, typename MatrixQ,
         typename VectorW, typename MatrixZ, typename VectorIFAIL >
-inline integer_t hbgvx( char const jobz, char const range,
- integer_t const n, integer_t const ka, integer_t const kb,
- MatrixAB& ab, MatrixBB& bb, MatrixQ& q, typename traits::type_traits<
- typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t hbgvx( const char jobz, const char range,
+ const integer_t n, const integer_t ka, const integer_t kb,
+ MatrixAB& ab, MatrixBB& bb, MatrixQ& q,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixAB >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     hbgvx_impl< value_type >::invoke( jobz, range, n, ka, kb, ab, bb, q,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heev.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heev.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heev.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,16 +34,16 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void heev( char const jobz, char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, float* w,
- traits::complex_f* work, integer_t const lwork, float* rwork,
+ inline void heev( const char jobz, const char uplo, const integer_t n,
+ traits::complex_f* a, const integer_t lda, float* w,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
             integer_t& info ) {
         LAPACK_CHEEV( &jobz, &uplo, &n, traits::complex_ptr(a), &lda, w,
                 traits::complex_ptr(work), &lwork, rwork, &info );
     }
- inline void heev( char const jobz, char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, double* w,
- traits::complex_d* work, integer_t const lwork, double* rwork,
+ inline void heev( const char jobz, const char uplo, const integer_t n,
+ traits::complex_d* a, const integer_t lda, double* w,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
             integer_t& info ) {
         LAPACK_ZHEEV( &jobz, &uplo, &n, traits::complex_ptr(a), &lda, w,
                 traits::complex_ptr(work), &lwork, rwork, &info );
@@ -60,7 +60,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorW, typename WORK,
             typename RWORK >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, detail::workspace2< WORK, RWORK > work ) {
         BOOST_ASSERT( jobz == 'N' || jobz == 'V' );
         BOOST_ASSERT( traits::matrix_uplo_tag(a) == 'U' ||
@@ -82,7 +82,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorW >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
@@ -93,7 +93,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorW >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         traits::detail::array< real_type > tmp_rwork( min_size_rwork(
@@ -107,11 +107,11 @@
         invoke( jobz, a, w, info, workspace( tmp_work, tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n-1 );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return std::max( 1, 3*n-2 );
     }
 };
@@ -119,7 +119,7 @@
 
 // template function to call heev
 template< typename MatrixA, typename VectorW, typename Workspace >
-inline integer_t heev( char const jobz, MatrixA& a, VectorW& w,
+inline integer_t heev( const char jobz, MatrixA& a, VectorW& w,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -129,7 +129,7 @@
 
 // template function to call heev, default workspace type
 template< typename MatrixA, typename VectorW >
-inline integer_t heev( char const jobz, MatrixA& a, VectorW& w ) {
+inline integer_t heev( const char jobz, MatrixA& a, VectorW& w ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     heev_impl< value_type >::invoke( jobz, a, w, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,19 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void heevd( char const jobz, char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, float* w,
- traits::complex_f* work, integer_t const lwork, float* rwork,
- integer_t const lrwork, integer_t* iwork, integer_t const liwork,
+ inline void heevd( const char jobz, const char uplo, const integer_t n,
+ traits::complex_f* a, const integer_t lda, float* w,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
+ const integer_t lrwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_CHEEVD( &jobz, &uplo, &n, traits::complex_ptr(a), &lda, w,
                 traits::complex_ptr(work), &lwork, rwork, &lrwork, iwork,
                 &liwork, &info );
     }
- inline void heevd( char const jobz, char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, double* w,
- traits::complex_d* work, integer_t const lwork, double* rwork,
- integer_t const lrwork, integer_t* iwork, integer_t const liwork,
+ inline void heevd( const char jobz, const char uplo, const integer_t n,
+ traits::complex_d* a, const integer_t lda, double* w,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
+ const integer_t lrwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_ZHEEVD( &jobz, &uplo, &n, traits::complex_ptr(a), &lda, w,
                 traits::complex_ptr(work), &lwork, rwork, &lrwork, iwork,
@@ -64,7 +64,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorW, typename WORK,
             typename RWORK, typename IWORK >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_ASSERT( jobz == 'N' || jobz == 'V' );
         BOOST_ASSERT( traits::matrix_uplo_tag(a) == 'U' ||
@@ -91,7 +91,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorW >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( jobz,
                 traits::matrix_num_columns(a) ) );
@@ -105,7 +105,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorW >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         real_type opt_size_rwork;
@@ -124,7 +124,7 @@
                 tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -135,7 +135,7 @@
         }
     }
 
- static integer_t min_size_rwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_rwork( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -146,7 +146,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -157,7 +157,7 @@
 
 // template function to call heevd
 template< typename MatrixA, typename VectorW, typename Workspace >
-inline integer_t heevd( char const jobz, MatrixA& a, VectorW& w,
+inline integer_t heevd( const char jobz, MatrixA& a, VectorW& w,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -167,7 +167,7 @@
 
 // template function to call heevd, default workspace type
 template< typename MatrixA, typename VectorW >
-inline integer_t heevd( char const jobz, MatrixA& a, VectorW& w ) {
+inline integer_t heevd( const char jobz, MatrixA& a, VectorW& w ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     heevd_impl< value_type >::invoke( jobz, a, w, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,26 +34,26 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void heevr( char const jobz, char const range, char const uplo,
- integer_t const n, traits::complex_f* a, integer_t const lda,
- float const vl, float const vu, integer_t const il,
- integer_t const iu, float const abstol, integer_t& m, float* w,
- traits::complex_f* z, integer_t const ldz, integer_t* isuppz,
- traits::complex_f* work, integer_t const lwork, float* rwork,
- integer_t const lrwork, integer_t* iwork, integer_t const liwork,
+ inline void heevr( const char jobz, const char range, const char uplo,
+ const integer_t n, traits::complex_f* a, const integer_t lda,
+ const float vl, const float vu, const integer_t il,
+ const integer_t iu, const float abstol, integer_t& m, float* w,
+ traits::complex_f* z, const integer_t ldz, integer_t* isuppz,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
+ const integer_t lrwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_CHEEVR( &jobz, &range, &uplo, &n, traits::complex_ptr(a), &lda,
                 &vl, &vu, &il, &iu, &abstol, &m, w, traits::complex_ptr(z),
                 &ldz, isuppz, traits::complex_ptr(work), &lwork, rwork,
                 &lrwork, iwork, &liwork, &info );
     }
- inline void heevr( char const jobz, char const range, char const uplo,
- integer_t const n, traits::complex_d* a, integer_t const lda,
- double const vl, double const vu, integer_t const il,
- integer_t const iu, double const abstol, integer_t& m, double* w,
- traits::complex_d* z, integer_t const ldz, integer_t* isuppz,
- traits::complex_d* work, integer_t const lwork, double* rwork,
- integer_t const lrwork, integer_t* iwork, integer_t const liwork,
+ inline void heevr( const char jobz, const char range, const char uplo,
+ const integer_t n, traits::complex_d* a, const integer_t lda,
+ const double vl, const double vu, const integer_t il,
+ const integer_t iu, const double abstol, integer_t& m, double* w,
+ traits::complex_d* z, const integer_t ldz, integer_t* isuppz,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
+ const integer_t lrwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_ZHEEVR( &jobz, &range, &uplo, &n, traits::complex_ptr(a), &lda,
                 &vl, &vu, &il, &iu, &abstol, &m, w, traits::complex_ptr(z),
@@ -73,9 +73,9 @@
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorISUPPZ, typename WORK, typename RWORK,
             typename IWORK >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz, integer_t& info,
             detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -113,9 +113,9 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -131,9 +131,9 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
@@ -155,15 +155,15 @@
                 workspace( tmp_work, tmp_rwork, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return std::max( 1, 24*n );
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return std::max( 1, 10*n );
     }
 };
@@ -172,15 +172,15 @@
 // template function to call heevr
 template< typename MatrixA, typename VectorW, typename MatrixZ,
         typename VectorISUPPZ, typename Workspace >
-inline integer_t heevr( char const jobz, char const range, MatrixA& a,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t heevr( const char jobz, const char range, MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz, Workspace work ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorISUPPZ& isuppz, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     heevr_impl< value_type >::invoke( jobz, range, a, vl, vu, il, iu,
@@ -191,15 +191,15 @@
 // template function to call heevr, default workspace type
 template< typename MatrixA, typename VectorW, typename MatrixZ,
         typename VectorISUPPZ >
-inline integer_t heevr( char const jobz, char const range, MatrixA& a,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t heevr( const char jobz, const char range, MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorISUPPZ& isuppz ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     heevr_impl< value_type >::invoke( jobz, range, a, vl, vu, il, iu,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/heevx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,24 +34,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void heevx( char const jobz, char const range, char const uplo,
- integer_t const n, traits::complex_f* a, integer_t const lda,
- float const vl, float const vu, integer_t const il,
- integer_t const iu, float const abstol, integer_t& m, float* w,
- traits::complex_f* z, integer_t const ldz,
- traits::complex_f* work, integer_t const lwork, float* rwork,
+ inline void heevx( const char jobz, const char range, const char uplo,
+ const integer_t n, traits::complex_f* a, const integer_t lda,
+ const float vl, const float vu, const integer_t il,
+ const integer_t iu, const float abstol, integer_t& m, float* w,
+ traits::complex_f* z, const integer_t ldz,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
             integer_t* iwork, integer_t* ifail, integer_t& info ) {
         LAPACK_CHEEVX( &jobz, &range, &uplo, &n, traits::complex_ptr(a), &lda,
                 &vl, &vu, &il, &iu, &abstol, &m, w, traits::complex_ptr(z),
                 &ldz, traits::complex_ptr(work), &lwork, rwork, iwork, ifail,
                 &info );
     }
- inline void heevx( char const jobz, char const range, char const uplo,
- integer_t const n, traits::complex_d* a, integer_t const lda,
- double const vl, double const vu, integer_t const il,
- integer_t const iu, double const abstol, integer_t& m, double* w,
- traits::complex_d* z, integer_t const ldz,
- traits::complex_d* work, integer_t const lwork, double* rwork,
+ inline void heevx( const char jobz, const char range, const char uplo,
+ const integer_t n, traits::complex_d* a, const integer_t lda,
+ const double vl, const double vu, const integer_t il,
+ const integer_t iu, const double abstol, integer_t& m, double* w,
+ traits::complex_d* z, const integer_t ldz,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
             integer_t* iwork, integer_t* ifail, integer_t& info ) {
         LAPACK_ZHEEVX( &jobz, &range, &uplo, &n, traits::complex_ptr(a), &lda,
                 &vl, &vu, &il, &iu, &abstol, &m, w, traits::complex_ptr(z),
@@ -71,9 +71,9 @@
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorIFAIL, typename WORK, typename RWORK,
             typename IWORK >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -109,9 +109,9 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -127,9 +127,9 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
@@ -151,15 +151,15 @@
                 workspace( tmp_work, tmp_rwork, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 7*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -168,15 +168,15 @@
 // template function to call heevx
 template< typename MatrixA, typename VectorW, typename MatrixZ,
         typename VectorIFAIL, typename Workspace >
-inline integer_t heevx( char const jobz, char const range, MatrixA& a,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t heevx( const char jobz, const char range, MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     heevx_impl< value_type >::invoke( jobz, range, a, vl, vu, il, iu,
@@ -187,15 +187,15 @@
 // template function to call heevx, default workspace type
 template< typename MatrixA, typename VectorW, typename MatrixZ,
         typename VectorIFAIL >
-inline integer_t heevx( char const jobz, char const range, MatrixA& a,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t heevx( const char jobz, const char range, MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     heevx_impl< value_type >::invoke( jobz, range, a, vl, vu, il, iu,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,19 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hegv( integer_t const itype, char const jobz, char const uplo,
- integer_t const n, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb, float* w,
- traits::complex_f* work, integer_t const lwork, float* rwork,
+ inline void hegv( const integer_t itype, const char jobz, const char uplo,
+ const integer_t n, traits::complex_f* a, const integer_t lda,
+ traits::complex_f* b, const integer_t ldb, float* w,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
             integer_t& info ) {
         LAPACK_CHEGV( &itype, &jobz, &uplo, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, w, traits::complex_ptr(work),
                 &lwork, rwork, &info );
     }
- inline void hegv( integer_t const itype, char const jobz, char const uplo,
- integer_t const n, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, double* w,
- traits::complex_d* work, integer_t const lwork, double* rwork,
+ inline void hegv( const integer_t itype, const char jobz, const char uplo,
+ const integer_t n, traits::complex_d* a, const integer_t lda,
+ traits::complex_d* b, const integer_t ldb, double* w,
+ traits::complex_d* work, const integer_t lwork, double* rwork,
             integer_t& info ) {
         LAPACK_ZHEGV( &itype, &jobz, &uplo, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, w, traits::complex_ptr(work),
@@ -64,8 +64,8 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW,
             typename WORK, typename RWORK >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -91,8 +91,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -102,8 +102,8 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -118,11 +118,11 @@
                 tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n-1 );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return std::max( 1, 3*n-2 );
     }
 };
@@ -131,8 +131,8 @@
 // template function to call hegv
 template< typename MatrixA, typename MatrixB, typename VectorW,
         typename Workspace >
-inline integer_t hegv( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+inline integer_t hegv( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -143,8 +143,8 @@
 
 // template function to call hegv, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorW >
-inline integer_t hegv( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w ) {
+inline integer_t hegv( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     hegv_impl< value_type >::invoke( itype, jobz, n, a, b, w, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegvd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegvd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegvd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,22 +34,22 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hegvd( integer_t const itype, char const jobz,
- char const uplo, integer_t const n, traits::complex_f* a,
- integer_t const lda, traits::complex_f* b, integer_t const ldb,
- float* w, traits::complex_f* work, integer_t const lwork,
- float* rwork, integer_t const lrwork, integer_t* iwork,
- integer_t const liwork, integer_t& info ) {
+ inline void hegvd( const integer_t itype, const char jobz,
+ const char uplo, const integer_t n, traits::complex_f* a,
+ const integer_t lda, traits::complex_f* b, const integer_t ldb,
+ float* w, traits::complex_f* work, const integer_t lwork,
+ float* rwork, const integer_t lrwork, integer_t* iwork,
+ const integer_t liwork, integer_t& info ) {
         LAPACK_CHEGVD( &itype, &jobz, &uplo, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, w, traits::complex_ptr(work),
                 &lwork, rwork, &lrwork, iwork, &liwork, &info );
     }
- inline void hegvd( integer_t const itype, char const jobz,
- char const uplo, integer_t const n, traits::complex_d* a,
- integer_t const lda, traits::complex_d* b, integer_t const ldb,
- double* w, traits::complex_d* work, integer_t const lwork,
- double* rwork, integer_t const lrwork, integer_t* iwork,
- integer_t const liwork, integer_t& info ) {
+ inline void hegvd( const integer_t itype, const char jobz,
+ const char uplo, const integer_t n, traits::complex_d* a,
+ const integer_t lda, traits::complex_d* b, const integer_t ldb,
+ double* w, traits::complex_d* work, const integer_t lwork,
+ double* rwork, const integer_t lrwork, integer_t* iwork,
+ const integer_t liwork, integer_t& info ) {
         LAPACK_ZHEGVD( &itype, &jobz, &uplo, &n, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, w, traits::complex_ptr(work),
                 &lwork, rwork, &lrwork, iwork, &liwork, &info );
@@ -66,8 +66,8 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW,
             typename WORK, typename RWORK, typename IWORK >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -98,8 +98,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( jobz,
                 n ) );
@@ -113,8 +113,8 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         real_type opt_size_rwork;
@@ -133,7 +133,7 @@
                 tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -144,7 +144,7 @@
         }
     }
 
- static integer_t min_size_rwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_rwork( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -155,7 +155,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -167,8 +167,8 @@
 // template function to call hegvd
 template< typename MatrixA, typename MatrixB, typename VectorW,
         typename Workspace >
-inline integer_t hegvd( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+inline integer_t hegvd( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -179,8 +179,8 @@
 
 // template function to call hegvd, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorW >
-inline integer_t hegvd( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w ) {
+inline integer_t hegvd( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     hegvd_impl< value_type >::invoke( itype, jobz, n, a, b, w, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hegvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,13 +34,13 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hegvx( integer_t const itype, char const jobz,
- char const range, char const uplo, integer_t const n,
- traits::complex_f* a, integer_t const lda, traits::complex_f* b,
- integer_t const ldb, float const vl, float const vu,
- integer_t const il, integer_t const iu, float const abstol,
- integer_t& m, float* w, traits::complex_f* z, integer_t const ldz,
- traits::complex_f* work, integer_t const lwork, float* rwork,
+ inline void hegvx( const integer_t itype, const char jobz,
+ const char range, const char uplo, const integer_t n,
+ traits::complex_f* a, const integer_t lda, traits::complex_f* b,
+ const integer_t ldb, const float vl, const float vu,
+ const integer_t il, const integer_t iu, const float abstol,
+ integer_t& m, float* w, traits::complex_f* z, const integer_t ldz,
+ traits::complex_f* work, const integer_t lwork, float* rwork,
             integer_t* iwork, integer_t* ifail, integer_t& info ) {
         LAPACK_CHEGVX( &itype, &jobz, &range, &uplo, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
@@ -48,14 +48,14 @@
                 &ldz, traits::complex_ptr(work), &lwork, rwork, iwork, ifail,
                 &info );
     }
- inline void hegvx( integer_t const itype, char const jobz,
- char const range, char const uplo, integer_t const n,
- traits::complex_d* a, integer_t const lda, traits::complex_d* b,
- integer_t const ldb, double const vl, double const vu,
- integer_t const il, integer_t const iu, double const abstol,
+ inline void hegvx( const integer_t itype, const char jobz,
+ const char range, const char uplo, const integer_t n,
+ traits::complex_d* a, const integer_t lda, traits::complex_d* b,
+ const integer_t ldb, const double vl, const double vu,
+ const integer_t il, const integer_t iu, const double abstol,
             integer_t& m, double* w, traits::complex_d* z,
- integer_t const ldz, traits::complex_d* work,
- integer_t const lwork, double* rwork, integer_t* iwork,
+ const integer_t ldz, traits::complex_d* work,
+ const integer_t lwork, double* rwork, integer_t* iwork,
             integer_t* ifail, integer_t& info ) {
         LAPACK_ZHEGVX( &itype, &jobz, &range, &uplo, &n,
                 traits::complex_ptr(a), &lda, traits::complex_ptr(b), &ldb,
@@ -76,10 +76,10 @@
     template< typename MatrixA, typename MatrixB, typename VectorW,
             typename MatrixZ, typename VectorIFAIL, typename WORK,
             typename RWORK, typename IWORK >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixA& a, MatrixB& b,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixA& a, MatrixB& b,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -117,10 +117,10 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixA& a, MatrixB& b,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixA& a, MatrixB& b,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
@@ -133,10 +133,10 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixA& a, MatrixB& b,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixA& a, MatrixB& b,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
@@ -156,15 +156,15 @@
                 ifail, info, workspace( tmp_work, tmp_rwork, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 7*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -173,16 +173,16 @@
 // template function to call hegvx
 template< typename MatrixA, typename MatrixB, typename VectorW,
         typename MatrixZ, typename VectorIFAIL, typename Workspace >
-inline integer_t hegvx( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixA& a, MatrixB& b,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t hegvx( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixA& a, MatrixB& b,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     hegvx_impl< value_type >::invoke( itype, jobz, range, n, a, b, vl,
@@ -193,16 +193,16 @@
 // template function to call hegvx, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorW,
         typename MatrixZ, typename VectorIFAIL >
-inline integer_t hegvx( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixA& a, MatrixB& b,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t hegvx( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixA& a, MatrixB& b,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     hegvx_impl< value_type >::invoke( itype, jobz, range, n, a, b, vl,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hesv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hesv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hesv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,18 +34,18 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hesv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- integer_t* ipiv, traits::complex_f* b, integer_t const ldb,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void hesv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_f* a, const integer_t lda,
+ integer_t* ipiv, traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CHESV( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(work),
                 &lwork, &info );
     }
- inline void hesv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- integer_t* ipiv, traits::complex_d* b, integer_t const ldb,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void hesv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_d* a, const integer_t lda,
+ integer_t* ipiv, traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZHESV( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(work),
                 &lwork, &info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hesvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hesvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hesvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,25 +34,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hesvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* af, integer_t const ldaf, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* x,
- integer_t const ldx, float& rcond, float* ferr, float* berr,
- traits::complex_f* work, integer_t const lwork, float* rwork,
- integer_t& info ) {
+ inline void hesvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* a,
+ const integer_t lda, traits::complex_f* af, const integer_t ldaf,
+ integer_t* ipiv, const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float& rcond,
+ float* ferr, float* berr, traits::complex_f* work,
+ const integer_t lwork, float* rwork, integer_t& info ) {
         LAPACK_CHESVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(af), &ldaf, ipiv, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
                 traits::complex_ptr(work), &lwork, rwork, &info );
     }
- inline void hesvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* af, integer_t const ldaf, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, double& rcond, double* ferr, double* berr,
- traits::complex_d* work, integer_t const lwork, double* rwork,
- integer_t& info ) {
+ inline void hesvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ const integer_t lda, traits::complex_d* af, const integer_t ldaf,
+ integer_t* ipiv, const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double& rcond,
+ double* ferr, double* berr, traits::complex_d* work,
+ const integer_t lwork, double* rwork, integer_t& info ) {
         LAPACK_ZHESVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(af), &ldaf, ipiv, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
@@ -71,8 +71,8 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -123,8 +123,8 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -139,8 +139,8 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
@@ -161,11 +161,11 @@
                 workspace( tmp_work, tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -175,8 +175,8 @@
 template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t hesvx( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
+inline integer_t hesvx( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr, Workspace work ) {
@@ -191,8 +191,8 @@
 template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t hesvx( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
+inline integer_t hesvx( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr ) {

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpev.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpev.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpev.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,17 +33,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hpev( char const jobz, char const uplo, integer_t const n,
+ inline void hpev( const char jobz, const char uplo, const integer_t n,
             traits::complex_f* ap, float* w, traits::complex_f* z,
- integer_t const ldz, traits::complex_f* work, float* rwork,
+ const integer_t ldz, traits::complex_f* work, float* rwork,
             integer_t& info ) {
         LAPACK_CHPEV( &jobz, &uplo, &n, traits::complex_ptr(ap), w,
                 traits::complex_ptr(z), &ldz, traits::complex_ptr(work),
                 rwork, &info );
     }
- inline void hpev( char const jobz, char const uplo, integer_t const n,
+ inline void hpev( const char jobz, const char uplo, const integer_t n,
             traits::complex_d* ap, double* w, traits::complex_d* z,
- integer_t const ldz, traits::complex_d* work, double* rwork,
+ const integer_t ldz, traits::complex_d* work, double* rwork,
             integer_t& info ) {
         LAPACK_ZHPEV( &jobz, &uplo, &n, traits::complex_ptr(ap), w,
                 traits::complex_ptr(z), &ldz, traits::complex_ptr(work),
@@ -61,7 +61,7 @@
     // user-defined workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ,
             typename WORK, typename RWORK >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, detail::workspace2< WORK,
             RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -84,7 +84,7 @@
 
     // minimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -93,16 +93,16 @@
 
     // optimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         invoke( jobz, n, ap, w, z, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max(1,2*n-1);
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return std::max(1,3*n-2);
     }
 };
@@ -111,7 +111,7 @@
 // template function to call hpev
 template< typename MatrixAP, typename VectorW, typename MatrixZ,
         typename Workspace >
-inline integer_t hpev( char const jobz, integer_t const n, MatrixAP& ap,
+inline integer_t hpev( const char jobz, const integer_t n, MatrixAP& ap,
         VectorW& w, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
@@ -121,7 +121,7 @@
 
 // template function to call hpev, default workspace type
 template< typename MatrixAP, typename VectorW, typename MatrixZ >
-inline integer_t hpev( char const jobz, integer_t const n, MatrixAP& ap,
+inline integer_t hpev( const char jobz, const integer_t n, MatrixAP& ap,
         VectorW& w, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpevd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpevd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpevd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,20 +34,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hpevd( char const jobz, char const uplo, integer_t const n,
+ inline void hpevd( const char jobz, const char uplo, const integer_t n,
             traits::complex_f* ap, float* w, traits::complex_f* z,
- integer_t const ldz, traits::complex_f* work,
- integer_t const lwork, float* rwork, integer_t const lrwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ const integer_t ldz, traits::complex_f* work,
+ const integer_t lwork, float* rwork, const integer_t lrwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_CHPEVD( &jobz, &uplo, &n, traits::complex_ptr(ap), w,
                 traits::complex_ptr(z), &ldz, traits::complex_ptr(work),
                 &lwork, rwork, &lrwork, iwork, &liwork, &info );
     }
- inline void hpevd( char const jobz, char const uplo, integer_t const n,
+ inline void hpevd( const char jobz, const char uplo, const integer_t n,
             traits::complex_d* ap, double* w, traits::complex_d* z,
- integer_t const ldz, traits::complex_d* work,
- integer_t const lwork, double* rwork, integer_t const lrwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ const integer_t ldz, traits::complex_d* work,
+ const integer_t lwork, double* rwork, const integer_t lrwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_ZHPEVD( &jobz, &uplo, &n, traits::complex_ptr(ap), w,
                 traits::complex_ptr(z), &ldz, traits::complex_ptr(work),
                 &lwork, rwork, &lrwork, iwork, &liwork, &info );
@@ -64,7 +64,7 @@
     // user-defined workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ,
             typename WORK, typename RWORK, typename IWORK >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, detail::workspace3< WORK,
             RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -93,7 +93,7 @@
 
     // minimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( jobz,
                 n ) );
@@ -107,7 +107,7 @@
 
     // optimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         real_type opt_size_rwork;
@@ -126,7 +126,7 @@
                 tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -137,7 +137,7 @@
         }
     }
 
- static integer_t min_size_rwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_rwork( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -148,7 +148,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -160,7 +160,7 @@
 // template function to call hpevd
 template< typename MatrixAP, typename VectorW, typename MatrixZ,
         typename Workspace >
-inline integer_t hpevd( char const jobz, integer_t const n, MatrixAP& ap,
+inline integer_t hpevd( const char jobz, const integer_t n, MatrixAP& ap,
         VectorW& w, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
@@ -170,7 +170,7 @@
 
 // template function to call hpevd, default workspace type
 template< typename MatrixAP, typename VectorW, typename MatrixZ >
-inline integer_t hpevd( char const jobz, integer_t const n, MatrixAP& ap,
+inline integer_t hpevd( const char jobz, const integer_t n, MatrixAP& ap,
         VectorW& w, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpevx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpevx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpevx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,21 +33,21 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hpevx( char const jobz, char const range, char const uplo,
- integer_t const n, traits::complex_f* ap, float const vl,
- float const vu, integer_t const il, integer_t const iu,
- float const abstol, integer_t& m, float* w, traits::complex_f* z,
- integer_t const ldz, traits::complex_f* work, float* rwork,
+ inline void hpevx( const char jobz, const char range, const char uplo,
+ const integer_t n, traits::complex_f* ap, const float vl,
+ const float vu, const integer_t il, const integer_t iu,
+ const float abstol, integer_t& m, float* w, traits::complex_f* z,
+ const integer_t ldz, traits::complex_f* work, float* rwork,
             integer_t* iwork, integer_t* ifail, integer_t& info ) {
         LAPACK_CHPEVX( &jobz, &range, &uplo, &n, traits::complex_ptr(ap), &vl,
                 &vu, &il, &iu, &abstol, &m, w, traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), rwork, iwork, ifail, &info );
     }
- inline void hpevx( char const jobz, char const range, char const uplo,
- integer_t const n, traits::complex_d* ap, double const vl,
- double const vu, integer_t const il, integer_t const iu,
- double const abstol, integer_t& m, double* w,
- traits::complex_d* z, integer_t const ldz,
+ inline void hpevx( const char jobz, const char range, const char uplo,
+ const integer_t n, traits::complex_d* ap, const double vl,
+ const double vu, const integer_t il, const integer_t iu,
+ const double abstol, integer_t& m, double* w,
+ traits::complex_d* z, const integer_t ldz,
             traits::complex_d* work, double* rwork, integer_t* iwork,
             integer_t* ifail, integer_t& info ) {
         LAPACK_ZHPEVX( &jobz, &range, &uplo, &n, traits::complex_ptr(ap), &vl,
@@ -67,9 +67,9 @@
     template< typename MatrixAP, typename VectorW, typename MatrixZ,
             typename VectorIFAIL, typename WORK, typename RWORK,
             typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- MatrixAP& ap, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ MatrixAP& ap, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -99,9 +99,9 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- MatrixAP& ap, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ MatrixAP& ap, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
@@ -114,24 +114,24 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- MatrixAP& ap, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ MatrixAP& ap, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, optimal_workspace work ) {
         invoke( jobz, range, n, ap, vl, vu, il, iu, abstol, m, w, z, ifail,
                 info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 7*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -140,16 +140,16 @@
 // template function to call hpevx
 template< typename MatrixAP, typename VectorW, typename MatrixZ,
         typename VectorIFAIL, typename Workspace >
-inline integer_t hpevx( char const jobz, char const range,
- integer_t const n, MatrixAP& ap, typename traits::type_traits<
+inline integer_t hpevx( const char jobz, const char range,
+ const integer_t n, MatrixAP& ap, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+ MatrixAP >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixAP >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     hpevx_impl< value_type >::invoke( jobz, range, n, ap, vl, vu, il, iu,
@@ -160,16 +160,16 @@
 // template function to call hpevx, default workspace type
 template< typename MatrixAP, typename VectorW, typename MatrixZ,
         typename VectorIFAIL >
-inline integer_t hpevx( char const jobz, char const range,
- integer_t const n, MatrixAP& ap, typename traits::type_traits<
+inline integer_t hpevx( const char jobz, const char range,
+ const integer_t n, MatrixAP& ap, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+ MatrixAP >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixAP >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     hpevx_impl< value_type >::invoke( jobz, range, n, ap, vl, vu, il, iu,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,17 +33,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hpgv( integer_t const itype, char const jobz, char const uplo,
- integer_t const n, traits::complex_f* ap, traits::complex_f* bp,
- float* w, traits::complex_f* z, integer_t const ldz,
+ inline void hpgv( const integer_t itype, const char jobz, const char uplo,
+ const integer_t n, traits::complex_f* ap, traits::complex_f* bp,
+ float* w, traits::complex_f* z, const integer_t ldz,
             traits::complex_f* work, float* rwork, integer_t& info ) {
         LAPACK_CHPGV( &itype, &jobz, &uplo, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(bp), w, traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void hpgv( integer_t const itype, char const jobz, char const uplo,
- integer_t const n, traits::complex_d* ap, traits::complex_d* bp,
- double* w, traits::complex_d* z, integer_t const ldz,
+ inline void hpgv( const integer_t itype, const char jobz, const char uplo,
+ const integer_t n, traits::complex_d* ap, traits::complex_d* bp,
+ double* w, traits::complex_d* z, const integer_t ldz,
             traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZHPGV( &itype, &jobz, &uplo, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(bp), w, traits::complex_ptr(z), &ldz,
@@ -61,8 +61,8 @@
     // user-defined workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ, typename WORK, typename RWORK >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, detail::workspace2< WORK,
             RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -90,8 +90,8 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -102,17 +102,17 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, optimal_workspace work ) {
         invoke( itype, jobz, n, ap, bp, w, z, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max(1,2*n-1);
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return std::max(1,3*n-2);
     }
 };
@@ -121,8 +121,8 @@
 // template function to call hpgv
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ, typename Workspace >
-inline integer_t hpgv( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w, MatrixZ& z,
+inline integer_t hpgv( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w, MatrixZ& z,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
@@ -134,8 +134,8 @@
 // template function to call hpgv, default workspace type
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ >
-inline integer_t hpgv( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+inline integer_t hpgv( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
         MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgvd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgvd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgvd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,23 +34,23 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hpgvd( integer_t const itype, char const jobz,
- char const uplo, integer_t const n, traits::complex_f* ap,
+ inline void hpgvd( const integer_t itype, const char jobz,
+ const char uplo, const integer_t n, traits::complex_f* ap,
             traits::complex_f* bp, float* w, traits::complex_f* z,
- integer_t const ldz, traits::complex_f* work,
- integer_t const lwork, float* rwork, integer_t const lrwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ const integer_t ldz, traits::complex_f* work,
+ const integer_t lwork, float* rwork, const integer_t lrwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_CHPGVD( &itype, &jobz, &uplo, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(bp), w, traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), &lwork, rwork, &lrwork, iwork,
                 &liwork, &info );
     }
- inline void hpgvd( integer_t const itype, char const jobz,
- char const uplo, integer_t const n, traits::complex_d* ap,
+ inline void hpgvd( const integer_t itype, const char jobz,
+ const char uplo, const integer_t n, traits::complex_d* ap,
             traits::complex_d* bp, double* w, traits::complex_d* z,
- integer_t const ldz, traits::complex_d* work,
- integer_t const lwork, double* rwork, integer_t const lrwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ const integer_t ldz, traits::complex_d* work,
+ const integer_t lwork, double* rwork, const integer_t lrwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_ZHPGVD( &itype, &jobz, &uplo, &n, traits::complex_ptr(ap),
                 traits::complex_ptr(bp), w, traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), &lwork, rwork, &lrwork, iwork,
@@ -68,8 +68,8 @@
     // user-defined workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ, typename WORK, typename RWORK, typename IWORK >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, detail::workspace3< WORK, RWORK,
             IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -103,8 +103,8 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( jobz,
                 n ) );
@@ -119,8 +119,8 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, optimal_workspace work ) {
         value_type opt_size_work;
         real_type opt_size_rwork;
@@ -139,7 +139,7 @@
                 tmp_rwork, tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -150,7 +150,7 @@
         }
     }
 
- static integer_t min_size_rwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_rwork( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -161,7 +161,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -173,8 +173,8 @@
 // template function to call hpgvd
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ, typename Workspace >
-inline integer_t hpgvd( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w, MatrixZ& z,
+inline integer_t hpgvd( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w, MatrixZ& z,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
@@ -186,8 +186,8 @@
 // template function to call hpgvd, default workspace type
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ >
-inline integer_t hpgvd( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+inline integer_t hpgvd( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
         MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpgvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,24 +33,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hpgvx( integer_t const itype, char const jobz,
- char const range, char const uplo, integer_t const n,
- traits::complex_f* ap, traits::complex_f* bp, float const vl,
- float const vu, integer_t const il, integer_t const iu,
- float const abstol, integer_t& m, float* w, traits::complex_f* z,
- integer_t const ldz, traits::complex_f* work, float* rwork,
+ inline void hpgvx( const integer_t itype, const char jobz,
+ const char range, const char uplo, const integer_t n,
+ traits::complex_f* ap, traits::complex_f* bp, const float vl,
+ const float vu, const integer_t il, const integer_t iu,
+ const float abstol, integer_t& m, float* w, traits::complex_f* z,
+ const integer_t ldz, traits::complex_f* work, float* rwork,
             integer_t* iwork, integer_t* ifail, integer_t& info ) {
         LAPACK_CHPGVX( &itype, &jobz, &range, &uplo, &n,
                 traits::complex_ptr(ap), traits::complex_ptr(bp), &vl, &vu,
                 &il, &iu, &abstol, &m, w, traits::complex_ptr(z), &ldz,
                 traits::complex_ptr(work), rwork, iwork, ifail, &info );
     }
- inline void hpgvx( integer_t const itype, char const jobz,
- char const range, char const uplo, integer_t const n,
- traits::complex_d* ap, traits::complex_d* bp, double const vl,
- double const vu, integer_t const il, integer_t const iu,
- double const abstol, integer_t& m, double* w,
- traits::complex_d* z, integer_t const ldz,
+ inline void hpgvx( const integer_t itype, const char jobz,
+ const char range, const char uplo, const integer_t n,
+ traits::complex_d* ap, traits::complex_d* bp, const double vl,
+ const double vu, const integer_t il, const integer_t iu,
+ const double abstol, integer_t& m, double* w,
+ traits::complex_d* z, const integer_t ldz,
             traits::complex_d* work, double* rwork, integer_t* iwork,
             integer_t* ifail, integer_t& info ) {
         LAPACK_ZHPGVX( &itype, &jobz, &range, &uplo, &n,
@@ -71,10 +71,10 @@
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ, typename VectorIFAIL, typename WORK,
             typename RWORK, typename IWORK >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixAP& ap, MatrixBP& bp,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixAP& ap, MatrixBP& bp,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -108,10 +108,10 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixAP& ap, MatrixBP& bp,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixAP& ap, MatrixBP& bp,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
@@ -124,25 +124,25 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixAP& ap, MatrixBP& bp,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixAP& ap, MatrixBP& bp,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             optimal_workspace work ) {
         invoke( itype, jobz, range, n, ap, bp, vl, vu, il, iu, abstol, m, w,
                 z, ifail, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return 7*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -151,16 +151,16 @@
 // template function to call hpgvx
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ, typename VectorIFAIL, typename Workspace >
-inline integer_t hpgvx( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixAP& ap, MatrixBP& bp,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t hpgvx( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixAP& ap, MatrixBP& bp,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixAP >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     hpgvx_impl< value_type >::invoke( itype, jobz, range, n, ap, bp, vl,
@@ -171,16 +171,16 @@
 // template function to call hpgvx, default workspace type
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ, typename VectorIFAIL >
-inline integer_t hpgvx( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixAP& ap, MatrixBP& bp,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t hpgvx( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixAP& ap, MatrixBP& bp,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixAP >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     hpgvx_impl< value_type >::invoke( itype, jobz, range, n, ap, bp, vl,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpsv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpsv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpsv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,15 +31,15 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hpsv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void hpsv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_f* ap, integer_t* ipiv,
+ traits::complex_f* b, const integer_t ldb, integer_t& info ) {
         LAPACK_CHPSV( &uplo, &n, &nrhs, traits::complex_ptr(ap), ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void hpsv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void hpsv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_d* ap, integer_t* ipiv,
+ traits::complex_d* b, const integer_t ldb, integer_t& info ) {
         LAPACK_ZHPSV( &uplo, &n, &nrhs, traits::complex_ptr(ap), ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpsvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpsvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/hpsvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,23 +33,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void hpsvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap,
- traits::complex_f* afp, integer_t* ipiv, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* x, integer_t const ldx,
- float& rcond, float* ferr, float* berr, traits::complex_f* work,
- float* rwork, integer_t& info ) {
+ inline void hpsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* ap,
+ traits::complex_f* afp, integer_t* ipiv,
+ const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float& rcond,
+ float* ferr, float* berr, traits::complex_f* work, float* rwork,
+ integer_t& info ) {
         LAPACK_CHPSVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), ipiv, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void hpsvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap,
- traits::complex_d* afp, integer_t* ipiv, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* x, integer_t const ldx,
- double& rcond, double* ferr, double* berr,
- traits::complex_d* work, double* rwork, integer_t& info ) {
+ inline void hpsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* ap,
+ traits::complex_d* afp, integer_t* ipiv,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double& rcond,
+ double* ferr, double* berr, traits::complex_d* work,
+ double* rwork, integer_t& info ) {
         LAPACK_ZHPSVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), ipiv, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
@@ -68,10 +70,11 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( char const fact, integer_t const n, MatrixAP& ap,
- MatrixAFP& afp, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, detail::workspace2< WORK, RWORK > work ) {
+ static void invoke( const char fact, const integer_t n,
+ const MatrixAP& ap, MatrixAFP& afp, VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, real_type& rcond, VectorFERR& ferr,
+ VectorBERR& berr, integer_t& info, detail::workspace2< WORK,
+ RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorFERR >::value_type, typename traits::vector_traits<
                 VectorBERR >::value_type >::value) );
@@ -112,10 +115,10 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, integer_t const n, MatrixAP& ap,
- MatrixAFP& afp, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( const char fact, const integer_t n,
+ const MatrixAP& ap, MatrixAFP& afp, VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, real_type& rcond, VectorFERR& ferr,
+ VectorBERR& berr, integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
         invoke( fact, n, ap, afp, ipiv, b, x, rcond, ferr, berr, info,
@@ -126,19 +129,19 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, integer_t const n, MatrixAP& ap,
- MatrixAFP& afp, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( const char fact, const integer_t n,
+ const MatrixAP& ap, MatrixAFP& afp, VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, real_type& rcond, VectorFERR& ferr,
+ VectorBERR& berr, integer_t& info, optimal_workspace work ) {
         invoke( fact, n, ap, afp, ipiv, b, x, rcond, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -148,9 +151,10 @@
 template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t hpsvx( char const fact, integer_t const n, MatrixAP& ap,
- MatrixAFP& afp, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- typename traits::type_traits< typename traits::matrix_traits<
+inline integer_t hpsvx( const char fact, const integer_t n,
+ const MatrixAP& ap, MatrixAFP& afp, VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, typename traits::type_traits<
+ typename traits::matrix_traits<
         MatrixAP >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
@@ -164,9 +168,10 @@
 template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t hpsvx( char const fact, integer_t const n, MatrixAP& ap,
- MatrixAFP& afp, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- typename traits::type_traits< typename traits::matrix_traits<
+inline integer_t hpsvx( const char fact, const integer_t n,
+ const MatrixAP& ap, MatrixAFP& afp, VectorIPIV& ipiv,
+ const MatrixB& b, MatrixX& x, typename traits::type_traits<
+ typename traits::matrix_traits<
         MatrixAP >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/lacgv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/lacgv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/lacgv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,12 +31,12 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void lacgv( integer_t const n, traits::complex_f* x,
- integer_t const incx ) {
+ inline void lacgv( const integer_t n, traits::complex_f* x,
+ const integer_t incx ) {
         LAPACK_CLACGV( &n, traits::complex_ptr(x), &incx );
     }
- inline void lacgv( integer_t const n, traits::complex_d* x,
- integer_t const incx ) {
+ inline void lacgv( const integer_t n, traits::complex_d* x,
+ const integer_t incx ) {
         LAPACK_ZLACGV( &n, traits::complex_ptr(x), &incx );
     }
 }
@@ -50,7 +50,7 @@
 
     // templated specialization
     template< typename VectorX >
- static void invoke( integer_t const n, VectorX& x, integer_t const incx ) {
+ static void invoke( const integer_t n, VectorX& x, const integer_t incx ) {
         BOOST_ASSERT( n >= 0 );
         detail::lacgv( n, traits::vector_storage(x), incx );
     }
@@ -59,8 +59,8 @@
 
 // template function to call lacgv
 template< typename VectorX >
-inline integer_t lacgv( integer_t const n, VectorX& x,
- integer_t const incx ) {
+inline integer_t lacgv( const integer_t n, VectorX& x,
+ const integer_t incx ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     integer_t info(0);
     lacgv_impl< value_type >::invoke( n, x, incx );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/lalsd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/lalsd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/lalsd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,33 +36,33 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void lalsd( char const uplo, integer_t const smlsiz,
- integer_t const n, integer_t const nrhs, float* d, float* e,
- float* b, integer_t const ldb, float const rcond, integer_t& rank,
+ inline void lalsd( const char uplo, const integer_t smlsiz,
+ const integer_t n, const integer_t nrhs, float* d, float* e,
+ float* b, const integer_t ldb, const float rcond, integer_t& rank,
             float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SLALSD( &uplo, &smlsiz, &n, &nrhs, d, e, b, &ldb, &rcond,
                 &rank, work, iwork, &info );
     }
- inline void lalsd( char const uplo, integer_t const smlsiz,
- integer_t const n, integer_t const nrhs, double* d, double* e,
- double* b, integer_t const ldb, double const rcond,
+ inline void lalsd( const char uplo, const integer_t smlsiz,
+ const integer_t n, const integer_t nrhs, double* d, double* e,
+ double* b, const integer_t ldb, const double rcond,
             integer_t& rank, double* work, integer_t* iwork,
             integer_t& info ) {
         LAPACK_DLALSD( &uplo, &smlsiz, &n, &nrhs, d, e, b, &ldb, &rcond,
                 &rank, work, iwork, &info );
     }
- inline void lalsd( char const uplo, integer_t const smlsiz,
- integer_t const n, integer_t const nrhs, float* d, float* e,
- traits::complex_f* b, integer_t const ldb, float const rcond,
+ inline void lalsd( const char uplo, const integer_t smlsiz,
+ const integer_t n, const integer_t nrhs, float* d, float* e,
+ traits::complex_f* b, const integer_t ldb, const float rcond,
             integer_t& rank, traits::complex_f* work, float* rwork,
             integer_t* iwork, integer_t& info ) {
         LAPACK_CLALSD( &uplo, &smlsiz, &n, &nrhs, d, e,
                 traits::complex_ptr(b), &ldb, &rcond, &rank,
                 traits::complex_ptr(work), rwork, iwork, &info );
     }
- inline void lalsd( char const uplo, integer_t const smlsiz,
- integer_t const n, integer_t const nrhs, double* d, double* e,
- traits::complex_d* b, integer_t const ldb, double const rcond,
+ inline void lalsd( const char uplo, const integer_t smlsiz,
+ const integer_t n, const integer_t nrhs, double* d, double* e,
+ traits::complex_d* b, const integer_t ldb, const double rcond,
             integer_t& rank, traits::complex_d* work, double* rwork,
             integer_t* iwork, integer_t& info ) {
         LAPACK_ZLALSD( &uplo, &smlsiz, &n, &nrhs, d, e,
@@ -85,9 +85,9 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixB,
             typename WORK, typename IWORK >
- static void invoke( char const uplo, integer_t const smlsiz,
- integer_t const n, VectorD& d, VectorE& e, MatrixB& b,
- real_type const rcond, integer_t& rank, integer_t& info,
+ static void invoke( const char uplo, const integer_t smlsiz,
+ const integer_t n, VectorD& d, VectorE& e, MatrixB& b,
+ const real_type rcond, integer_t& rank, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
@@ -118,9 +118,9 @@
 
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixB >
- static void invoke( char const uplo, integer_t const smlsiz,
- integer_t const n, VectorD& d, VectorE& e, MatrixB& b,
- real_type const rcond, integer_t& rank, integer_t& info,
+ static void invoke( const char uplo, const integer_t smlsiz,
+ const integer_t n, VectorD& d, VectorE& e, MatrixB& b,
+ const real_type rcond, integer_t& rank, integer_t& info,
             minimal_workspace work ) {
         integer_t nlvl = std::max( 0, static_cast<integer_t>(
             std::log(static_cast<real_type>(n)/static_cast<real_type>(smlsiz+
@@ -136,23 +136,23 @@
 
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixB >
- static void invoke( char const uplo, integer_t const smlsiz,
- integer_t const n, VectorD& d, VectorE& e, MatrixB& b,
- real_type const rcond, integer_t& rank, integer_t& info,
+ static void invoke( const char uplo, const integer_t smlsiz,
+ const integer_t n, VectorD& d, VectorE& e, MatrixB& b,
+ const real_type rcond, integer_t& rank, integer_t& info,
             optimal_workspace work ) {
         invoke( uplo, smlsiz, n, d, e, b, rcond, rank, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n, integer_t const smlsiz,
- integer_t const nlvl, integer_t const nrhs ) {
+ static integer_t min_size_work( const integer_t n, const integer_t smlsiz,
+ const integer_t nlvl, const integer_t nrhs ) {
         integer_t smlsiz_plus_one = smlsiz + 1;
         return 9*n + 2*n*smlsiz + 8*n*nlvl + n*nrhs +
                 smlsiz_plus_one * smlsiz_plus_one;
     }
 
- static integer_t min_size_iwork( integer_t const n,
- integer_t const nlvl ) {
+ static integer_t min_size_iwork( const integer_t n,
+ const integer_t nlvl ) {
         return 3*n*nlvl + 11*n;
     }
 };
@@ -167,9 +167,9 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixB,
             typename WORK, typename RWORK, typename IWORK >
- static void invoke( char const uplo, integer_t const smlsiz,
- integer_t const n, VectorD& d, VectorE& e, MatrixB& b,
- real_type const rcond, integer_t& rank, integer_t& info,
+ static void invoke( const char uplo, const integer_t smlsiz,
+ const integer_t n, VectorD& d, VectorE& e, MatrixB& b,
+ const real_type rcond, integer_t& rank, integer_t& info,
             detail::workspace3< WORK, RWORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
@@ -202,9 +202,9 @@
 
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixB >
- static void invoke( char const uplo, integer_t const smlsiz,
- integer_t const n, VectorD& d, VectorE& e, MatrixB& b,
- real_type const rcond, integer_t& rank, integer_t& info,
+ static void invoke( const char uplo, const integer_t smlsiz,
+ const integer_t n, VectorD& d, VectorE& e, MatrixB& b,
+ const real_type rcond, integer_t& rank, integer_t& info,
             minimal_workspace work ) {
         integer_t nlvl = std::max( 0, static_cast<integer_t>(
             std::log(static_cast<real_type>(std::min(traits::matrix_size2(b),
@@ -223,28 +223,28 @@
 
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixB >
- static void invoke( char const uplo, integer_t const smlsiz,
- integer_t const n, VectorD& d, VectorE& e, MatrixB& b,
- real_type const rcond, integer_t& rank, integer_t& info,
+ static void invoke( const char uplo, const integer_t smlsiz,
+ const integer_t n, VectorD& d, VectorE& e, MatrixB& b,
+ const real_type rcond, integer_t& rank, integer_t& info,
             optimal_workspace work ) {
         invoke( uplo, smlsiz, n, d, e, b, rcond, rank, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n, integer_t const nrhs ) {
+ static integer_t min_size_work( const integer_t n, const integer_t nrhs ) {
         return n*nrhs;
     }
 
- static integer_t min_size_rwork( integer_t const n,
- integer_t const smlsiz, integer_t const nlvl,
- integer_t const nrhs ) {
+ static integer_t min_size_rwork( const integer_t n,
+ const integer_t smlsiz, const integer_t nlvl,
+ const integer_t nrhs ) {
         integer_t smlsiz_plus_one = smlsiz + 1;
         return 9*n + 2*n*smlsiz + 8*n*nlvl + 3*smlsiz*nrhs +
                 smlsiz_plus_one * smlsiz_plus_one;
     }
 
- static integer_t min_size_iwork( integer_t const n,
- integer_t const nlvl ) {
+ static integer_t min_size_iwork( const integer_t n,
+ const integer_t nlvl ) {
         return 3*n*nlvl+11*n;
     }
 };
@@ -253,10 +253,10 @@
 // template function to call lalsd
 template< typename VectorD, typename VectorE, typename MatrixB,
         typename Workspace >
-inline integer_t lalsd( char const uplo, integer_t const smlsiz,
- integer_t const n, VectorD& d, VectorE& e, MatrixB& b,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixB >::value_type >::real_type const rcond, integer_t& rank,
+inline integer_t lalsd( const char uplo, const integer_t smlsiz,
+ const integer_t n, VectorD& d, VectorE& e, MatrixB& b,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixB >::value_type >::real_type rcond, integer_t& rank,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixB >::value_type value_type;
     integer_t info(0);
@@ -267,10 +267,10 @@
 
 // template function to call lalsd, default workspace type
 template< typename VectorD, typename VectorE, typename MatrixB >
-inline integer_t lalsd( char const uplo, integer_t const smlsiz,
- integer_t const n, VectorD& d, VectorE& e, MatrixB& b,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixB >::value_type >::real_type const rcond, integer_t& rank ) {
+inline integer_t lalsd( const char uplo, const integer_t smlsiz,
+ const integer_t n, VectorD& d, VectorE& e, MatrixB& b,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixB >::value_type >::real_type rcond, integer_t& rank ) {
     typedef typename traits::matrix_traits< MatrixB >::value_type value_type;
     integer_t info(0);
     lalsd_impl< value_type >::invoke( uplo, smlsiz, n, d, e, b, rcond,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/largv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/largv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/largv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,24 +34,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void largv( integer_t const n, float* x, integer_t const incx,
- float* y, integer_t const incy, float* c, integer_t const incc ) {
+ inline void largv( const integer_t n, float* x, const integer_t incx,
+ float* y, const integer_t incy, float* c, const integer_t incc ) {
         LAPACK_SLARGV( &n, x, &incx, y, &incy, c, &incc );
     }
- inline void largv( integer_t const n, double* x, integer_t const incx,
- double* y, integer_t const incy, double* c,
- integer_t const incc ) {
+ inline void largv( const integer_t n, double* x, const integer_t incx,
+ double* y, const integer_t incy, double* c,
+ const integer_t incc ) {
         LAPACK_DLARGV( &n, x, &incx, y, &incy, c, &incc );
     }
- inline void largv( integer_t const n, traits::complex_f* x,
- integer_t const incx, traits::complex_f* y, integer_t const incy,
- float* c, integer_t const incc ) {
+ inline void largv( const integer_t n, traits::complex_f* x,
+ const integer_t incx, traits::complex_f* y, const integer_t incy,
+ float* c, const integer_t incc ) {
         LAPACK_CLARGV( &n, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(y), &incy, c, &incc );
     }
- inline void largv( integer_t const n, traits::complex_d* x,
- integer_t const incx, traits::complex_d* y, integer_t const incy,
- double* c, integer_t const incc ) {
+ inline void largv( const integer_t n, traits::complex_d* x,
+ const integer_t incx, traits::complex_d* y, const integer_t incy,
+ double* c, const integer_t incc ) {
         LAPACK_ZLARGV( &n, traits::complex_ptr(x), &incx,
                 traits::complex_ptr(y), &incy, c, &incc );
     }
@@ -70,9 +70,9 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY, typename VectorC >
- static void invoke( integer_t const n, VectorX& x, integer_t const incx,
- VectorY& y, integer_t const incy, VectorC& c,
- integer_t const incc ) {
+ static void invoke( const integer_t n, VectorX& x, const integer_t incx,
+ VectorY& y, const integer_t incy, VectorC& c,
+ const integer_t incc ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -97,9 +97,9 @@
 
     // templated specialization
     template< typename VectorX, typename VectorY, typename VectorC >
- static void invoke( integer_t const n, VectorX& x, integer_t const incx,
- VectorY& y, integer_t const incy, VectorC& c,
- integer_t const incc ) {
+ static void invoke( const integer_t n, VectorX& x, const integer_t incx,
+ VectorY& y, const integer_t incy, VectorC& c,
+ const integer_t incc ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorX >::value_type, typename traits::vector_traits<
                 VectorY >::value_type >::value) );
@@ -115,9 +115,9 @@
 
 // template function to call largv
 template< typename VectorX, typename VectorY, typename VectorC >
-inline integer_t largv( integer_t const n, VectorX& x,
- integer_t const incx, VectorY& y, integer_t const incy, VectorC& c,
- integer_t const incc ) {
+inline integer_t largv( const integer_t n, VectorX& x,
+ const integer_t incx, VectorY& y, const integer_t incy, VectorC& c,
+ const integer_t incc ) {
     typedef typename traits::vector_traits< VectorX >::value_type value_type;
     integer_t info(0);
     largv_impl< value_type >::invoke( n, x, incx, y, incy, c, incc );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/pbsv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/pbsv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/pbsv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,25 +31,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pbsv( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, float* ab, integer_t const ldab, float* b,
- integer_t const ldb, integer_t& info ) {
+ inline void pbsv( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, float* ab, const integer_t ldab, float* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_SPBSV( &uplo, &n, &kd, &nrhs, ab, &ldab, b, &ldb, &info );
     }
- inline void pbsv( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, double* ab, integer_t const ldab, double* b,
- integer_t const ldb, integer_t& info ) {
+ inline void pbsv( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, double* ab, const integer_t ldab, double* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_DPBSV( &uplo, &n, &kd, &nrhs, ab, &ldab, b, &ldb, &info );
     }
- inline void pbsv( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, traits::complex_f* ab, integer_t const ldab,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void pbsv( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, traits::complex_f* ab, const integer_t ldab,
+ traits::complex_f* b, const integer_t ldb, integer_t& info ) {
         LAPACK_CPBSV( &uplo, &n, &kd, &nrhs, traits::complex_ptr(ab), &ldab,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void pbsv( char const uplo, integer_t const n, integer_t const kd,
- integer_t const nrhs, traits::complex_d* ab, integer_t const ldab,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void pbsv( const char uplo, const integer_t n, const integer_t kd,
+ const integer_t nrhs, traits::complex_d* ab, const integer_t ldab,
+ traits::complex_d* b, const integer_t ldb, integer_t& info ) {
         LAPACK_ZPBSV( &uplo, &n, &kd, &nrhs, traits::complex_ptr(ab), &ldab,
                 traits::complex_ptr(b), &ldb, &info );
     }
@@ -73,7 +73,7 @@
 
     // templated specialization
     template< typename MatrixAB, typename MatrixB >
- static void invoke( integer_t const kd, MatrixAB& ab, MatrixB& b,
+ static void invoke( const integer_t kd, MatrixAB& ab, MatrixB& b,
             integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::matrix_traits<
@@ -97,7 +97,7 @@
 
 // template function to call pbsv
 template< typename MatrixAB, typename MatrixB >
-inline integer_t pbsv( integer_t const kd, MatrixAB& ab, MatrixB& b ) {
+inline integer_t pbsv( const integer_t kd, MatrixAB& ab, MatrixB& b ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     pbsv_impl< value_type >::invoke( kd, ab, b, info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/pbsvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/pbsvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/pbsvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,44 +36,44 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void pbsvx( char const fact, char const uplo, integer_t const n,
- integer_t const kd, integer_t const nrhs, float* ab,
- integer_t const ldab, float* afb, integer_t const ldafb,
- char& equed, float* s, float* b, integer_t const ldb, float* x,
- integer_t const ldx, float& rcond, float* ferr, float* berr,
+ inline void pbsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t kd, const integer_t nrhs, float* ab,
+ const integer_t ldab, float* afb, const integer_t ldafb,
+ char& equed, float* s, float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float& rcond, float* ferr, float* berr,
             float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SPBSVX( &fact, &uplo, &n, &kd, &nrhs, ab, &ldab, afb, &ldafb,
                 &equed, s, b, &ldb, x, &ldx, &rcond, ferr, berr, work, iwork,
                 &info );
     }
- inline void pbsvx( char const fact, char const uplo, integer_t const n,
- integer_t const kd, integer_t const nrhs, double* ab,
- integer_t const ldab, double* afb, integer_t const ldafb,
- char& equed, double* s, double* b, integer_t const ldb, double* x,
- integer_t const ldx, double& rcond, double* ferr, double* berr,
+ inline void pbsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t kd, const integer_t nrhs, double* ab,
+ const integer_t ldab, double* afb, const integer_t ldafb,
+ char& equed, double* s, double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double& rcond, double* ferr, double* berr,
             double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DPBSVX( &fact, &uplo, &n, &kd, &nrhs, ab, &ldab, afb, &ldafb,
                 &equed, s, b, &ldb, x, &ldx, &rcond, ferr, berr, work, iwork,
                 &info );
     }
- inline void pbsvx( char const fact, char const uplo, integer_t const n,
- integer_t const kd, integer_t const nrhs, traits::complex_f* ab,
- integer_t const ldab, traits::complex_f* afb,
- integer_t const ldafb, char& equed, float* s,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* x,
- integer_t const ldx, float& rcond, float* ferr, float* berr,
+ inline void pbsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t kd, const integer_t nrhs, traits::complex_f* ab,
+ const integer_t ldab, traits::complex_f* afb,
+ const integer_t ldafb, char& equed, float* s,
+ traits::complex_f* b, const integer_t ldb, traits::complex_f* x,
+ const integer_t ldx, float& rcond, float* ferr, float* berr,
             traits::complex_f* work, float* rwork, integer_t& info ) {
         LAPACK_CPBSVX( &fact, &uplo, &n, &kd, &nrhs, traits::complex_ptr(ab),
                 &ldab, traits::complex_ptr(afb), &ldafb, &equed, s,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(x), &ldx,
                 &rcond, ferr, berr, traits::complex_ptr(work), rwork, &info );
     }
- inline void pbsvx( char const fact, char const uplo, integer_t const n,
- integer_t const kd, integer_t const nrhs, traits::complex_d* ab,
- integer_t const ldab, traits::complex_d* afb,
- integer_t const ldafb, char& equed, double* s,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, double& rcond, double* ferr, double* berr,
+ inline void pbsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t kd, const integer_t nrhs, traits::complex_d* ab,
+ const integer_t ldab, traits::complex_d* afb,
+ const integer_t ldafb, char& equed, double* s,
+ traits::complex_d* b, const integer_t ldb, traits::complex_d* x,
+ const integer_t ldx, double& rcond, double* ferr, double* berr,
             traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZPBSVX( &fact, &uplo, &n, &kd, &nrhs, traits::complex_ptr(ab),
                 &ldab, traits::complex_ptr(afb), &ldafb, &equed, s,
@@ -97,8 +97,8 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename IWORK >
- static void invoke( char const fact, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
+ static void invoke( const char fact, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
             VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
@@ -154,8 +154,8 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
+ static void invoke( const char fact, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
             VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
@@ -169,8 +169,8 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
+ static void invoke( const char fact, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
             VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
@@ -178,11 +178,11 @@
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -198,8 +198,8 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( char const fact, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
+ static void invoke( const char fact, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
             VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
@@ -252,8 +252,8 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
+ static void invoke( const char fact, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
             VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
@@ -267,8 +267,8 @@
     template< typename MatrixAB, typename MatrixAFB, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
+ static void invoke( const char fact, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
             VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
@@ -276,11 +276,11 @@
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -290,8 +290,8 @@
 template< typename MatrixAB, typename MatrixAFB, typename VectorS,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t pbsvx( char const fact, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
+inline integer_t pbsvx( const char fact, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
         VectorS& s, MatrixB& b, MatrixX& x, typename traits::type_traits<
         typename traits::matrix_traits<
         MatrixAB >::value_type >::real_type& rcond, VectorFERR& ferr,
@@ -307,8 +307,8 @@
 template< typename MatrixAB, typename MatrixAFB, typename VectorS,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t pbsvx( char const fact, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
+inline integer_t pbsvx( const char fact, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixAFB& afb, char& equed,
         VectorS& s, MatrixB& b, MatrixX& x, typename traits::type_traits<
         typename traits::matrix_traits<
         MatrixAB >::value_type >::real_type& rcond, VectorFERR& ferr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/posv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/posv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/posv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,25 +31,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void posv( char const uplo, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* b,
- integer_t const ldb, integer_t& info ) {
+ inline void posv( const char uplo, const integer_t n,
+ const integer_t nrhs, float* a, const integer_t lda, float* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_SPOSV( &uplo, &n, &nrhs, a, &lda, b, &ldb, &info );
     }
- inline void posv( char const uplo, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* b,
- integer_t const ldb, integer_t& info ) {
+ inline void posv( const char uplo, const integer_t n,
+ const integer_t nrhs, double* a, const integer_t lda, double* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_DPOSV( &uplo, &n, &nrhs, a, &lda, b, &ldb, &info );
     }
- inline void posv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void posv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_f* a, const integer_t lda,
+ traits::complex_f* b, const integer_t ldb, integer_t& info ) {
         LAPACK_CPOSV( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void posv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void posv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_d* a, const integer_t lda,
+ traits::complex_d* b, const integer_t ldb, integer_t& info ) {
         LAPACK_ZPOSV( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(b), &ldb, &info );
     }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/posvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/posvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/posvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,29 +36,29 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void posvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* af,
- integer_t const ldaf, char& equed, float* s, float* b,
- integer_t const ldb, float* x, integer_t const ldx, float& rcond,
+ inline void posvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, float* a, const integer_t lda, float* af,
+ const integer_t ldaf, char& equed, float* s, float* b,
+ const integer_t ldb, float* x, const integer_t ldx, float& rcond,
             float* ferr, float* berr, float* work, integer_t* iwork,
             integer_t& info ) {
         LAPACK_SPOSVX( &fact, &uplo, &n, &nrhs, a, &lda, af, &ldaf, &equed, s,
                 b, &ldb, x, &ldx, &rcond, ferr, berr, work, iwork, &info );
     }
- inline void posvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* af,
- integer_t const ldaf, char& equed, double* s, double* b,
- integer_t const ldb, double* x, integer_t const ldx,
+ inline void posvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, double* a, const integer_t lda, double* af,
+ const integer_t ldaf, char& equed, double* s, double* b,
+ const integer_t ldb, double* x, const integer_t ldx,
             double& rcond, double* ferr, double* berr, double* work,
             integer_t* iwork, integer_t& info ) {
         LAPACK_DPOSVX( &fact, &uplo, &n, &nrhs, a, &lda, af, &ldaf, &equed, s,
                 b, &ldb, x, &ldx, &rcond, ferr, berr, work, iwork, &info );
     }
- inline void posvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* af, integer_t const ldaf, char& equed,
- float* s, traits::complex_f* b, integer_t const ldb,
- traits::complex_f* x, integer_t const ldx, float& rcond,
+ inline void posvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_f* a, const integer_t lda,
+ traits::complex_f* af, const integer_t ldaf, char& equed,
+ float* s, traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float& rcond,
             float* ferr, float* berr, traits::complex_f* work, float* rwork,
             integer_t& info ) {
         LAPACK_CPOSVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
@@ -66,11 +66,11 @@
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(x), &ldx,
                 &rcond, ferr, berr, traits::complex_ptr(work), rwork, &info );
     }
- inline void posvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* af, integer_t const ldaf, char& equed,
- double* s, traits::complex_d* b, integer_t const ldb,
- traits::complex_d* x, integer_t const ldx, double& rcond,
+ inline void posvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_d* a, const integer_t lda,
+ traits::complex_d* af, const integer_t ldaf, char& equed,
+ double* s, traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double& rcond,
             double* ferr, double* berr, traits::complex_d* work,
             double* rwork, integer_t& info ) {
         LAPACK_ZPOSVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
@@ -95,7 +95,7 @@
     template< typename MatrixA, typename MatrixAF, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename IWORK >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
+ static void invoke( const char fact, MatrixA& a, MatrixAF& af,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
@@ -154,7 +154,7 @@
     template< typename MatrixA, typename MatrixAF, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
+ static void invoke( const char fact, MatrixA& a, MatrixAF& af,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
@@ -170,7 +170,7 @@
     template< typename MatrixA, typename MatrixAF, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
+ static void invoke( const char fact, MatrixA& a, MatrixAF& af,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
@@ -178,11 +178,11 @@
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -198,7 +198,7 @@
     template< typename MatrixA, typename MatrixAF, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
+ static void invoke( const char fact, MatrixA& a, MatrixAF& af,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
@@ -254,7 +254,7 @@
     template< typename MatrixA, typename MatrixAF, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
+ static void invoke( const char fact, MatrixA& a, MatrixAF& af,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
@@ -270,7 +270,7 @@
     template< typename MatrixA, typename MatrixAF, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
+ static void invoke( const char fact, MatrixA& a, MatrixAF& af,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
@@ -278,11 +278,11 @@
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -292,7 +292,7 @@
 template< typename MatrixA, typename MatrixAF, typename VectorS,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t posvx( char const fact, MatrixA& a, MatrixAF& af,
+inline integer_t posvx( const char fact, MatrixA& a, MatrixAF& af,
         char& equed, VectorS& s, MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond, VectorFERR& ferr,
@@ -308,7 +308,7 @@
 template< typename MatrixA, typename MatrixAF, typename VectorS,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t posvx( char const fact, MatrixA& a, MatrixAF& af,
+inline integer_t posvx( const char fact, MatrixA& a, MatrixAF& af,
         char& equed, VectorS& s, MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond, VectorFERR& ferr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ppsv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ppsv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ppsv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,25 +31,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ppsv( char const uplo, integer_t const n,
- integer_t const nrhs, float* ap, float* b, integer_t const ldb,
+ inline void ppsv( const char uplo, const integer_t n,
+ const integer_t nrhs, float* ap, float* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_SPPSV( &uplo, &n, &nrhs, ap, b, &ldb, &info );
     }
- inline void ppsv( char const uplo, integer_t const n,
- integer_t const nrhs, double* ap, double* b, integer_t const ldb,
+ inline void ppsv( const char uplo, const integer_t n,
+ const integer_t nrhs, double* ap, double* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_DPPSV( &uplo, &n, &nrhs, ap, b, &ldb, &info );
     }
- inline void ppsv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap, traits::complex_f* b,
- integer_t const ldb, integer_t& info ) {
+ inline void ppsv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_f* ap, traits::complex_f* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_CPPSV( &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void ppsv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap, traits::complex_d* b,
- integer_t const ldb, integer_t& info ) {
+ inline void ppsv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_d* ap, traits::complex_d* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_ZPPSV( &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(b), &ldb, &info );
     }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ppsvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ppsvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ppsvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,38 +36,38 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ppsvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, float* ap, float* afp, char& equed,
- float* s, float* b, integer_t const ldb, float* x,
- integer_t const ldx, float& rcond, float* ferr, float* berr,
+ inline void ppsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, float* ap, float* afp, char& equed,
+ float* s, float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float& rcond, float* ferr, float* berr,
             float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SPPSVX( &fact, &uplo, &n, &nrhs, ap, afp, &equed, s, b, &ldb,
                 x, &ldx, &rcond, ferr, berr, work, iwork, &info );
     }
- inline void ppsvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, double* ap, double* afp, char& equed,
- double* s, double* b, integer_t const ldb, double* x,
- integer_t const ldx, double& rcond, double* ferr, double* berr,
+ inline void ppsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, double* ap, double* afp, char& equed,
+ double* s, double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double& rcond, double* ferr, double* berr,
             double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DPPSVX( &fact, &uplo, &n, &nrhs, ap, afp, &equed, s, b, &ldb,
                 x, &ldx, &rcond, ferr, berr, work, iwork, &info );
     }
- inline void ppsvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap,
+ inline void ppsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_f* ap,
             traits::complex_f* afp, char& equed, float* s,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* x,
- integer_t const ldx, float& rcond, float* ferr, float* berr,
+ traits::complex_f* b, const integer_t ldb, traits::complex_f* x,
+ const integer_t ldx, float& rcond, float* ferr, float* berr,
             traits::complex_f* work, float* rwork, integer_t& info ) {
         LAPACK_CPPSVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), &equed, s, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void ppsvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap,
+ inline void ppsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_d* ap,
             traits::complex_d* afp, char& equed, double* s,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, double& rcond, double* ferr, double* berr,
+ traits::complex_d* b, const integer_t ldb, traits::complex_d* x,
+ const integer_t ldx, double& rcond, double* ferr, double* berr,
             traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZPPSVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), &equed, s, traits::complex_ptr(b),
@@ -91,7 +91,7 @@
     template< typename MatrixAP, typename VectorAFP, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename IWORK >
- static void invoke( char const fact, MatrixAP& ap, VectorAFP& afp,
+ static void invoke( const char fact, MatrixAP& ap, VectorAFP& afp,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
@@ -145,7 +145,7 @@
     template< typename MatrixAP, typename VectorAFP, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixAP& ap, VectorAFP& afp,
+ static void invoke( const char fact, MatrixAP& ap, VectorAFP& afp,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
@@ -161,7 +161,7 @@
     template< typename MatrixAP, typename VectorAFP, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixAP& ap, VectorAFP& afp,
+ static void invoke( const char fact, MatrixAP& ap, VectorAFP& afp,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
@@ -169,11 +169,11 @@
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -189,7 +189,7 @@
     template< typename MatrixAP, typename VectorAFP, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( char const fact, MatrixAP& ap, VectorAFP& afp,
+ static void invoke( const char fact, MatrixAP& ap, VectorAFP& afp,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
@@ -240,7 +240,7 @@
     template< typename MatrixAP, typename VectorAFP, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixAP& ap, VectorAFP& afp,
+ static void invoke( const char fact, MatrixAP& ap, VectorAFP& afp,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
@@ -256,7 +256,7 @@
     template< typename MatrixAP, typename VectorAFP, typename VectorS,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixAP& ap, VectorAFP& afp,
+ static void invoke( const char fact, MatrixAP& ap, VectorAFP& afp,
             char& equed, VectorS& s, MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
@@ -264,11 +264,11 @@
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -278,7 +278,7 @@
 template< typename MatrixAP, typename VectorAFP, typename VectorS,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t ppsvx( char const fact, MatrixAP& ap, VectorAFP& afp,
+inline integer_t ppsvx( const char fact, MatrixAP& ap, VectorAFP& afp,
         char& equed, VectorS& s, MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixAP >::value_type >::real_type& rcond, VectorFERR& ferr,
@@ -294,7 +294,7 @@
 template< typename MatrixAP, typename VectorAFP, typename VectorS,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t ppsvx( char const fact, MatrixAP& ap, VectorAFP& afp,
+inline integer_t ppsvx( const char fact, MatrixAP& ap, VectorAFP& afp,
         char& equed, VectorS& s, MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixAP >::value_type >::real_type& rcond, VectorFERR& ferr,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ptsv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ptsv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ptsv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,22 +34,22 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ptsv( integer_t const n, integer_t const nrhs, float* d,
- float* e, float* b, integer_t const ldb, integer_t& info ) {
+ inline void ptsv( const integer_t n, const integer_t nrhs, float* d,
+ float* e, float* b, const integer_t ldb, integer_t& info ) {
         LAPACK_SPTSV( &n, &nrhs, d, e, b, &ldb, &info );
     }
- inline void ptsv( integer_t const n, integer_t const nrhs, double* d,
- double* e, double* b, integer_t const ldb, integer_t& info ) {
+ inline void ptsv( const integer_t n, const integer_t nrhs, double* d,
+ double* e, double* b, const integer_t ldb, integer_t& info ) {
         LAPACK_DPTSV( &n, &nrhs, d, e, b, &ldb, &info );
     }
- inline void ptsv( integer_t const n, integer_t const nrhs, float* d,
- traits::complex_f* e, traits::complex_f* b, integer_t const ldb,
+ inline void ptsv( const integer_t n, const integer_t nrhs, float* d,
+ traits::complex_f* e, traits::complex_f* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_CPTSV( &n, &nrhs, d, traits::complex_ptr(e),
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void ptsv( integer_t const n, integer_t const nrhs, double* d,
- traits::complex_d* e, traits::complex_d* b, integer_t const ldb,
+ inline void ptsv( const integer_t n, const integer_t nrhs, double* d,
+ traits::complex_d* e, traits::complex_d* b, const integer_t ldb,
             integer_t& info ) {
         LAPACK_ZPTSV( &n, &nrhs, d, traits::complex_ptr(e),
                 traits::complex_ptr(b), &ldb, &info );
@@ -78,7 +78,7 @@
 
     // templated specialization
     template< typename VectorD, typename VectorE, typename MatrixB >
- static void invoke( integer_t const n, VectorD& d, VectorE& e, MatrixB& b,
+ static void invoke( const integer_t n, VectorD& d, VectorE& e, MatrixB& b,
             integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
@@ -116,7 +116,7 @@
 
     // templated specialization
     template< typename VectorD, typename VectorE, typename MatrixB >
- static void invoke( integer_t const n, VectorD& d, VectorE& e, MatrixB& b,
+ static void invoke( const integer_t n, VectorD& d, VectorE& e, MatrixB& b,
             integer_t& info ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorE >::value_type, typename traits::matrix_traits<
@@ -136,7 +136,7 @@
 
 // template function to call ptsv
 template< typename VectorD, typename VectorE, typename MatrixB >
-inline integer_t ptsv( integer_t const n, VectorD& d, VectorE& e,
+inline integer_t ptsv( const integer_t n, VectorD& d, VectorE& e,
         MatrixB& b ) {
     typedef typename traits::vector_traits< VectorE >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ptsvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ptsvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/ptsvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,39 +36,39 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void ptsvx( char const fact, integer_t const n,
- integer_t const nrhs, float* d, float* e, float* df, float* ef,
- float* b, integer_t const ldb, float* x, integer_t const ldx,
- float& rcond, float* ferr, float* berr, float* work,
- integer_t& info ) {
+ inline void ptsvx( const char fact, const integer_t n,
+ const integer_t nrhs, const float* d, const float* e, float* df,
+ float* ef, const float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float& rcond, float* ferr, float* berr,
+ float* work, integer_t& info ) {
         LAPACK_SPTSVX( &fact, &n, &nrhs, d, e, df, ef, b, &ldb, x, &ldx,
                 &rcond, ferr, berr, work, &info );
     }
- inline void ptsvx( char const fact, integer_t const n,
- integer_t const nrhs, double* d, double* e, double* df,
- double* ef, double* b, integer_t const ldb, double* x,
- integer_t const ldx, double& rcond, double* ferr, double* berr,
- double* work, integer_t& info ) {
+ inline void ptsvx( const char fact, const integer_t n,
+ const integer_t nrhs, const double* d, const double* e,
+ double* df, double* ef, const double* b, const integer_t ldb,
+ double* x, const integer_t ldx, double& rcond, double* ferr,
+ double* berr, double* work, integer_t& info ) {
         LAPACK_DPTSVX( &fact, &n, &nrhs, d, e, df, ef, b, &ldb, x, &ldx,
                 &rcond, ferr, berr, work, &info );
     }
- inline void ptsvx( char const fact, integer_t const n,
- integer_t const nrhs, float* d, traits::complex_f* e, float* df,
- traits::complex_f* ef, traits::complex_f* b, integer_t const ldb,
- traits::complex_f* x, integer_t const ldx, float& rcond,
- float* ferr, float* berr, traits::complex_f* work, float* rwork,
- integer_t& info ) {
+ inline void ptsvx( const char fact, const integer_t n,
+ const integer_t nrhs, const float* d, const traits::complex_f* e,
+ float* df, traits::complex_f* ef, const traits::complex_f* b,
+ const integer_t ldb, traits::complex_f* x, const integer_t ldx,
+ float& rcond, float* ferr, float* berr, traits::complex_f* work,
+ float* rwork, integer_t& info ) {
         LAPACK_CPTSVX( &fact, &n, &nrhs, d, traits::complex_ptr(e), df,
                 traits::complex_ptr(ef), traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void ptsvx( char const fact, integer_t const n,
- integer_t const nrhs, double* d, traits::complex_d* e, double* df,
- traits::complex_d* ef, traits::complex_d* b, integer_t const ldb,
- traits::complex_d* x, integer_t const ldx, double& rcond,
- double* ferr, double* berr, traits::complex_d* work,
- double* rwork, integer_t& info ) {
+ inline void ptsvx( const char fact, const integer_t n,
+ const integer_t nrhs, const double* d, const traits::complex_d* e,
+ double* df, traits::complex_d* ef, const traits::complex_d* b,
+ const integer_t ldb, traits::complex_d* x, const integer_t ldx,
+ double& rcond, double* ferr, double* berr,
+ traits::complex_d* work, double* rwork, integer_t& info ) {
         LAPACK_ZPTSVX( &fact, &n, &nrhs, d, traits::complex_ptr(e), df,
                 traits::complex_ptr(ef), traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
@@ -91,9 +91,9 @@
     template< typename VectorD, typename VectorE, typename VectorDF,
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR, typename WORK >
- static void invoke( char const fact, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
+ static void invoke( const char fact, const integer_t n, const VectorD& d,
+ const VectorE& e, VectorDF& df, VectorEF& ef, const MatrixB& b,
+ MatrixX& x, real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
@@ -141,9 +141,9 @@
     template< typename VectorD, typename VectorE, typename VectorDF,
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
+ static void invoke( const char fact, const integer_t n, const VectorD& d,
+ const VectorE& e, VectorDF& df, VectorEF& ef, const MatrixB& b,
+ MatrixX& x, real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( fact, n, d, e, df, ef, b, x, rcond, ferr, berr, info,
@@ -154,15 +154,15 @@
     template< typename VectorD, typename VectorE, typename VectorDF,
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
+ static void invoke( const char fact, const integer_t n, const VectorD& d,
+ const VectorE& e, VectorDF& df, VectorEF& ef, const MatrixB& b,
+ MatrixX& x, real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
             integer_t& info, optimal_workspace work ) {
         invoke( fact, n, d, e, df, ef, b, x, rcond, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 };
@@ -179,9 +179,9 @@
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR, typename WORK,
             typename RWORK >
- static void invoke( char const fact, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
+ static void invoke( const char fact, const integer_t n, const VectorD& d,
+ const VectorE& e, VectorDF& df, VectorEF& ef, const MatrixB& b,
+ MatrixX& x, real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
             integer_t& info, detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
                 VectorD >::value_type, typename traits::vector_traits<
@@ -229,9 +229,9 @@
     template< typename VectorD, typename VectorE, typename VectorDF,
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
+ static void invoke( const char fact, const integer_t n, const VectorD& d,
+ const VectorE& e, VectorDF& df, VectorEF& ef, const MatrixB& b,
+ MatrixX& x, real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work( n ) );
         traits::detail::array< real_type > tmp_rwork( min_size_rwork( n ) );
@@ -243,19 +243,19 @@
     template< typename VectorD, typename VectorE, typename VectorDF,
             typename VectorEF, typename MatrixB, typename MatrixX,
             typename VectorFERR, typename VectorBERR >
- static void invoke( char const fact, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
+ static void invoke( const char fact, const integer_t n, const VectorD& d,
+ const VectorE& e, VectorDF& df, VectorEF& ef, const MatrixB& b,
+ MatrixX& x, real_type& rcond, VectorFERR& ferr, VectorBERR& berr,
             integer_t& info, optimal_workspace work ) {
         invoke( fact, n, d, e, df, ef, b, x, rcond, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -265,9 +265,10 @@
 template< typename VectorD, typename VectorE, typename VectorDF,
         typename VectorEF, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR, typename Workspace >
-inline integer_t ptsvx( char const fact, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- typename traits::type_traits< typename traits::vector_traits<
+inline integer_t ptsvx( const char fact, const integer_t n,
+ const VectorD& d, const VectorE& e, VectorDF& df, VectorEF& ef,
+ const MatrixB& b, MatrixX& x, typename traits::type_traits<
+ typename traits::vector_traits<
         VectorE >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr, Workspace work ) {
     typedef typename traits::vector_traits< VectorE >::value_type value_type;
@@ -281,9 +282,10 @@
 template< typename VectorD, typename VectorE, typename VectorDF,
         typename VectorEF, typename MatrixB, typename MatrixX,
         typename VectorFERR, typename VectorBERR >
-inline integer_t ptsvx( char const fact, integer_t const n, VectorD& d,
- VectorE& e, VectorDF& df, VectorEF& ef, MatrixB& b, MatrixX& x,
- typename traits::type_traits< typename traits::vector_traits<
+inline integer_t ptsvx( const char fact, const integer_t n,
+ const VectorD& d, const VectorE& e, VectorDF& df, VectorEF& ef,
+ const MatrixB& b, MatrixX& x, typename traits::type_traits<
+ typename traits::vector_traits<
         VectorE >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr ) {
     typedef typename traits::vector_traits< VectorE >::value_type value_type;

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbev.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbev.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbev.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,15 +33,15 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sbev( char const jobz, char const uplo, integer_t const n,
- integer_t const kd, float* ab, integer_t const ldab, float* w,
- float* z, integer_t const ldz, float* work, integer_t& info ) {
+ inline void sbev( const char jobz, const char uplo, const integer_t n,
+ const integer_t kd, float* ab, const integer_t ldab, float* w,
+ float* z, const integer_t ldz, float* work, integer_t& info ) {
         LAPACK_SSBEV( &jobz, &uplo, &n, &kd, ab, &ldab, w, z, &ldz, work,
                 &info );
     }
- inline void sbev( char const jobz, char const uplo, integer_t const n,
- integer_t const kd, double* ab, integer_t const ldab, double* w,
- double* z, integer_t const ldz, double* work, integer_t& info ) {
+ inline void sbev( const char jobz, const char uplo, const integer_t n,
+ const integer_t kd, double* ab, const integer_t ldab, double* w,
+ double* z, const integer_t ldz, double* work, integer_t& info ) {
         LAPACK_DSBEV( &jobz, &uplo, &n, &kd, ab, &ldab, w, z, &ldz, work,
                 &info );
     }
@@ -57,8 +57,8 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ,
             typename WORK >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::vector_traits<
@@ -83,8 +83,8 @@
 
     // minimal workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( jobz, n, kd, ab, w, z, info, workspace( tmp_work ) );
@@ -92,13 +92,13 @@
 
     // optimal workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
             integer_t& info, optimal_workspace work ) {
         invoke( jobz, n, kd, ab, w, z, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max(1,3*n-2);
     }
 };
@@ -107,8 +107,8 @@
 // template function to call sbev
 template< typename MatrixAB, typename VectorW, typename MatrixZ,
         typename Workspace >
-inline integer_t sbev( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+inline integer_t sbev( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
@@ -118,8 +118,8 @@
 
 // template function to call sbev, default workspace type
 template< typename MatrixAB, typename VectorW, typename MatrixZ >
-inline integer_t sbev( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z ) {
+inline integer_t sbev( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     sbev_impl< value_type >::invoke( jobz, n, kd, ab, w, z, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbevd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbevd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbevd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,17 +34,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sbevd( char const jobz, char const uplo, integer_t const n,
- integer_t const kd, float* ab, integer_t const ldab, float* w,
- float* z, integer_t const ldz, float* work, integer_t const lwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ inline void sbevd( const char jobz, const char uplo, const integer_t n,
+ const integer_t kd, float* ab, const integer_t ldab, float* w,
+ float* z, const integer_t ldz, float* work, const integer_t lwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_SSBEVD( &jobz, &uplo, &n, &kd, ab, &ldab, w, z, &ldz, work,
                 &lwork, iwork, &liwork, &info );
     }
- inline void sbevd( char const jobz, char const uplo, integer_t const n,
- integer_t const kd, double* ab, integer_t const ldab, double* w,
- double* z, integer_t const ldz, double* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void sbevd( const char jobz, const char uplo, const integer_t n,
+ const integer_t kd, double* ab, const integer_t ldab, double* w,
+ double* z, const integer_t ldz, double* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_DSBEVD( &jobz, &uplo, &n, &kd, ab, &ldab, w, z, &ldz, work,
                 &lwork, iwork, &liwork, &info );
@@ -61,9 +61,9 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ,
             typename WORK, typename IWORK >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
- integer_t const liwork, integer_t& info, detail::workspace2< WORK,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ const integer_t liwork, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAB >::value_type, typename traits::vector_traits<
@@ -93,9 +93,9 @@
 
     // minimal workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
- integer_t const liwork, integer_t& info, minimal_workspace work ) {
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ const integer_t liwork, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( jobz,
                 n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( jobz,
@@ -106,9 +106,9 @@
 
     // optimal workspace specialization
     template< typename MatrixAB, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
- integer_t const liwork, integer_t& info, optimal_workspace work ) {
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ const integer_t liwork, integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         integer_t opt_size_iwork;
         detail::sbevd( jobz, traits::matrix_uplo_tag(ab), n, kd,
@@ -123,7 +123,7 @@
                 tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -134,7 +134,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -146,9 +146,9 @@
 // template function to call sbevd
 template< typename MatrixAB, typename VectorW, typename MatrixZ,
         typename Workspace >
-inline integer_t sbevd( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
- integer_t const liwork, Workspace work ) {
+inline integer_t sbevd( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ const integer_t liwork, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     sbevd_impl< value_type >::invoke( jobz, n, kd, ab, w, z, liwork,
@@ -158,9 +158,9 @@
 
 // template function to call sbevd, default workspace type
 template< typename MatrixAB, typename VectorW, typename MatrixZ >
-inline integer_t sbevd( char const jobz, integer_t const n,
- integer_t const kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
- integer_t const liwork ) {
+inline integer_t sbevd( const char jobz, const integer_t n,
+ const integer_t kd, MatrixAB& ab, VectorW& w, MatrixZ& z,
+ const integer_t liwork ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     sbevd_impl< value_type >::invoke( jobz, n, kd, ab, w, z, liwork,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbevx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbevx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbevx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,23 +33,23 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sbevx( char const jobz, char const range, char const uplo,
- integer_t const n, integer_t const kd, float* ab,
- integer_t const ldab, float* q, integer_t const ldq,
- float const vl, float const vu, integer_t const il,
- integer_t const iu, float const abstol, integer_t& m, float* w,
- float* z, integer_t const ldz, float* work, integer_t* iwork,
+ inline void sbevx( const char jobz, const char range, const char uplo,
+ const integer_t n, const integer_t kd, float* ab,
+ const integer_t ldab, float* q, const integer_t ldq,
+ const float vl, const float vu, const integer_t il,
+ const integer_t iu, const float abstol, integer_t& m, float* w,
+ float* z, const integer_t ldz, float* work, integer_t* iwork,
             integer_t* ifail, integer_t& info ) {
         LAPACK_SSBEVX( &jobz, &range, &uplo, &n, &kd, ab, &ldab, q, &ldq, &vl,
                 &vu, &il, &iu, &abstol, &m, w, z, &ldz, work, iwork, ifail,
                 &info );
     }
- inline void sbevx( char const jobz, char const range, char const uplo,
- integer_t const n, integer_t const kd, double* ab,
- integer_t const ldab, double* q, integer_t const ldq,
- double const vl, double const vu, integer_t const il,
- integer_t const iu, double const abstol, integer_t& m, double* w,
- double* z, integer_t const ldz, double* work, integer_t* iwork,
+ inline void sbevx( const char jobz, const char range, const char uplo,
+ const integer_t n, const integer_t kd, double* ab,
+ const integer_t ldab, double* q, const integer_t ldq,
+ const double vl, const double vu, const integer_t il,
+ const integer_t iu, const double abstol, integer_t& m, double* w,
+ double* z, const integer_t ldz, double* work, integer_t* iwork,
             integer_t* ifail, integer_t& info ) {
         LAPACK_DSBEVX( &jobz, &range, &uplo, &n, &kd, ab, &ldab, q, &ldq, &vl,
                 &vu, &il, &iu, &abstol, &m, w, z, &ldz, work, iwork, ifail,
@@ -68,10 +68,10 @@
     template< typename MatrixAB, typename MatrixQ, typename VectorW,
             typename MatrixZ, typename VectorIFAIL, typename WORK,
             typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixQ& q, real_type const vl,
- real_type const vu, integer_t const il, integer_t const iu,
- real_type const abstol, integer_t& m, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixQ& q, const real_type vl,
+ const real_type vu, const integer_t il, const integer_t iu,
+ const real_type abstol, integer_t& m, VectorW& w, MatrixZ& z,
             VectorIFAIL& ifail, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -109,10 +109,10 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixQ, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixQ& q, real_type const vl,
- real_type const vu, integer_t const il, integer_t const iu,
- real_type const abstol, integer_t& m, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixQ& q, const real_type vl,
+ const real_type vu, const integer_t il, const integer_t iu,
+ const real_type abstol, integer_t& m, VectorW& w, MatrixZ& z,
             VectorIFAIL& ifail, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         traits::detail::array< integer_t > tmp_iwork( min_size_iwork( n ) );
@@ -123,20 +123,20 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixQ, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const kd, MatrixAB& ab, MatrixQ& q, real_type const vl,
- real_type const vu, integer_t const il, integer_t const iu,
- real_type const abstol, integer_t& m, VectorW& w, MatrixZ& z,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t kd, MatrixAB& ab, MatrixQ& q, const real_type vl,
+ const real_type vu, const integer_t il, const integer_t iu,
+ const real_type abstol, integer_t& m, VectorW& w, MatrixZ& z,
             VectorIFAIL& ifail, integer_t& info, optimal_workspace work ) {
         invoke( jobz, range, n, kd, ab, q, vl, vu, il, iu, abstol, m, w, z,
                 ifail, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 7*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -145,16 +145,16 @@
 // template function to call sbevx
 template< typename MatrixAB, typename MatrixQ, typename VectorW,
         typename MatrixZ, typename VectorIFAIL, typename Workspace >
-inline integer_t sbevx( char const jobz, char const range,
- integer_t const n, integer_t const kd, MatrixAB& ab, MatrixQ& q,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t sbevx( const char jobz, const char range,
+ const integer_t n, const integer_t kd, MatrixAB& ab, MatrixQ& q,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixAB >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     sbevx_impl< value_type >::invoke( jobz, range, n, kd, ab, q, vl, vu,
@@ -165,16 +165,16 @@
 // template function to call sbevx, default workspace type
 template< typename MatrixAB, typename MatrixQ, typename VectorW,
         typename MatrixZ, typename VectorIFAIL >
-inline integer_t sbevx( char const jobz, char const range,
- integer_t const n, integer_t const kd, MatrixAB& ab, MatrixQ& q,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t sbevx( const char jobz, const char range,
+ const integer_t n, const integer_t kd, MatrixAB& ab, MatrixQ& q,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixAB >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     sbevx_impl< value_type >::invoke( jobz, range, n, kd, ab, q, vl, vu,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,17 +33,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sbgv( char const jobz, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, float* ab,
- integer_t const ldab, float* bb, integer_t const ldbb, float* w,
- float* z, integer_t const ldz, float* work, integer_t& info ) {
+ inline void sbgv( const char jobz, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, float* ab,
+ const integer_t ldab, float* bb, const integer_t ldbb, float* w,
+ float* z, const integer_t ldz, float* work, integer_t& info ) {
         LAPACK_SSBGV( &jobz, &uplo, &n, &ka, &kb, ab, &ldab, bb, &ldbb, w, z,
                 &ldz, work, &info );
     }
- inline void sbgv( char const jobz, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, double* ab,
- integer_t const ldab, double* bb, integer_t const ldbb, double* w,
- double* z, integer_t const ldz, double* work, integer_t& info ) {
+ inline void sbgv( const char jobz, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, double* ab,
+ const integer_t ldab, double* bb, const integer_t ldbb, double* w,
+ double* z, const integer_t ldz, double* work, integer_t& info ) {
         LAPACK_DSBGV( &jobz, &uplo, &n, &ka, &kb, ab, &ldab, bb, &ldbb, w, z,
                 &ldz, work, &info );
     }
@@ -59,8 +59,8 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ, typename WORK >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -93,8 +93,8 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
@@ -104,14 +104,14 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             optimal_workspace work ) {
         invoke( jobz, n, ka, kb, ab, bb, w, z, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 };
@@ -120,8 +120,8 @@
 // template function to call sbgv
 template< typename MatrixAB, typename MatrixBB, typename VectorW,
         typename MatrixZ, typename Workspace >
-inline integer_t sbgv( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
+inline integer_t sbgv( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab, MatrixBB& bb,
         VectorW& w, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
@@ -133,8 +133,8 @@
 // template function to call sbgv, default workspace type
 template< typename MatrixAB, typename MatrixBB, typename VectorW,
         typename MatrixZ >
-inline integer_t sbgv( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
+inline integer_t sbgv( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab, MatrixBB& bb,
         VectorW& w, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgvd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgvd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgvd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,19 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sbgvd( char const jobz, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, float* ab,
- integer_t const ldab, float* bb, integer_t const ldbb, float* w,
- float* z, integer_t const ldz, float* work, integer_t const lwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ inline void sbgvd( const char jobz, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, float* ab,
+ const integer_t ldab, float* bb, const integer_t ldbb, float* w,
+ float* z, const integer_t ldz, float* work, const integer_t lwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_SSBGVD( &jobz, &uplo, &n, &ka, &kb, ab, &ldab, bb, &ldbb, w, z,
                 &ldz, work, &lwork, iwork, &liwork, &info );
     }
- inline void sbgvd( char const jobz, char const uplo, integer_t const n,
- integer_t const ka, integer_t const kb, double* ab,
- integer_t const ldab, double* bb, integer_t const ldbb, double* w,
- double* z, integer_t const ldz, double* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void sbgvd( const char jobz, const char uplo, const integer_t n,
+ const integer_t ka, const integer_t kb, double* ab,
+ const integer_t ldab, double* bb, const integer_t ldbb, double* w,
+ double* z, const integer_t ldz, double* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_DSBGVD( &jobz, &uplo, &n, &ka, &kb, ab, &ldab, bb, &ldbb, w, z,
                 &ldz, work, &lwork, iwork, &liwork, &info );
@@ -63,8 +63,8 @@
     // user-defined workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ, typename WORK, typename IWORK >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -102,8 +102,8 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( jobz,
@@ -117,8 +117,8 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename VectorW,
             typename MatrixZ >
- static void invoke( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
+ static void invoke( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
             MatrixBB& bb, VectorW& w, MatrixZ& z, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
@@ -136,7 +136,7 @@
                 tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -147,7 +147,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -159,8 +159,8 @@
 // template function to call sbgvd
 template< typename MatrixAB, typename MatrixBB, typename VectorW,
         typename MatrixZ, typename Workspace >
-inline integer_t sbgvd( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
+inline integer_t sbgvd( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab, MatrixBB& bb,
         VectorW& w, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
@@ -172,8 +172,8 @@
 // template function to call sbgvd, default workspace type
 template< typename MatrixAB, typename MatrixBB, typename VectorW,
         typename MatrixZ >
-inline integer_t sbgvd( char const jobz, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab, MatrixBB& bb,
+inline integer_t sbgvd( const char jobz, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab, MatrixBB& bb,
         VectorW& w, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sbgvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,25 +33,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sbgvx( char const jobz, char const range, char const uplo,
- integer_t const n, integer_t const ka, integer_t const kb,
- float* ab, integer_t const ldab, float* bb, integer_t const ldbb,
- float* q, integer_t const ldq, float const vl, float const vu,
- integer_t const il, integer_t const iu, float const abstol,
- integer_t& m, float* w, float* z, integer_t const ldz,
+ inline void sbgvx( const char jobz, const char range, const char uplo,
+ const integer_t n, const integer_t ka, const integer_t kb,
+ float* ab, const integer_t ldab, float* bb, const integer_t ldbb,
+ float* q, const integer_t ldq, const float vl, const float vu,
+ const integer_t il, const integer_t iu, const float abstol,
+ integer_t& m, float* w, float* z, const integer_t ldz,
             float* work, integer_t* iwork, integer_t* ifail,
             integer_t& info ) {
         LAPACK_SSBGVX( &jobz, &range, &uplo, &n, &ka, &kb, ab, &ldab, bb,
                 &ldbb, q, &ldq, &vl, &vu, &il, &iu, &abstol, &m, w, z, &ldz,
                 work, iwork, ifail, &info );
     }
- inline void sbgvx( char const jobz, char const range, char const uplo,
- integer_t const n, integer_t const ka, integer_t const kb,
- double* ab, integer_t const ldab, double* bb,
- integer_t const ldbb, double* q, integer_t const ldq,
- double const vl, double const vu, integer_t const il,
- integer_t const iu, double const abstol, integer_t& m, double* w,
- double* z, integer_t const ldz, double* work, integer_t* iwork,
+ inline void sbgvx( const char jobz, const char range, const char uplo,
+ const integer_t n, const integer_t ka, const integer_t kb,
+ double* ab, const integer_t ldab, double* bb,
+ const integer_t ldbb, double* q, const integer_t ldq,
+ const double vl, const double vu, const integer_t il,
+ const integer_t iu, const double abstol, integer_t& m, double* w,
+ double* z, const integer_t ldz, double* work, integer_t* iwork,
             integer_t* ifail, integer_t& info ) {
         LAPACK_DSBGVX( &jobz, &range, &uplo, &n, &ka, &kb, ab, &ldab, bb,
                 &ldbb, q, &ldq, &vl, &vu, &il, &iu, &abstol, &m, w, z, &ldz,
@@ -70,10 +70,10 @@
     template< typename MatrixAB, typename MatrixBB, typename MatrixQ,
             typename VectorW, typename MatrixZ, typename VectorIFAIL,
             typename WORK, typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixQ& q, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ MatrixBB& bb, MatrixQ& q, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -115,10 +115,10 @@
     // minimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename MatrixQ,
             typename VectorW, typename MatrixZ, typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixQ& q, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ MatrixBB& bb, MatrixQ& q, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
@@ -130,21 +130,21 @@
     // optimal workspace specialization
     template< typename MatrixAB, typename MatrixBB, typename MatrixQ,
             typename VectorW, typename MatrixZ, typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- integer_t const ka, integer_t const kb, MatrixAB& ab,
- MatrixBB& bb, MatrixQ& q, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ const integer_t ka, const integer_t kb, MatrixAB& ab,
+ MatrixBB& bb, MatrixQ& q, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, optimal_workspace work ) {
         invoke( jobz, range, n, ka, kb, ab, bb, q, vl, vu, il, iu, abstol, m,
                 w, z, ifail, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 7*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -154,17 +154,17 @@
 template< typename MatrixAB, typename MatrixBB, typename MatrixQ,
         typename VectorW, typename MatrixZ, typename VectorIFAIL,
         typename Workspace >
-inline integer_t sbgvx( char const jobz, char const range,
- integer_t const n, integer_t const ka, integer_t const kb,
- MatrixAB& ab, MatrixBB& bb, MatrixQ& q, typename traits::type_traits<
+inline integer_t sbgvx( const char jobz, const char range,
+ const integer_t n, const integer_t ka, const integer_t kb,
+ MatrixAB& ab, MatrixBB& bb, MatrixQ& q,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
- typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixAB >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     sbgvx_impl< value_type >::invoke( jobz, range, n, ka, kb, ab, bb, q,
@@ -175,17 +175,17 @@
 // template function to call sbgvx, default workspace type
 template< typename MatrixAB, typename MatrixBB, typename MatrixQ,
         typename VectorW, typename MatrixZ, typename VectorIFAIL >
-inline integer_t sbgvx( char const jobz, char const range,
- integer_t const n, integer_t const ka, integer_t const kb,
- MatrixAB& ab, MatrixBB& bb, MatrixQ& q, typename traits::type_traits<
- typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t sbgvx( const char jobz, const char range,
+ const integer_t n, const integer_t ka, const integer_t kb,
+ MatrixAB& ab, MatrixBB& bb, MatrixQ& q,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAB >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAB >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixAB >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixAB >::value_type value_type;
     integer_t info(0);
     sbgvx_impl< value_type >::invoke( jobz, range, n, ka, kb, ab, bb, q,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sgesv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sgesv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sgesv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,9 +33,9 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sgesv( integer_t const n, integer_t const nrhs, double* a,
- integer_t const lda, integer_t* ipiv, double* b,
- integer_t const ldb, double* x, integer_t const ldx, double* work,
+ inline void sgesv( const integer_t n, const integer_t nrhs, double* a,
+ const integer_t lda, integer_t* ipiv, const double* b,
+ const integer_t ldb, double* x, const integer_t ldx, double* work,
             float* swork, integer_t& iter, integer_t& info ) {
         LAPACK_DSGESV( &n, &nrhs, a, &lda, ipiv, b, &ldb, x, &ldx, work,
                 swork, &iter, &info );
@@ -52,9 +52,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename MatrixB,
             typename MatrixX, typename WORK, typename SWORK >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- integer_t& iter, integer_t& info, detail::workspace2< WORK,
- SWORK > work ) {
+ static void invoke( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, integer_t& iter, integer_t& info, detail::workspace2<
+ WORK, SWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -88,8 +88,9 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename MatrixB,
             typename MatrixX >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- integer_t& iter, integer_t& info, minimal_workspace work ) {
+ static void invoke( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, integer_t& iter, integer_t& info,
+ minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         traits::detail::array< real_type > tmp_swork( min_size_swork(
@@ -101,8 +102,9 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorIPIV, typename MatrixB,
             typename MatrixX >
- static void invoke( MatrixA& a, VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
- integer_t& iter, integer_t& info, optimal_workspace work ) {
+ static void invoke( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b,
+ MatrixX& x, integer_t& iter, integer_t& info,
+ optimal_workspace work ) {
         invoke( a, ipiv, b, x, iter, info, minimal_workspace() );
     }
 
@@ -110,8 +112,8 @@
         $MIN_SIZE
     }
 
- static integer_t min_size_swork( integer_t const n,
- integer_t const nrhs ) {
+ static integer_t min_size_swork( const integer_t n,
+ const integer_t nrhs ) {
         return n*(n+nrhs);
     }
 };
@@ -120,7 +122,7 @@
 // template function to call sgesv
 template< typename MatrixA, typename VectorIPIV, typename MatrixB,
         typename MatrixX, typename Workspace >
-inline integer_t sgesv( MatrixA& a, VectorIPIV& ipiv, MatrixB& b,
+inline integer_t sgesv( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b,
         MatrixX& x, integer_t& iter, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -131,7 +133,7 @@
 // template function to call sgesv, default workspace type
 template< typename MatrixA, typename VectorIPIV, typename MatrixB,
         typename MatrixX >
-inline integer_t sgesv( MatrixA& a, VectorIPIV& ipiv, MatrixB& b,
+inline integer_t sgesv( MatrixA& a, VectorIPIV& ipiv, const MatrixB& b,
         MatrixX& x, integer_t& iter ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spev.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spev.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spev.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,13 +33,13 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void spev( char const jobz, char const uplo, integer_t const n,
- float* ap, float* w, float* z, integer_t const ldz, float* work,
+ inline void spev( const char jobz, const char uplo, const integer_t n,
+ float* ap, float* w, float* z, const integer_t ldz, float* work,
             integer_t& info ) {
         LAPACK_SSPEV( &jobz, &uplo, &n, ap, w, z, &ldz, work, &info );
     }
- inline void spev( char const jobz, char const uplo, integer_t const n,
- double* ap, double* w, double* z, integer_t const ldz,
+ inline void spev( const char jobz, const char uplo, const integer_t n,
+ double* ap, double* w, double* z, const integer_t ldz,
             double* work, integer_t& info ) {
         LAPACK_DSPEV( &jobz, &uplo, &n, ap, w, z, &ldz, work, &info );
     }
@@ -55,7 +55,7 @@
     // user-defined workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ,
             typename WORK >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, detail::workspace1<
             WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -78,7 +78,7 @@
 
     // minimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( jobz, n, ap, w, z, info, workspace( tmp_work ) );
@@ -86,12 +86,12 @@
 
     // optimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         invoke( jobz, n, ap, w, z, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 };
@@ -100,7 +100,7 @@
 // template function to call spev
 template< typename MatrixAP, typename VectorW, typename MatrixZ,
         typename Workspace >
-inline integer_t spev( char const jobz, integer_t const n, MatrixAP& ap,
+inline integer_t spev( const char jobz, const integer_t n, MatrixAP& ap,
         VectorW& w, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
@@ -110,7 +110,7 @@
 
 // template function to call spev, default workspace type
 template< typename MatrixAP, typename VectorW, typename MatrixZ >
-inline integer_t spev( char const jobz, integer_t const n, MatrixAP& ap,
+inline integer_t spev( const char jobz, const integer_t n, MatrixAP& ap,
         VectorW& w, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spevd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spevd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spevd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,17 +34,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void spevd( char const jobz, char const uplo, integer_t const n,
- float* ap, float* w, float* z, integer_t const ldz, float* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void spevd( const char jobz, const char uplo, const integer_t n,
+ float* ap, float* w, float* z, const integer_t ldz, float* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_SSPEVD( &jobz, &uplo, &n, ap, w, z, &ldz, work, &lwork, iwork,
                 &liwork, &info );
     }
- inline void spevd( char const jobz, char const uplo, integer_t const n,
- double* ap, double* w, double* z, integer_t const ldz,
- double* work, integer_t const lwork, integer_t* iwork,
- integer_t const liwork, integer_t& info ) {
+ inline void spevd( const char jobz, const char uplo, const integer_t n,
+ double* ap, double* w, double* z, const integer_t ldz,
+ double* work, const integer_t lwork, integer_t* iwork,
+ const integer_t liwork, integer_t& info ) {
         LAPACK_DSPEVD( &jobz, &uplo, &n, ap, w, z, &ldz, work, &lwork, iwork,
                 &liwork, &info );
     }
@@ -60,7 +60,7 @@
     // user-defined workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ,
             typename WORK, typename IWORK >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -88,7 +88,7 @@
 
     // minimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( jobz,
                 n ) );
@@ -99,7 +99,7 @@
 
     // optimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, MatrixAP& ap,
+ static void invoke( const char jobz, const integer_t n, MatrixAP& ap,
             VectorW& w, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         integer_t opt_size_iwork;
@@ -113,7 +113,7 @@
         invoke( jobz, n, ap, w, z, info, workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -124,7 +124,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -136,7 +136,7 @@
 // template function to call spevd
 template< typename MatrixAP, typename VectorW, typename MatrixZ,
         typename Workspace >
-inline integer_t spevd( char const jobz, integer_t const n, MatrixAP& ap,
+inline integer_t spevd( const char jobz, const integer_t n, MatrixAP& ap,
         VectorW& w, MatrixZ& z, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
@@ -146,7 +146,7 @@
 
 // template function to call spevd, default workspace type
 template< typename MatrixAP, typename VectorW, typename MatrixZ >
-inline integer_t spevd( char const jobz, integer_t const n, MatrixAP& ap,
+inline integer_t spevd( const char jobz, const integer_t n, MatrixAP& ap,
         VectorW& w, MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spevx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spevx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spevx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,19 +33,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void spevx( char const jobz, char const range, char const uplo,
- integer_t const n, float* ap, float const vl, float const vu,
- integer_t const il, integer_t const iu, float const abstol,
- integer_t& m, float* w, float* z, integer_t const ldz,
+ inline void spevx( const char jobz, const char range, const char uplo,
+ const integer_t n, float* ap, const float vl, const float vu,
+ const integer_t il, const integer_t iu, const float abstol,
+ integer_t& m, float* w, float* z, const integer_t ldz,
             float* work, integer_t* iwork, integer_t* ifail,
             integer_t& info ) {
         LAPACK_SSPEVX( &jobz, &range, &uplo, &n, ap, &vl, &vu, &il, &iu,
                 &abstol, &m, w, z, &ldz, work, iwork, ifail, &info );
     }
- inline void spevx( char const jobz, char const range, char const uplo,
- integer_t const n, double* ap, double const vl, double const vu,
- integer_t const il, integer_t const iu, double const abstol,
- integer_t& m, double* w, double* z, integer_t const ldz,
+ inline void spevx( const char jobz, const char range, const char uplo,
+ const integer_t n, double* ap, const double vl, const double vu,
+ const integer_t il, const integer_t iu, const double abstol,
+ integer_t& m, double* w, double* z, const integer_t ldz,
             double* work, integer_t* iwork, integer_t* ifail,
             integer_t& info ) {
         LAPACK_DSPEVX( &jobz, &range, &uplo, &n, ap, &vl, &vu, &il, &iu,
@@ -63,9 +63,9 @@
     // user-defined workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ,
             typename VectorIFAIL, typename WORK, typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- MatrixAP& ap, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ MatrixAP& ap, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -95,9 +95,9 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- MatrixAP& ap, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ MatrixAP& ap, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
@@ -109,20 +109,20 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename VectorW, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- MatrixAP& ap, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ MatrixAP& ap, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, optimal_workspace work ) {
         invoke( jobz, range, n, ap, vl, vu, il, iu, abstol, m, w, z, ifail,
                 info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 8*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -131,16 +131,16 @@
 // template function to call spevx
 template< typename MatrixAP, typename VectorW, typename MatrixZ,
         typename VectorIFAIL, typename Workspace >
-inline integer_t spevx( char const jobz, char const range,
- integer_t const n, MatrixAP& ap, typename traits::type_traits<
+inline integer_t spevx( const char jobz, const char range,
+ const integer_t n, MatrixAP& ap, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+ MatrixAP >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixAP >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     spevx_impl< value_type >::invoke( jobz, range, n, ap, vl, vu, il, iu,
@@ -151,16 +151,16 @@
 // template function to call spevx, default workspace type
 template< typename MatrixAP, typename VectorW, typename MatrixZ,
         typename VectorIFAIL >
-inline integer_t spevx( char const jobz, char const range,
- integer_t const n, MatrixAP& ap, typename traits::type_traits<
+inline integer_t spevx( const char jobz, const char range,
+ const integer_t n, MatrixAP& ap, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+ MatrixAP >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixAP >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     spevx_impl< value_type >::invoke( jobz, range, n, ap, vl, vu, il, iu,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,15 +33,15 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void spgv( integer_t const itype, char const jobz, char const uplo,
- integer_t const n, float* ap, float* bp, float* w, float* z,
- integer_t const ldz, float* work, integer_t& info ) {
+ inline void spgv( const integer_t itype, const char jobz, const char uplo,
+ const integer_t n, float* ap, float* bp, float* w, float* z,
+ const integer_t ldz, float* work, integer_t& info ) {
         LAPACK_SSPGV( &itype, &jobz, &uplo, &n, ap, bp, w, z, &ldz, work,
                 &info );
     }
- inline void spgv( integer_t const itype, char const jobz, char const uplo,
- integer_t const n, double* ap, double* bp, double* w, double* z,
- integer_t const ldz, double* work, integer_t& info ) {
+ inline void spgv( const integer_t itype, const char jobz, const char uplo,
+ const integer_t n, double* ap, double* bp, double* w, double* z,
+ const integer_t ldz, double* work, integer_t& info ) {
         LAPACK_DSPGV( &itype, &jobz, &uplo, &n, ap, bp, w, z, &ldz, work,
                 &info );
     }
@@ -57,8 +57,8 @@
     // user-defined workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ, typename WORK >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixAP >::value_type, typename traits::matrix_traits<
@@ -85,8 +85,8 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( itype, jobz, n, ap, bp, w, z, info, workspace( tmp_work ) );
@@ -95,13 +95,13 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, optimal_workspace work ) {
         invoke( itype, jobz, n, ap, bp, w, z, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 };
@@ -110,8 +110,8 @@
 // template function to call spgv
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ, typename Workspace >
-inline integer_t spgv( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w, MatrixZ& z,
+inline integer_t spgv( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w, MatrixZ& z,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
@@ -123,8 +123,8 @@
 // template function to call spgv, default workspace type
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ >
-inline integer_t spgv( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+inline integer_t spgv( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
         MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgvd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgvd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgvd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,18 +34,18 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void spgvd( integer_t const itype, char const jobz,
- char const uplo, integer_t const n, float* ap, float* bp,
- float* w, float* z, integer_t const ldz, float* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void spgvd( const integer_t itype, const char jobz,
+ const char uplo, const integer_t n, float* ap, float* bp,
+ float* w, float* z, const integer_t ldz, float* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_SSPGVD( &itype, &jobz, &uplo, &n, ap, bp, w, z, &ldz, work,
                 &lwork, iwork, &liwork, &info );
     }
- inline void spgvd( integer_t const itype, char const jobz,
- char const uplo, integer_t const n, double* ap, double* bp,
- double* w, double* z, integer_t const ldz, double* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void spgvd( const integer_t itype, const char jobz,
+ const char uplo, const integer_t n, double* ap, double* bp,
+ double* w, double* z, const integer_t ldz, double* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_DSPGVD( &itype, &jobz, &uplo, &n, ap, bp, w, z, &ldz, work,
                 &lwork, iwork, &liwork, &info );
@@ -62,8 +62,8 @@
     // user-defined workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ, typename WORK, typename IWORK >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -96,8 +96,8 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( jobz,
                 n ) );
@@ -110,8 +110,8 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
             MatrixZ& z, integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         integer_t opt_size_iwork;
@@ -127,7 +127,7 @@
                 tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -138,7 +138,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -150,8 +150,8 @@
 // template function to call spgvd
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ, typename Workspace >
-inline integer_t spgvd( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w, MatrixZ& z,
+inline integer_t spgvd( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w, MatrixZ& z,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
@@ -163,8 +163,8 @@
 // template function to call spgvd, default workspace type
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ >
-inline integer_t spgvd( integer_t const itype, char const jobz,
- integer_t const n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
+inline integer_t spgvd( const integer_t itype, const char jobz,
+ const integer_t n, MatrixAP& ap, MatrixBP& bp, VectorW& w,
         MatrixZ& z ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spgvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,20 +33,20 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void spgvx( integer_t const itype, char const jobz,
- char const range, char const uplo, integer_t const n, float* ap,
- float* bp, float const vl, float const vu, integer_t const il,
- integer_t const iu, float const abstol, integer_t& m, float* w,
- float* z, integer_t const ldz, float* work, integer_t* iwork,
+ inline void spgvx( const integer_t itype, const char jobz,
+ const char range, const char uplo, const integer_t n, float* ap,
+ float* bp, const float vl, const float vu, const integer_t il,
+ const integer_t iu, const float abstol, integer_t& m, float* w,
+ float* z, const integer_t ldz, float* work, integer_t* iwork,
             integer_t* ifail, integer_t& info ) {
         LAPACK_SSPGVX( &itype, &jobz, &range, &uplo, &n, ap, bp, &vl, &vu,
                 &il, &iu, &abstol, &m, w, z, &ldz, work, iwork, ifail, &info );
     }
- inline void spgvx( integer_t const itype, char const jobz,
- char const range, char const uplo, integer_t const n, double* ap,
- double* bp, double const vl, double const vu, integer_t const il,
- integer_t const iu, double const abstol, integer_t& m, double* w,
- double* z, integer_t const ldz, double* work, integer_t* iwork,
+ inline void spgvx( const integer_t itype, const char jobz,
+ const char range, const char uplo, const integer_t n, double* ap,
+ double* bp, const double vl, const double vu, const integer_t il,
+ const integer_t iu, const double abstol, integer_t& m, double* w,
+ double* z, const integer_t ldz, double* work, integer_t* iwork,
             integer_t* ifail, integer_t& info ) {
         LAPACK_DSPGVX( &itype, &jobz, &range, &uplo, &n, ap, bp, &vl, &vu,
                 &il, &iu, &abstol, &m, w, z, &ldz, work, iwork, ifail, &info );
@@ -64,10 +64,10 @@
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ, typename VectorIFAIL, typename WORK,
             typename IWORK >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixAP& ap, MatrixBP& bp,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixAP& ap, MatrixBP& bp,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -101,10 +101,10 @@
     // minimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixAP& ap, MatrixBP& bp,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixAP& ap, MatrixBP& bp,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
@@ -116,21 +116,21 @@
     // optimal workspace specialization
     template< typename MatrixAP, typename MatrixBP, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixAP& ap, MatrixBP& bp,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixAP& ap, MatrixBP& bp,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             optimal_workspace work ) {
         invoke( itype, jobz, range, n, ap, bp, vl, vu, il, iu, abstol, m, w,
                 z, ifail, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 8*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -139,16 +139,16 @@
 // template function to call spgvx
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ, typename VectorIFAIL, typename Workspace >
-inline integer_t spgvx( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixAP& ap, MatrixBP& bp,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t spgvx( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixAP& ap, MatrixBP& bp,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixAP >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     spgvx_impl< value_type >::invoke( itype, jobz, range, n, ap, bp, vl,
@@ -159,16 +159,16 @@
 // template function to call spgvx, default workspace type
 template< typename MatrixAP, typename MatrixBP, typename VectorW,
         typename MatrixZ, typename VectorIFAIL >
-inline integer_t spgvx( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixAP& ap, MatrixBP& bp,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t spgvx( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixAP& ap, MatrixBP& bp,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixAP >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixAP >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixAP >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixAP >::value_type value_type;
     integer_t info(0);
     spgvx_impl< value_type >::invoke( itype, jobz, range, n, ap, bp, vl,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sposv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sposv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sposv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,10 +33,11 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sposv( char const uplo, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* b,
- integer_t const ldb, double* x, integer_t const ldx, double* work,
- float* swork, integer_t& iter, integer_t& info ) {
+ inline void sposv( const char uplo, const integer_t n,
+ const integer_t nrhs, double* a, const integer_t lda,
+ const double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double* work, float* swork, integer_t& iter,
+ integer_t& info ) {
         LAPACK_DSPOSV( &uplo, &n, &nrhs, a, &lda, b, &ldb, x, &ldx, work,
                 swork, &iter, &info );
     }
@@ -52,8 +53,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixX,
             typename WORK, typename SWORK >
- static void invoke( MatrixA& a, MatrixB& b, MatrixX& x, integer_t& iter,
- integer_t& info, detail::workspace2< WORK, SWORK > work ) {
+ static void invoke( MatrixA& a, const MatrixB& b, MatrixX& x,
+ integer_t& iter, integer_t& info, detail::workspace2< WORK,
+ SWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
                 MatrixB >::value_type >::value) );
@@ -86,8 +88,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixX >
- static void invoke( MatrixA& a, MatrixB& b, MatrixX& x, integer_t& iter,
- integer_t& info, minimal_workspace work ) {
+ static void invoke( MatrixA& a, const MatrixB& b, MatrixX& x,
+ integer_t& iter, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 $CALL_MIN_SIZE ) );
         traits::detail::array< real_type > tmp_swork( min_size_swork(
@@ -98,8 +100,8 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename MatrixX >
- static void invoke( MatrixA& a, MatrixB& b, MatrixX& x, integer_t& iter,
- integer_t& info, optimal_workspace work ) {
+ static void invoke( MatrixA& a, const MatrixB& b, MatrixX& x,
+ integer_t& iter, integer_t& info, optimal_workspace work ) {
         invoke( a, b, x, iter, info, minimal_workspace() );
     }
 
@@ -107,8 +109,8 @@
         $MIN_SIZE
     }
 
- static integer_t min_size_swork( integer_t const n,
- integer_t const nrhs ) {
+ static integer_t min_size_swork( const integer_t n,
+ const integer_t nrhs ) {
         return n*(n+nrhs);
     }
 };
@@ -117,7 +119,7 @@
 // template function to call sposv
 template< typename MatrixA, typename MatrixB, typename MatrixX,
         typename Workspace >
-inline integer_t sposv( MatrixA& a, MatrixB& b, MatrixX& x,
+inline integer_t sposv( MatrixA& a, const MatrixB& b, MatrixX& x,
         integer_t& iter, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -127,7 +129,7 @@
 
 // template function to call sposv, default workspace type
 template< typename MatrixA, typename MatrixB, typename MatrixX >
-inline integer_t sposv( MatrixA& a, MatrixB& b, MatrixX& x,
+inline integer_t sposv( MatrixA& a, const MatrixB& b, MatrixX& x,
         integer_t& iter ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spsv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spsv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spsv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -31,25 +31,25 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void spsv( char const uplo, integer_t const n,
- integer_t const nrhs, float* ap, integer_t* ipiv, float* b,
- integer_t const ldb, integer_t& info ) {
+ inline void spsv( const char uplo, const integer_t n,
+ const integer_t nrhs, float* ap, integer_t* ipiv, float* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_SSPSV( &uplo, &n, &nrhs, ap, ipiv, b, &ldb, &info );
     }
- inline void spsv( char const uplo, integer_t const n,
- integer_t const nrhs, double* ap, integer_t* ipiv, double* b,
- integer_t const ldb, integer_t& info ) {
+ inline void spsv( const char uplo, const integer_t n,
+ const integer_t nrhs, double* ap, integer_t* ipiv, double* b,
+ const integer_t ldb, integer_t& info ) {
         LAPACK_DSPSV( &uplo, &n, &nrhs, ap, ipiv, b, &ldb, &info );
     }
- inline void spsv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, integer_t& info ) {
+ inline void spsv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_f* ap, integer_t* ipiv,
+ traits::complex_f* b, const integer_t ldb, integer_t& info ) {
         LAPACK_CSPSV( &uplo, &n, &nrhs, traits::complex_ptr(ap), ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }
- inline void spsv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, integer_t& info ) {
+ inline void spsv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_d* ap, integer_t* ipiv,
+ traits::complex_d* b, const integer_t ldb, integer_t& info ) {
         LAPACK_ZSPSV( &uplo, &n, &nrhs, traits::complex_ptr(ap), ipiv,
                 traits::complex_ptr(b), &ldb, &info );
     }

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spsvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spsvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/spsvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -36,39 +36,41 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void spsvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, float* ap, float* afp, integer_t* ipiv,
- float* b, integer_t const ldb, float* x, integer_t const ldx,
- float& rcond, float* ferr, float* berr, float* work,
- integer_t* iwork, integer_t& info ) {
+ inline void spsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const float* ap, float* afp,
+ integer_t* ipiv, const float* b, const integer_t ldb, float* x,
+ const integer_t ldx, float& rcond, float* ferr, float* berr,
+ float* work, integer_t* iwork, integer_t& info ) {
         LAPACK_SSPSVX( &fact, &uplo, &n, &nrhs, ap, afp, ipiv, b, &ldb, x,
                 &ldx, &rcond, ferr, berr, work, iwork, &info );
     }
- inline void spsvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, double* ap, double* afp, integer_t* ipiv,
- double* b, integer_t const ldb, double* x, integer_t const ldx,
- double& rcond, double* ferr, double* berr, double* work,
- integer_t* iwork, integer_t& info ) {
+ inline void spsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const double* ap, double* afp,
+ integer_t* ipiv, const double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double& rcond, double* ferr, double* berr,
+ double* work, integer_t* iwork, integer_t& info ) {
         LAPACK_DSPSVX( &fact, &uplo, &n, &nrhs, ap, afp, ipiv, b, &ldb, x,
                 &ldx, &rcond, ferr, berr, work, iwork, &info );
     }
- inline void spsvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* ap,
- traits::complex_f* afp, integer_t* ipiv, traits::complex_f* b,
- integer_t const ldb, traits::complex_f* x, integer_t const ldx,
- float& rcond, float* ferr, float* berr, traits::complex_f* work,
- float* rwork, integer_t& info ) {
+ inline void spsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* ap,
+ traits::complex_f* afp, integer_t* ipiv,
+ const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float& rcond,
+ float* ferr, float* berr, traits::complex_f* work, float* rwork,
+ integer_t& info ) {
         LAPACK_CSPSVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), ipiv, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
                 traits::complex_ptr(work), rwork, &info );
     }
- inline void spsvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* ap,
- traits::complex_d* afp, integer_t* ipiv, traits::complex_d* b,
- integer_t const ldb, traits::complex_d* x, integer_t const ldx,
- double& rcond, double* ferr, double* berr,
- traits::complex_d* work, double* rwork, integer_t& info ) {
+ inline void spsvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* ap,
+ traits::complex_d* afp, integer_t* ipiv,
+ const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double& rcond,
+ double* ferr, double* berr, traits::complex_d* work,
+ double* rwork, integer_t& info ) {
         LAPACK_ZSPSVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(ap),
                 traits::complex_ptr(afp), ipiv, traits::complex_ptr(b), &ldb,
                 traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
@@ -91,8 +93,8 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename IWORK >
- static void invoke( char const fact, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixAP& ap, MatrixAFP& afp,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -140,8 +142,8 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixAP& ap, MatrixAFP& afp,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
@@ -156,19 +158,19 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixAP& ap, MatrixAFP& afp,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
         invoke( fact, ap, afp, ipiv, b, x, rcond, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 3*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -184,8 +186,8 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( char const fact, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixAP& ap, MatrixAFP& afp,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -230,8 +232,8 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixAP& ap, MatrixAFP& afp,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -246,19 +248,19 @@
     template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixAP& ap, MatrixAFP& afp,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
         invoke( fact, ap, afp, ipiv, b, x, rcond, ferr, berr, info,
                 minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 2*n;
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -268,8 +270,8 @@
 template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t spsvx( char const fact, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
+inline integer_t spsvx( const char fact, const MatrixAP& ap,
+ MatrixAFP& afp, VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixAP >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr, Workspace work ) {
@@ -284,8 +286,8 @@
 template< typename MatrixAP, typename MatrixAFP, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t spsvx( char const fact, MatrixAP& ap, MatrixAFP& afp,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
+inline integer_t spsvx( const char fact, const MatrixAP& ap,
+ MatrixAFP& afp, VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixAP >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr ) {

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stev.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stev.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stev.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,12 +33,12 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void stev( char const jobz, integer_t const n, float* d, float* e,
- float* z, integer_t const ldz, float* work, integer_t& info ) {
+ inline void stev( const char jobz, const integer_t n, float* d, float* e,
+ float* z, const integer_t ldz, float* work, integer_t& info ) {
         LAPACK_SSTEV( &jobz, &n, d, e, z, &ldz, work, &info );
     }
- inline void stev( char const jobz, integer_t const n, double* d,
- double* e, double* z, integer_t const ldz, double* work,
+ inline void stev( const char jobz, const integer_t n, double* d,
+ double* e, double* z, const integer_t ldz, double* work,
             integer_t& info ) {
         LAPACK_DSTEV( &jobz, &n, d, e, z, &ldz, work, &info );
     }
@@ -54,7 +54,7 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ,
             typename WORK >
- static void invoke( char const jobz, integer_t const n, VectorD& d,
+ static void invoke( const char jobz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, detail::workspace1<
             WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -76,7 +76,7 @@
 
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, VectorD& d,
+ static void invoke( const char jobz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( jobz, n, d, e, z, info, workspace( tmp_work ) );
@@ -84,12 +84,12 @@
 
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, VectorD& d,
+ static void invoke( const char jobz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         invoke( jobz, n, d, e, z, info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n-2 );
     }
 };
@@ -98,7 +98,7 @@
 // template function to call stev
 template< typename VectorD, typename VectorE, typename MatrixZ,
         typename Workspace >
-inline integer_t stev( char const jobz, integer_t const n, VectorD& d,
+inline integer_t stev( const char jobz, const integer_t n, VectorD& d,
         VectorE& e, MatrixZ& z, Workspace work ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);
@@ -108,7 +108,7 @@
 
 // template function to call stev, default workspace type
 template< typename VectorD, typename VectorE, typename MatrixZ >
-inline integer_t stev( char const jobz, integer_t const n, VectorD& d,
+inline integer_t stev( const char jobz, const integer_t n, VectorD& d,
         VectorE& e, MatrixZ& z ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,15 +34,15 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void stevd( char const jobz, integer_t const n, float* d, float* e,
- float* z, integer_t const ldz, float* work, integer_t const lwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ inline void stevd( const char jobz, const integer_t n, float* d, float* e,
+ float* z, const integer_t ldz, float* work, const integer_t lwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_SSTEVD( &jobz, &n, d, e, z, &ldz, work, &lwork, iwork, &liwork,
                 &info );
     }
- inline void stevd( char const jobz, integer_t const n, double* d,
- double* e, double* z, integer_t const ldz, double* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void stevd( const char jobz, const integer_t n, double* d,
+ double* e, double* z, const integer_t ldz, double* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_DSTEVD( &jobz, &n, d, e, z, &ldz, work, &lwork, iwork, &liwork,
                 &info );
@@ -59,7 +59,7 @@
     // user-defined workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ,
             typename WORK, typename IWORK >
- static void invoke( char const jobz, integer_t const n, VectorD& d,
+ static void invoke( const char jobz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, detail::workspace2< WORK,
             IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -86,7 +86,7 @@
 
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, VectorD& d,
+ static void invoke( const char jobz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( jobz,
                 n ) );
@@ -97,7 +97,7 @@
 
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename MatrixZ >
- static void invoke( char const jobz, integer_t const n, VectorD& d,
+ static void invoke( const char jobz, const integer_t n, VectorD& d,
             VectorE& e, MatrixZ& z, integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         integer_t opt_size_iwork;
@@ -111,14 +111,14 @@
         invoke( jobz, n, d, e, z, info, workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
             return 1 + 4*n + n*n;
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -130,7 +130,7 @@
 // template function to call stevd
 template< typename VectorD, typename VectorE, typename MatrixZ,
         typename Workspace >
-inline integer_t stevd( char const jobz, integer_t const n, VectorD& d,
+inline integer_t stevd( const char jobz, const integer_t n, VectorD& d,
         VectorE& e, MatrixZ& z, Workspace work ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);
@@ -140,7 +140,7 @@
 
 // template function to call stevd, default workspace type
 template< typename VectorD, typename VectorE, typename MatrixZ >
-inline integer_t stevd( char const jobz, integer_t const n, VectorD& d,
+inline integer_t stevd( const char jobz, const integer_t n, VectorD& d,
         VectorE& e, MatrixZ& z ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,21 +34,21 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void stevr( char const jobz, char const range, integer_t const n,
- float* d, float* e, float const vl, float const vu,
- integer_t const il, integer_t const iu, float const abstol,
- integer_t& m, float* w, float* z, integer_t const ldz,
- integer_t* isuppz, float* work, integer_t const lwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ inline void stevr( const char jobz, const char range, const integer_t n,
+ float* d, float* e, const float vl, const float vu,
+ const integer_t il, const integer_t iu, const float abstol,
+ integer_t& m, float* w, float* z, const integer_t ldz,
+ integer_t* isuppz, float* work, const integer_t lwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_SSTEVR( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &abstol,
                 &m, w, z, &ldz, isuppz, work, &lwork, iwork, &liwork, &info );
     }
- inline void stevr( char const jobz, char const range, integer_t const n,
- double* d, double* e, double const vl, double const vu,
- integer_t const il, integer_t const iu, double const abstol,
- integer_t& m, double* w, double* z, integer_t const ldz,
- integer_t* isuppz, double* work, integer_t const lwork,
- integer_t* iwork, integer_t const liwork, integer_t& info ) {
+ inline void stevr( const char jobz, const char range, const integer_t n,
+ double* d, double* e, const double vl, const double vu,
+ const integer_t il, const integer_t iu, const double abstol,
+ integer_t& m, double* w, double* z, const integer_t ldz,
+ integer_t* isuppz, double* work, const integer_t lwork,
+ integer_t* iwork, const integer_t liwork, integer_t& info ) {
         LAPACK_DSTEVR( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &abstol,
                 &m, w, z, &ldz, isuppz, work, &lwork, iwork, &liwork, &info );
     }
@@ -65,9 +65,9 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ, typename WORK,
             typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -103,9 +103,9 @@
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
@@ -117,9 +117,9 @@
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
@@ -136,11 +136,11 @@
                 info, workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 20*n );
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return std::max( 1, 10*n );
     }
 };
@@ -149,16 +149,16 @@
 // template function to call stevr
 template< typename VectorD, typename VectorE, typename VectorW,
         typename MatrixZ, typename VectorISUPPZ, typename Workspace >
-inline integer_t stevr( char const jobz, char const range,
- integer_t const n, VectorD& d, VectorE& e,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t stevr( const char jobz, const char range,
+ const integer_t n, VectorD& d, VectorE& e,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::vector_traits<
- VectorD >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz, Workspace work ) {
+ VectorD >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorISUPPZ& isuppz, Workspace work ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);
     stevr_impl< value_type >::invoke( jobz, range, n, d, e, vl, vu, il,
@@ -169,16 +169,16 @@
 // template function to call stevr, default workspace type
 template< typename VectorD, typename VectorE, typename VectorW,
         typename MatrixZ, typename VectorISUPPZ >
-inline integer_t stevr( char const jobz, char const range,
- integer_t const n, VectorD& d, VectorE& e,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t stevr( const char jobz, const char range,
+ const integer_t n, VectorD& d, VectorE& e,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::vector_traits<
- VectorD >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz ) {
+ VectorD >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorISUPPZ& isuppz ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);
     stevr_impl< value_type >::invoke( jobz, range, n, d, e, vl, vu, il,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/stevx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -33,19 +33,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void stevx( char const jobz, char const range, integer_t const n,
- float* d, float* e, float const vl, float const vu,
- integer_t const il, integer_t const iu, float const abstol,
- integer_t& m, float* w, float* z, integer_t const ldz,
+ inline void stevx( const char jobz, const char range, const integer_t n,
+ float* d, float* e, const float vl, const float vu,
+ const integer_t il, const integer_t iu, const float abstol,
+ integer_t& m, float* w, float* z, const integer_t ldz,
             float* work, integer_t* iwork, integer_t* ifail,
             integer_t& info ) {
         LAPACK_SSTEVX( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &abstol,
                 &m, w, z, &ldz, work, iwork, ifail, &info );
     }
- inline void stevx( char const jobz, char const range, integer_t const n,
- double* d, double* e, double const vl, double const vu,
- integer_t const il, integer_t const iu, double const abstol,
- integer_t& m, double* w, double* z, integer_t const ldz,
+ inline void stevx( const char jobz, const char range, const integer_t n,
+ double* d, double* e, const double vl, const double vu,
+ const integer_t il, const integer_t iu, const double abstol,
+ integer_t& m, double* w, double* z, const integer_t ldz,
             double* work, integer_t* iwork, integer_t* ifail,
             integer_t& info ) {
         LAPACK_DSTEVX( &jobz, &range, &n, d, e, &vl, &vu, &il, &iu, &abstol,
@@ -64,9 +64,9 @@
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorIFAIL, typename WORK,
             typename IWORK >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -100,9 +100,9 @@
     // minimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
@@ -114,20 +114,20 @@
     // optimal workspace specialization
     template< typename VectorD, typename VectorE, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( char const jobz, char const range, integer_t const n,
- VectorD& d, VectorE& e, real_type const vl, real_type const vu,
- integer_t const il, integer_t const iu, real_type const abstol,
+ static void invoke( const char jobz, const char range, const integer_t n,
+ VectorD& d, VectorE& e, const real_type vl, const real_type vu,
+ const integer_t il, const integer_t iu, const real_type abstol,
             integer_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail,
             integer_t& info, optimal_workspace work ) {
         invoke( jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ifail,
                 info, minimal_workspace() );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return 5*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -136,16 +136,16 @@
 // template function to call stevx
 template< typename VectorD, typename VectorE, typename VectorW,
         typename MatrixZ, typename VectorIFAIL, typename Workspace >
-inline integer_t stevx( char const jobz, char const range,
- integer_t const n, VectorD& d, VectorE& e,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t stevx( const char jobz, const char range,
+ const integer_t n, VectorD& d, VectorE& e,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::vector_traits<
- VectorD >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ VectorD >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);
     stevx_impl< value_type >::invoke( jobz, range, n, d, e, vl, vu, il,
@@ -156,16 +156,16 @@
 // template function to call stevx, default workspace type
 template< typename VectorD, typename VectorE, typename VectorW,
         typename MatrixZ, typename VectorIFAIL >
-inline integer_t stevx( char const jobz, char const range,
- integer_t const n, VectorD& d, VectorE& e,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::vector_traits<
- VectorD >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t stevx( const char jobz, const char range,
+ const integer_t n, VectorD& d, VectorE& e,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::vector_traits<
+ VectorD >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::vector_traits<
- VectorD >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ VectorD >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::vector_traits< VectorD >::value_type value_type;
     integer_t info(0);
     stevx_impl< value_type >::invoke( jobz, range, n, d, e, vl, vu, il,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syev.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syev.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syev.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,14 +34,14 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void syev( char const jobz, char const uplo, integer_t const n,
- float* a, integer_t const lda, float* w, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void syev( const char jobz, const char uplo, const integer_t n,
+ float* a, const integer_t lda, float* w, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SSYEV( &jobz, &uplo, &n, a, &lda, w, work, &lwork, &info );
     }
- inline void syev( char const jobz, char const uplo, integer_t const n,
- double* a, integer_t const lda, double* w, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void syev( const char jobz, const char uplo, const integer_t n,
+ double* a, const integer_t lda, double* w, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DSYEV( &jobz, &uplo, &n, a, &lda, w, work, &lwork, &info );
     }
 }
@@ -55,7 +55,7 @@
 
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorW, typename WORK >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
@@ -77,7 +77,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorW >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
                 traits::matrix_num_columns(a) ) );
@@ -86,7 +86,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorW >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::syev( jobz, traits::matrix_uplo_tag(a),
@@ -98,7 +98,7 @@
         invoke( jobz, a, w, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 3*n-1 );
     }
 };
@@ -106,7 +106,7 @@
 
 // template function to call syev
 template< typename MatrixA, typename VectorW, typename Workspace >
-inline integer_t syev( char const jobz, MatrixA& a, VectorW& w,
+inline integer_t syev( const char jobz, MatrixA& a, VectorW& w,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -116,7 +116,7 @@
 
 // template function to call syev, default workspace type
 template< typename MatrixA, typename VectorW >
-inline integer_t syev( char const jobz, MatrixA& a, VectorW& w ) {
+inline integer_t syev( const char jobz, MatrixA& a, VectorW& w ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     syev_impl< value_type >::invoke( jobz, a, w, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,16 +34,16 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void syevd( char const jobz, char const uplo, integer_t const n,
- float* a, integer_t const lda, float* w, float* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void syevd( const char jobz, const char uplo, const integer_t n,
+ float* a, const integer_t lda, float* w, float* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_SSYEVD( &jobz, &uplo, &n, a, &lda, w, work, &lwork, iwork,
                 &liwork, &info );
     }
- inline void syevd( char const jobz, char const uplo, integer_t const n,
- double* a, integer_t const lda, double* w, double* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void syevd( const char jobz, const char uplo, const integer_t n,
+ double* a, const integer_t lda, double* w, double* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_DSYEVD( &jobz, &uplo, &n, a, &lda, w, work, &lwork, iwork,
                 &liwork, &info );
@@ -60,7 +60,7 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorW, typename WORK,
             typename IWORK >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::vector_traits<
@@ -86,7 +86,7 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename VectorW >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( jobz,
                 traits::matrix_num_columns(a) ) );
@@ -97,7 +97,7 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename VectorW >
- static void invoke( char const jobz, MatrixA& a, VectorW& w,
+ static void invoke( const char jobz, MatrixA& a, VectorW& w,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         integer_t opt_size_iwork;
@@ -111,7 +111,7 @@
         invoke( jobz, a, w, info, workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -122,7 +122,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -133,7 +133,7 @@
 
 // template function to call syevd
 template< typename MatrixA, typename VectorW, typename Workspace >
-inline integer_t syevd( char const jobz, MatrixA& a, VectorW& w,
+inline integer_t syevd( const char jobz, MatrixA& a, VectorW& w,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -143,7 +143,7 @@
 
 // template function to call syevd, default workspace type
 template< typename MatrixA, typename VectorW >
-inline integer_t syevd( char const jobz, MatrixA& a, VectorW& w ) {
+inline integer_t syevd( const char jobz, MatrixA& a, VectorW& w ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     syevd_impl< value_type >::invoke( jobz, a, w, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevr.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevr.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevr.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,23 +34,23 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void syevr( char const jobz, char const range, char const uplo,
- integer_t const n, float* a, integer_t const lda, float const vl,
- float const vu, integer_t const il, integer_t const iu,
- float const abstol, integer_t& m, float* w, float* z,
- integer_t const ldz, integer_t* isuppz, float* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void syevr( const char jobz, const char range, const char uplo,
+ const integer_t n, float* a, const integer_t lda, const float vl,
+ const float vu, const integer_t il, const integer_t iu,
+ const float abstol, integer_t& m, float* w, float* z,
+ const integer_t ldz, integer_t* isuppz, float* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_SSYEVR( &jobz, &range, &uplo, &n, a, &lda, &vl, &vu, &il, &iu,
                 &abstol, &m, w, z, &ldz, isuppz, work, &lwork, iwork, &liwork,
                 &info );
     }
- inline void syevr( char const jobz, char const range, char const uplo,
- integer_t const n, double* a, integer_t const lda,
- double const vl, double const vu, integer_t const il,
- integer_t const iu, double const abstol, integer_t& m, double* w,
- double* z, integer_t const ldz, integer_t* isuppz, double* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void syevr( const char jobz, const char range, const char uplo,
+ const integer_t n, double* a, const integer_t lda,
+ const double vl, const double vu, const integer_t il,
+ const integer_t iu, const double abstol, integer_t& m, double* w,
+ double* z, const integer_t ldz, integer_t* isuppz, double* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_DSYEVR( &jobz, &range, &uplo, &n, a, &lda, &vl, &vu, &il, &iu,
                 &abstol, &m, w, z, &ldz, isuppz, work, &lwork, iwork, &liwork,
@@ -68,9 +68,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorISUPPZ, typename WORK, typename IWORK >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -107,9 +107,9 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
@@ -123,9 +123,9 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorISUPPZ >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
@@ -143,11 +143,11 @@
                 workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 26*n );
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return std::max( 1, 10*n );
     }
 };
@@ -156,15 +156,15 @@
 // template function to call syevr
 template< typename MatrixA, typename VectorW, typename MatrixZ,
         typename VectorISUPPZ, typename Workspace >
-inline integer_t syevr( char const jobz, char const range, MatrixA& a,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t syevr( const char jobz, const char range, MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz, Workspace work ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorISUPPZ& isuppz, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     syevr_impl< value_type >::invoke( jobz, range, a, vl, vu, il, iu,
@@ -175,15 +175,15 @@
 // template function to call syevr, default workspace type
 template< typename MatrixA, typename VectorW, typename MatrixZ,
         typename VectorISUPPZ >
-inline integer_t syevr( char const jobz, char const range, MatrixA& a,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t syevr( const char jobz, const char range, MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorISUPPZ& isuppz ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorISUPPZ& isuppz ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     syevr_impl< value_type >::invoke( jobz, range, a, vl, vu, il, iu,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/syevx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,21 +34,21 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void syevx( char const jobz, char const range, char const uplo,
- integer_t const n, float* a, integer_t const lda, float const vl,
- float const vu, integer_t const il, integer_t const iu,
- float const abstol, integer_t& m, float* w, float* z,
- integer_t const ldz, float* work, integer_t const lwork,
+ inline void syevx( const char jobz, const char range, const char uplo,
+ const integer_t n, float* a, const integer_t lda, const float vl,
+ const float vu, const integer_t il, const integer_t iu,
+ const float abstol, integer_t& m, float* w, float* z,
+ const integer_t ldz, float* work, const integer_t lwork,
             integer_t* iwork, integer_t* ifail, integer_t& info ) {
         LAPACK_SSYEVX( &jobz, &range, &uplo, &n, a, &lda, &vl, &vu, &il, &iu,
                 &abstol, &m, w, z, &ldz, work, &lwork, iwork, ifail, &info );
     }
- inline void syevx( char const jobz, char const range, char const uplo,
- integer_t const n, double* a, integer_t const lda,
- double const vl, double const vu, integer_t const il,
- integer_t const iu, double const abstol, integer_t& m, double* w,
- double* z, integer_t const ldz, double* work,
- integer_t const lwork, integer_t* iwork, integer_t* ifail,
+ inline void syevx( const char jobz, const char range, const char uplo,
+ const integer_t n, double* a, const integer_t lda,
+ const double vl, const double vu, const integer_t il,
+ const integer_t iu, const double abstol, integer_t& m, double* w,
+ double* z, const integer_t ldz, double* work,
+ const integer_t lwork, integer_t* iwork, integer_t* ifail,
             integer_t& info ) {
         LAPACK_DSYEVX( &jobz, &range, &uplo, &n, a, &lda, &vl, &vu, &il, &iu,
                 &abstol, &m, w, z, &ldz, work, &lwork, iwork, ifail, &info );
@@ -65,9 +65,9 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorIFAIL, typename WORK, typename IWORK >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -103,9 +103,9 @@
     // minimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
@@ -119,9 +119,9 @@
     // optimal workspace specialization
     template< typename MatrixA, typename VectorW, typename MatrixZ,
             typename VectorIFAIL >
- static void invoke( char const jobz, char const range, MatrixA& a,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const char jobz, const char range, MatrixA& a,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
@@ -140,14 +140,14 @@
                 workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         if ( n < 2 )
             return 1;
         else
             return 8*n;
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -156,15 +156,15 @@
 // template function to call syevx
 template< typename MatrixA, typename VectorW, typename MatrixZ,
         typename VectorIFAIL, typename Workspace >
-inline integer_t syevx( char const jobz, char const range, MatrixA& a,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t syevx( const char jobz, const char range, MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     syevx_impl< value_type >::invoke( jobz, range, a, vl, vu, il, iu,
@@ -175,15 +175,15 @@
 // template function to call syevx, default workspace type
 template< typename MatrixA, typename VectorW, typename MatrixZ,
         typename VectorIFAIL >
-inline integer_t syevx( char const jobz, char const range, MatrixA& a,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t syevx( const char jobz, const char range, MatrixA& a,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     syevx_impl< value_type >::invoke( jobz, range, a, vl, vu, il, iu,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,17 +34,17 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sygv( integer_t const itype, char const jobz, char const uplo,
- integer_t const n, float* a, integer_t const lda, float* b,
- integer_t const ldb, float* w, float* work, integer_t const lwork,
+ inline void sygv( const integer_t itype, const char jobz, const char uplo,
+ const integer_t n, float* a, const integer_t lda, float* b,
+ const integer_t ldb, float* w, float* work, const integer_t lwork,
             integer_t& info ) {
         LAPACK_SSYGV( &itype, &jobz, &uplo, &n, a, &lda, b, &ldb, w, work,
                 &lwork, &info );
     }
- inline void sygv( integer_t const itype, char const jobz, char const uplo,
- integer_t const n, double* a, integer_t const lda, double* b,
- integer_t const ldb, double* w, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void sygv( const integer_t itype, const char jobz, const char uplo,
+ const integer_t n, double* a, const integer_t lda, double* b,
+ const integer_t ldb, double* w, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DSYGV( &itype, &jobz, &uplo, &n, a, &lda, b, &ldb, w, work,
                 &lwork, &info );
     }
@@ -60,8 +60,8 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW,
             typename WORK >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, detail::workspace1< WORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -87,8 +87,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
         invoke( itype, jobz, n, a, b, w, info, workspace( tmp_work ) );
@@ -96,8 +96,8 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         detail::sygv( itype, jobz, traits::matrix_uplo_tag(a), n,
@@ -109,7 +109,7 @@
         invoke( itype, jobz, n, a, b, w, info, workspace( tmp_work ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 3*n-1 );
     }
 };
@@ -118,8 +118,8 @@
 // template function to call sygv
 template< typename MatrixA, typename MatrixB, typename VectorW,
         typename Workspace >
-inline integer_t sygv( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+inline integer_t sygv( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -130,8 +130,8 @@
 
 // template function to call sygv, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorW >
-inline integer_t sygv( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w ) {
+inline integer_t sygv( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     sygv_impl< value_type >::invoke( itype, jobz, n, a, b, w, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygvd.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygvd.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygvd.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,19 +34,19 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sygvd( integer_t const itype, char const jobz,
- char const uplo, integer_t const n, float* a, integer_t const lda,
- float* b, integer_t const ldb, float* w, float* work,
- integer_t const lwork, integer_t* iwork, integer_t const liwork,
+ inline void sygvd( const integer_t itype, const char jobz,
+ const char uplo, const integer_t n, float* a, const integer_t lda,
+ float* b, const integer_t ldb, float* w, float* work,
+ const integer_t lwork, integer_t* iwork, const integer_t liwork,
             integer_t& info ) {
         LAPACK_SSYGVD( &itype, &jobz, &uplo, &n, a, &lda, b, &ldb, w, work,
                 &lwork, iwork, &liwork, &info );
     }
- inline void sygvd( integer_t const itype, char const jobz,
- char const uplo, integer_t const n, double* a,
- integer_t const lda, double* b, integer_t const ldb, double* w,
- double* work, integer_t const lwork, integer_t* iwork,
- integer_t const liwork, integer_t& info ) {
+ inline void sygvd( const integer_t itype, const char jobz,
+ const char uplo, const integer_t n, double* a,
+ const integer_t lda, double* b, const integer_t ldb, double* w,
+ double* work, const integer_t lwork, integer_t* iwork,
+ const integer_t liwork, integer_t& info ) {
         LAPACK_DSYGVD( &itype, &jobz, &uplo, &n, a, &lda, b, &ldb, w, work,
                 &lwork, iwork, &liwork, &info );
     }
@@ -62,8 +62,8 @@
     // user-defined workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW,
             typename WORK, typename IWORK >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
                 MatrixA >::value_type, typename traits::matrix_traits<
@@ -93,8 +93,8 @@
 
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( jobz,
                 n ) );
@@ -106,8 +106,8 @@
 
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW >
- static void invoke( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+ static void invoke( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
             integer_t& info, optimal_workspace work ) {
         real_type opt_size_work;
         integer_t opt_size_iwork;
@@ -123,7 +123,7 @@
                 tmp_iwork ) );
     }
 
- static integer_t min_size_work( char const jobz, integer_t const n ) {
+ static integer_t min_size_work( const char jobz, const integer_t n ) {
         if ( n < 2 )
             return 1;
         else {
@@ -134,7 +134,7 @@
         }
     }
 
- static integer_t min_size_iwork( char const jobz, integer_t const n ) {
+ static integer_t min_size_iwork( const char jobz, const integer_t n ) {
         if ( jobz == 'N' || n < 2 )
             return 1;
         else
@@ -146,8 +146,8 @@
 // template function to call sygvd
 template< typename MatrixA, typename MatrixB, typename VectorW,
         typename Workspace >
-inline integer_t sygvd( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w,
+inline integer_t sygvd( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w,
         Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
@@ -158,8 +158,8 @@
 
 // template function to call sygvd, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorW >
-inline integer_t sygvd( integer_t const itype, char const jobz,
- integer_t const n, MatrixA& a, MatrixB& b, VectorW& w ) {
+inline integer_t sygvd( const integer_t itype, const char jobz,
+ const integer_t n, MatrixA& a, MatrixB& b, VectorW& w ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     sygvd_impl< value_type >::invoke( itype, jobz, n, a, b, w, info,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sygvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -34,24 +34,24 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sygvx( integer_t const itype, char const jobz,
- char const range, char const uplo, integer_t const n, float* a,
- integer_t const lda, float* b, integer_t const ldb,
- float const vl, float const vu, integer_t const il,
- integer_t const iu, float const abstol, integer_t& m, float* w,
- float* z, integer_t const ldz, float* work, integer_t const lwork,
+ inline void sygvx( const integer_t itype, const char jobz,
+ const char range, const char uplo, const integer_t n, float* a,
+ const integer_t lda, float* b, const integer_t ldb,
+ const float vl, const float vu, const integer_t il,
+ const integer_t iu, const float abstol, integer_t& m, float* w,
+ float* z, const integer_t ldz, float* work, const integer_t lwork,
             integer_t* iwork, integer_t* ifail, integer_t& info ) {
         LAPACK_SSYGVX( &itype, &jobz, &range, &uplo, &n, a, &lda, b, &ldb,
                 &vl, &vu, &il, &iu, &abstol, &m, w, z, &ldz, work, &lwork,
                 iwork, ifail, &info );
     }
- inline void sygvx( integer_t const itype, char const jobz,
- char const range, char const uplo, integer_t const n, double* a,
- integer_t const lda, double* b, integer_t const ldb,
- double const vl, double const vu, integer_t const il,
- integer_t const iu, double const abstol, integer_t& m, double* w,
- double* z, integer_t const ldz, double* work,
- integer_t const lwork, integer_t* iwork, integer_t* ifail,
+ inline void sygvx( const integer_t itype, const char jobz,
+ const char range, const char uplo, const integer_t n, double* a,
+ const integer_t lda, double* b, const integer_t ldb,
+ const double vl, const double vu, const integer_t il,
+ const integer_t iu, const double abstol, integer_t& m, double* w,
+ double* z, const integer_t ldz, double* work,
+ const integer_t lwork, integer_t* iwork, integer_t* ifail,
             integer_t& info ) {
         LAPACK_DSYGVX( &itype, &jobz, &range, &uplo, &n, a, &lda, b, &ldb,
                 &vl, &vu, &il, &iu, &abstol, &m, w, z, &ldz, work, &lwork,
@@ -70,10 +70,10 @@
     template< typename MatrixA, typename MatrixB, typename VectorW,
             typename MatrixZ, typename VectorIFAIL, typename WORK,
             typename IWORK >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixA& a, MatrixB& b,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixA& a, MatrixB& b,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -111,10 +111,10 @@
     // minimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixA& a, MatrixB& b,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixA& a, MatrixB& b,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work( n ) );
@@ -126,10 +126,10 @@
     // optimal workspace specialization
     template< typename MatrixA, typename MatrixB, typename VectorW,
             typename MatrixZ, typename VectorIFAIL >
- static void invoke( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixA& a, MatrixB& b,
- real_type const vl, real_type const vu, integer_t const il,
- integer_t const iu, real_type const abstol, integer_t& m,
+ static void invoke( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixA& a, MatrixB& b,
+ const real_type vl, const real_type vu, const integer_t il,
+ const integer_t iu, const real_type abstol, integer_t& m,
             VectorW& w, MatrixZ& z, VectorIFAIL& ifail, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
@@ -147,11 +147,11 @@
                 ifail, info, workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 8*n );
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return 5*n;
     }
 };
@@ -160,16 +160,16 @@
 // template function to call sygvx
 template< typename MatrixA, typename MatrixB, typename VectorW,
         typename MatrixZ, typename VectorIFAIL, typename Workspace >
-inline integer_t sygvx( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixA& a, MatrixB& b,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t sygvx( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixA& a, MatrixB& b,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail, Workspace work ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     sygvx_impl< value_type >::invoke( itype, jobz, range, n, a, b, vl,
@@ -180,16 +180,16 @@
 // template function to call sygvx, default workspace type
 template< typename MatrixA, typename MatrixB, typename VectorW,
         typename MatrixZ, typename VectorIFAIL >
-inline integer_t sygvx( integer_t const itype, char const jobz,
- char const range, integer_t const n, MatrixA& a, MatrixB& b,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vl,
- typename traits::type_traits< typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const vu, integer_t const il,
- integer_t const iu, typename traits::type_traits<
+inline integer_t sygvx( const integer_t itype, const char jobz,
+ const char range, const integer_t n, MatrixA& a, MatrixB& b,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vl,
+ const typename traits::type_traits< typename traits::matrix_traits<
+ MatrixA >::value_type >::real_type vu, const integer_t il,
+ const integer_t iu, const typename traits::type_traits<
         typename traits::matrix_traits<
- MatrixA >::value_type >::real_type const abstol, integer_t& m,
- VectorW& w, MatrixZ& z, VectorIFAIL& ifail ) {
+ MatrixA >::value_type >::real_type abstol, integer_t& m, VectorW& w,
+ MatrixZ& z, VectorIFAIL& ifail ) {
     typedef typename traits::matrix_traits< MatrixA >::value_type value_type;
     integer_t info(0);
     sygvx_impl< value_type >::invoke( itype, jobz, range, n, a, b, vl,

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sysv.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sysv.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sysv.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,32 +37,32 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sysv( char const uplo, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda,
- integer_t* ipiv, float* b, integer_t const ldb, float* work,
- integer_t const lwork, integer_t& info ) {
+ inline void sysv( const char uplo, const integer_t n,
+ const integer_t nrhs, float* a, const integer_t lda,
+ integer_t* ipiv, float* b, const integer_t ldb, float* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_SSYSV( &uplo, &n, &nrhs, a, &lda, ipiv, b, &ldb, work, &lwork,
                 &info );
     }
- inline void sysv( char const uplo, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda,
- integer_t* ipiv, double* b, integer_t const ldb, double* work,
- integer_t const lwork, integer_t& info ) {
+ inline void sysv( const char uplo, const integer_t n,
+ const integer_t nrhs, double* a, const integer_t lda,
+ integer_t* ipiv, double* b, const integer_t ldb, double* work,
+ const integer_t lwork, integer_t& info ) {
         LAPACK_DSYSV( &uplo, &n, &nrhs, a, &lda, ipiv, b, &ldb, work, &lwork,
                 &info );
     }
- inline void sysv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- integer_t* ipiv, traits::complex_f* b, integer_t const ldb,
- traits::complex_f* work, integer_t const lwork, integer_t& info ) {
+ inline void sysv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_f* a, const integer_t lda,
+ integer_t* ipiv, traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* work, const integer_t lwork, integer_t& info ) {
         LAPACK_CSYSV( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(work),
                 &lwork, &info );
     }
- inline void sysv( char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- integer_t* ipiv, traits::complex_d* b, integer_t const ldb,
- traits::complex_d* work, integer_t const lwork, integer_t& info ) {
+ inline void sysv( const char uplo, const integer_t n,
+ const integer_t nrhs, traits::complex_d* a, const integer_t lda,
+ integer_t* ipiv, traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* work, const integer_t lwork, integer_t& info ) {
         LAPACK_ZSYSV( &uplo, &n, &nrhs, traits::complex_ptr(a), &lda, ipiv,
                 traits::complex_ptr(b), &ldb, traits::complex_ptr(work),
                 &lwork, &info );

Modified: sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sysvx.hpp
==============================================================================
--- sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sysvx.hpp (original)
+++ sandbox/numeric_bindings/boost/numeric/bindings/lapack/driver/sysvx.hpp 2009-09-17 07:43:11 EDT (Thu, 17 Sep 2009)
@@ -37,45 +37,46 @@
 
 // overloaded functions to call lapack
 namespace detail {
- inline void sysvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, float* a, integer_t const lda, float* af,
- integer_t const ldaf, integer_t* ipiv, float* b,
- integer_t const ldb, float* x, integer_t const ldx, float& rcond,
- float* ferr, float* berr, float* work, integer_t const lwork,
+ inline void sysvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const float* a, const integer_t lda,
+ float* af, const integer_t ldaf, integer_t* ipiv, const float* b,
+ const integer_t ldb, float* x, const integer_t ldx, float& rcond,
+ float* ferr, float* berr, float* work, const integer_t lwork,
             integer_t* iwork, integer_t& info ) {
         LAPACK_SSYSVX( &fact, &uplo, &n, &nrhs, a, &lda, af, &ldaf, ipiv, b,
                 &ldb, x, &ldx, &rcond, ferr, berr, work, &lwork, iwork,
                 &info );
     }
- inline void sysvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, double* a, integer_t const lda, double* af,
- integer_t const ldaf, integer_t* ipiv, double* b,
- integer_t const ldb, double* x, integer_t const ldx,
- double& rcond, double* ferr, double* berr, double* work,
- integer_t const lwork, integer_t* iwork, integer_t& info ) {
+ inline void sysvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const double* a, const integer_t lda,
+ double* af, const integer_t ldaf, integer_t* ipiv,
+ const double* b, const integer_t ldb, double* x,
+ const integer_t ldx, double& rcond, double* ferr, double* berr,
+ double* work, const integer_t lwork, integer_t* iwork,
+ integer_t& info ) {
         LAPACK_DSYSVX( &fact, &uplo, &n, &nrhs, a, &lda, af, &ldaf, ipiv, b,
                 &ldb, x, &ldx, &rcond, ferr, berr, work, &lwork, iwork,
                 &info );
     }
- inline void sysvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_f* a, integer_t const lda,
- traits::complex_f* af, integer_t const ldaf, integer_t* ipiv,
- traits::complex_f* b, integer_t const ldb, traits::complex_f* x,
- integer_t const ldx, float& rcond, float* ferr, float* berr,
- traits::complex_f* work, integer_t const lwork, float* rwork,
- integer_t& info ) {
+ inline void sysvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_f* a,
+ const integer_t lda, traits::complex_f* af, const integer_t ldaf,
+ integer_t* ipiv, const traits::complex_f* b, const integer_t ldb,
+ traits::complex_f* x, const integer_t ldx, float& rcond,
+ float* ferr, float* berr, traits::complex_f* work,
+ const integer_t lwork, float* rwork, integer_t& info ) {
         LAPACK_CSYSVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(af), &ldaf, ipiv, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
                 traits::complex_ptr(work), &lwork, rwork, &info );
     }
- inline void sysvx( char const fact, char const uplo, integer_t const n,
- integer_t const nrhs, traits::complex_d* a, integer_t const lda,
- traits::complex_d* af, integer_t const ldaf, integer_t* ipiv,
- traits::complex_d* b, integer_t const ldb, traits::complex_d* x,
- integer_t const ldx, double& rcond, double* ferr, double* berr,
- traits::complex_d* work, integer_t const lwork, double* rwork,
- integer_t& info ) {
+ inline void sysvx( const char fact, const char uplo, const integer_t n,
+ const integer_t nrhs, const traits::complex_d* a,
+ const integer_t lda, traits::complex_d* af, const integer_t ldaf,
+ integer_t* ipiv, const traits::complex_d* b, const integer_t ldb,
+ traits::complex_d* x, const integer_t ldx, double& rcond,
+ double* ferr, double* berr, traits::complex_d* work,
+ const integer_t lwork, double* rwork, integer_t& info ) {
         LAPACK_ZSYSVX( &fact, &uplo, &n, &nrhs, traits::complex_ptr(a), &lda,
                 traits::complex_ptr(af), &ldaf, ipiv, traits::complex_ptr(b),
                 &ldb, traits::complex_ptr(x), &ldx, &rcond, ferr, berr,
@@ -98,8 +99,8 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename IWORK >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, IWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
@@ -153,8 +154,8 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< real_type > tmp_work( min_size_work(
@@ -169,8 +170,8 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
         real_type opt_size_work;
@@ -191,11 +192,11 @@
                 workspace( tmp_work, tmp_iwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 3*n );
     }
 
- static integer_t min_size_iwork( integer_t const n ) {
+ static integer_t min_size_iwork( const integer_t n ) {
         return n;
     }
 };
@@ -211,8 +212,8 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR, typename WORK, typename RWORK >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             detail::workspace2< WORK, RWORK > work ) {
         BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
@@ -263,8 +264,8 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             minimal_workspace work ) {
         traits::detail::array< value_type > tmp_work( min_size_work(
@@ -279,8 +280,8 @@
     template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
             typename MatrixB, typename MatrixX, typename VectorFERR,
             typename VectorBERR >
- static void invoke( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x, real_type& rcond,
+ static void invoke( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x, real_type& rcond,
             VectorFERR& ferr, VectorBERR& berr, integer_t& info,
             optimal_workspace work ) {
         value_type opt_size_work;
@@ -301,11 +302,11 @@
                 workspace( tmp_work, tmp_rwork ) );
     }
 
- static integer_t min_size_work( integer_t const n ) {
+ static integer_t min_size_work( const integer_t n ) {
         return std::max( 1, 2*n );
     }
 
- static integer_t min_size_rwork( integer_t const n ) {
+ static integer_t min_size_rwork( const integer_t n ) {
         return n;
     }
 };
@@ -315,8 +316,8 @@
 template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR, typename Workspace >
-inline integer_t sysvx( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
+inline integer_t sysvx( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr, Workspace work ) {
@@ -331,8 +332,8 @@
 template< typename MatrixA, typename MatrixAF, typename VectorIPIV,
         typename MatrixB, typename MatrixX, typename VectorFERR,
         typename VectorBERR >
-inline integer_t sysvx( char const fact, MatrixA& a, MatrixAF& af,
- VectorIPIV& ipiv, MatrixB& b, MatrixX& x,
+inline integer_t sysvx( const char fact, const MatrixA& a, MatrixAF& af,
+ VectorIPIV& ipiv, const MatrixB& b, MatrixX& x,
         typename traits::type_traits< typename traits::matrix_traits<
         MatrixA >::value_type >::real_type& rcond, VectorFERR& ferr,
         VectorBERR& berr ) {


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