Boost logo

Boost Users :

From: geert_ceuppens (gceuppens_at_[hidden])
Date: 2003-04-14 10:10:00


Toon & Kresimir,

I've downloaded the lapack and blas binds from the boost sandbox,
and I found out the hard way (again :^( ...) the 'features' of the
VC6 compiler, i.e. the lack of support for template specialisation.
The offending code is: (line nbr may differ due to versioning)

*) boost\numeric\bindings\traits\algorithm.hpp(45):
  template < typename T >
  struct is_equal
vs:
  template < typename T >
  struct is_equal< boost::numeric::ublas::matrix< T > >

--> template class has already been defined as a non-template class

*) libs\numeric\bindings\blas\test\blas.hpp(51):
  template < typename T >
  struct assign_multiplier
vs:
  template < typename T >
  struct assign_multiplier< std::complex< T > >

*) boost\numeric\bindings\traits\traits.hpp(46):
  template <typename V, typename T = typename V::value_type>
  struct default_vector_traits
vs:
  template <typename V, typename T>
  struct default_vector_traits<V const, T>

*) boost\numeric\bindings\traits\traits.hpp(112 & 114):
This one gave more errors:

  template <typename MatrixT>
  inline
  typename matrix_traits<MatrixT>::pointer matrix_storage (MatrixT&
m) {
    return matrix_traits<MatrixT>::storage (m);
  }

error C2039: 'pointer' : is not a member of 'matrix_traits<M>'
error C2146: syntax error : missing ';' before
identifier 'matrix_storage'
error C2433: 'pointer' : 'inline' not permitted on data declarations
error C2501: 'pointer' : missing storage-class or type specifiers
error C2059: syntax error : ';'
error C2065: 'MatrixT' : undeclared identifier
error C2065: 'm' : undeclared identifier
'matrix_storage' : missing storage-class or type specifiers
syntax error : missing ';' before '<end Parse>'

Any chance of providing non-specialised versions of these so I can
use the VC6 compiler?

Thanks - Geert


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net