re: [boost] numeric-ublas errors with Comeau

Bronek Kozicki wrote:
All tests in numeric-ublas are failing in Comeau compiler. Most of these errors can be fixed if we define BOOST_UBLAS_NO_CMATH in boost/numeric/unblas/config.hpp for this compiler. Patch attached
Sorry I missed the first posting. A case on mailing list overload.
Hello, is there maintainer of numberic-ublas?
Certainly! Looking at patch simply defining NO_CMATH for all Comeau versions does not seem to be a good idea. The problem appears to be the old std::abs is not defined for built in types. I sure the problem will non exist for ever in the Comeau library. It could also be due to the --vc71 compatibility flag being set. Do you know what the current __LIBCOMO_VERSION__ is and if the problem still exists. Thanks, Michael

Michael Stevens wrote:
Looking at patch simply defining NO_CMATH for all Comeau versions does not seem to be a good idea.
OK, I will send it to Comeau support.
Do you know what the current __LIBCOMO_VERSION__ is and if the problem still exists.
It's 31 , but this symbol is defined only after at least one header from standard C++ library (or <stl_config.h>) has been included. I suggest including : #include <utility> at the top of boost/config/compiler/comeau.hpp and then checking for #if (__LIBCOMO_VERSION__ <= 31) B.

Michael Stevens wrote:
The problem appears to be the old std::abs is not defined for built in types. I sure the problem will non exist for ever in the Comeau library. It could also be due to the --vc71 compatibility flag being set.
Hi again me :) This error goes away if you #include <cstdlib> in boost/numeric/ublas/traits.hpp (see attached patch) , no need to update boost/boost/numeric/ublas/config.hpp . I've checked in standard (ISO/IEC 14882:2003, clause 26.5) and it seems that both headers <cstdlib> and <cmath> are required to have full set of overloads of std::abs (I asked on comp.std.c++ if it's intended). Anyway I will send support request to Comeau asking about absence of float version in <cmath> . B. boost/boost/numeric/ublas/traits.hpp Index: boost/boost/numeric/ublas/traits.hpp =================================================================== RCS file: /cvsroot/boost/boost/boost/numeric/ublas/traits.hpp,v retrieving revision 1.24 diff -u -a -b -w -r1.24 traits.hpp --- boost/boost/numeric/ublas/traits.hpp 19 Aug 2004 06:37:05 -0000 1.24 +++ boost/boost/numeric/ublas/traits.hpp 23 Aug 2004 09:42:56 -0000 @@ -21,6 +21,7 @@ #include <iterator> #include <complex> #include <cmath> +#include <cstdlib> #include <boost/numeric/ublas/iterator.hpp> #if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) && !defined(BOOST_NO_SFINAE)

On Mon, Aug 23, 2004 at 11:48:17AM +0200, Bronek Kozicki wrote:
Michael Stevens wrote:
The problem appears to be the old std::abs is not defined for built in types. I sure the problem will non exist for ever in the Comeau library. It could also be due to the --vc71 compatibility flag being set.
Hi
again me :) This error goes away if you #include <cstdlib> in boost/numeric/ublas/traits.hpp (see attached patch) , no need to update boost/boost/numeric/ublas/config.hpp .
I've checked in standard (ISO/IEC 14882:2003, clause 26.5) and it seems that both headers <cstdlib> and <cmath> are required to have full set of overloads of std::abs (I asked on comp.std.c++ if it's intended). Anyway I will send support request to Comeau asking about absence of float version in <cmath> .
See http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-closed.html#323 Also, http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-defects.html#295, although that's not actually related, it just seems to be at first glance. jon -- "Everything to excess! To enjoy the flavor of life, take big bites. Moderation is for monks." - Robert Heinlein

Jonathan Wakely wrote:
See http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-closed.html#323
Thanks! B.

Bronek Kozicki wrote: [...] after updating boost/boost/numeric/ublas/traits.hpp on my machine and running tests I still have four errors (one regression test failed) on Comeau 4.3.3 backend MSVC71, see attached file. This could have been due to too strict requirements of libcomo 31, but I must admit I have some trouble reading such long error message. Should I ask Comeau support about it, or there is a chance for workaround (definition of operator != where required by como)? B. "C:\Comeau\libcomo\concept_checks.h", line 423: error #349: no operator "!=" matches these operands operand types are: boost::numeric::ublas::index_triple<boost::numeric::ublas ::index_triple_array<boost::numeric::ublas::coordinate_ma trix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::index_array_type , boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::index_array_type , boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::value_array_type >::self_type> != boost::numeric::ublas::index_triple<boost::numeric::ublas ::index_triple_array<boost::numeric::ublas::coordinate_ma trix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::index_array_type , boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::index_array_type , boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::value_array_type >::self_type> if (__a == __b || __a != __b) return __a; ^ detected during: instantiation of "_Type _STL_ERROR::__equality_comparable_requirement_violation(_ Type, _Type) [with _Type=boost::numeric::ublas::index_triple<boost::numeric: :ublas::index_triple_array<boost::numeric::ublas::coordin ate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::index_array_type , boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::index_array_type , boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::value_array_type >::self_type>]" at line 577 instantiation of "void _EqualityComparable_concept_specification<_Type>::_Equali tyComparable_requirement_violation(_Type) [with _Type=std::iterator_traits<boost::numeric::ublas::indexed _iterator<boost::numeric::ublas::index_triple_array<boost ::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::index_array_type , boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::index_array_type , boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::value_array_type >::self_type, std::random_access_iterator_tag>>::value_type]" at line 824 of "C:\Comeau\libcomo\stl_algo.h" instantiation of "_ForwardIter std::unique(_ForwardIter, _ForwardIter) [with _ForwardIter=boost::numeric::ublas::indexed_iterator<boos t::numeric::ublas::index_triple_array<boost::numeric::ubl as::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::index_array_type , boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::index_array_type , boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>::value_array_type >::self_type, std::random_access_iterator_tag>]" at line 4174 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "void boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::sort() const [with T=double, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<boost::numeric: :ublas::matrix_row<boost::numeric::ublas::sparse_matrix<d ouble, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>]" at line 3987 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::pointer boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::find_element(boost::numeric::ublas::coordinate_matri x<T, F, IB, IA, TA>::size_type, boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::size_type) [with T=double, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<boost::numeric: :ublas::matrix_row<boost::numeric::ublas::sparse_matrix<d ouble, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>]" at line 54 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::sparse_matrix_element<M>::sparse_ matrix_element(boost::numeric::ublas::sparse_matrix_eleme nt<M>::matrix_type &, boost::numeric::ublas::sparse_matrix_element<M>::size_typ e, boost::numeric::ublas::sparse_matrix_element<M>::size_typ e) [with M=boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>]" at line 4048 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::reference boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::operator()(boost::numeric::ublas::coordinate_matrix< T, F, IB, IA, TA>::size_type, boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::size_type) [with T=double, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<boost::numeric: :ublas::matrix_row<boost::numeric::ublas::sparse_matrix<d ouble, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>]" at line 35 of "..\..\..\libs\numeric\ublas\test3/test3.hpp" instantiation of "void initialize_matrix(M &) [with M=boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<doub le, boost::numeric::ublas::row_major, std::map<size_t, double, std::less<size_t>, std::allocator<double>>>>::value_type>>]" "C:\Comeau\libcomo\concept_checks.h", line 423: error #349: no operator "!=" matches these operands operand types are: boost::numeric::ublas::index_triple<boost::numeric::ublas ::index_triple_array<boost::numeric::ublas::coordinate_ma trix<std::complex<double>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::in dex_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::in dex_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::va lue_array_type>::self_type> != boost::numeric::ublas::index_triple<boost::numeric::ublas ::index_triple_array<boost::numeric::ublas::coordinate_ma trix<std::complex<double>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::in dex_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::in dex_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::va lue_array_type>::self_type> if (__a == __b || __a != __b) return __a; ^ detected during: instantiation of "_Type _STL_ERROR::__equality_comparable_requirement_violation(_ Type, _Type) [with _Type=boost::numeric::ublas::index_triple<boost::numeric: :ublas::index_triple_array<boost::numeric::ublas::coordin ate_matrix<std::complex<double>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::in dex_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::in dex_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::va lue_array_type>::self_type>]" at line 577 instantiation of "void _EqualityComparable_concept_specification<_Type>::_Equali tyComparable_requirement_violation(_Type) [with _Type=std::iterator_traits<boost::numeric::ublas::indexed _iterator<boost::numeric::ublas::index_triple_array<boost ::numeric::ublas::coordinate_matrix<std::complex<double>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::in dex_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::in dex_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::va lue_array_type>::self_type, std::random_access_iterator_tag>>::value_type]" at line 824 of "C:\Comeau\libcomo\stl_algo.h" instantiation of "_ForwardIter std::unique(_ForwardIter, _ForwardIter) [with _ForwardIter=boost::numeric::ublas::indexed_iterator<boos t::numeric::ublas::index_triple_array<boost::numeric::ubl as::coordinate_matrix<std::complex<double>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::in dex_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::in dex_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>::va lue_array_type>::self_type, std::random_access_iterator_tag>]" at line 4174 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "void boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::sort() const [with T=std::complex<double>, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<boost::numeric: :ublas::matrix_row<boost::numeric::ublas::sparse_matrix<s td::complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>]" at line 3987 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::pointer boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::find_element(boost::numeric::ublas::coordinate_matri x<T, F, IB, IA, TA>::size_type, boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::size_type) [with T=std::complex<double>, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<boost::numeric: :ublas::matrix_row<boost::numeric::ublas::sparse_matrix<s td::complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>]" at line 54 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::sparse_matrix_element<M>::sparse_ matrix_element(boost::numeric::ublas::sparse_matrix_eleme nt<M>::matrix_type &, boost::numeric::ublas::sparse_matrix_element<M>::size_typ e, boost::numeric::ublas::sparse_matrix_element<M>::size_typ e) [with M=boost::numeric::ublas::coordinate_matrix<std::complex<d ouble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>]" at line 4048 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::reference boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::operator()(boost::numeric::ublas::coordinate_matrix< T, F, IB, IA, TA>::size_type, boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::size_type) [with T=std::complex<double>, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<boost::numeric: :ublas::matrix_row<boost::numeric::ublas::sparse_matrix<s td::complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>]" at line 35 of "..\..\..\libs\numeric\ublas\test3/test3.hpp" instantiation of "void initialize_matrix(M &) [with M=boost::numeric::ublas::coordinate_matrix<std::complex<d ouble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<boost::numeric::ub las::matrix_row<boost::numeric::ublas::sparse_matrix<std: :complex<double>, boost::numeric::ublas::row_major, std::map<size_t, std::complex<double>, std::less<size_t>, std::allocator<std::complex<double>>>>>::value_type>>]" 2 errors detected in the compilation of "..\..\..\libs\numeric\ublas\test3/test32.cpp". "C:\Comeau\libcomo\concept_checks.h", line 423: error #349: no operator "!=" matches these operands operand types are: boost::numeric::ublas::index_triple<boost::numeric::ublas ::index_triple_array<boost::numeric::ublas::coordinate_ma trix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::index_ar ray_type, boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::index_ar ray_type, boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::value_ar ray_type>::self_type> != boost::numeric::ublas::index_triple<boost::numeric::ublas ::index_triple_array<boost::numeric::ublas::coordinate_ma trix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::index_ar ray_type, boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::index_ar ray_type, boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::value_ar ray_type>::self_type> if (__a == __b || __a != __b) return __a; ^ detected during: instantiation of "_Type _STL_ERROR::__equality_comparable_requirement_violation(_ Type, _Type) [with _Type=boost::numeric::ublas::index_triple<boost::numeric: :ublas::index_triple_array<boost::numeric::ublas::coordin ate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::index_ar ray_type, boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::index_ar ray_type, boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::value_ar ray_type>::self_type>]" at line 577 instantiation of "void _EqualityComparable_concept_specification<_Type>::_Equali tyComparable_requirement_violation(_Type) [with _Type=std::iterator_traits<boost::numeric::ublas::indexed _iterator<boost::numeric::ublas::index_triple_array<boost ::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::index_ar ray_type, boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::index_ar ray_type, boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::value_ar ray_type>::self_type, std::random_access_iterator_tag>>::value_type]" at line 824 of "C:\Comeau\libcomo\stl_algo.h" instantiation of "_ForwardIter std::unique(_ForwardIter, _ForwardIter) [with _ForwardIter=boost::numeric::ublas::indexed_iterator<boos t::numeric::ublas::index_triple_array<boost::numeric::ubl as::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::index_ar ray_type, boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::index_ar ray_type, boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>::value_ar ray_type>::self_type, std::random_access_iterator_tag>]" at line 4174 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "void boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::sort() const [with T=double, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<double>]" at line 3987 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::pointer boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::find_element(boost::numeric::ublas::coordinate_matri x<T, F, IB, IA, TA>::size_type, boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::size_type) [with T=double, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<double>]" at line 54 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::sparse_matrix_element<M>::sparse_ matrix_element(boost::numeric::ublas::sparse_matrix_eleme nt<M>::matrix_type &, boost::numeric::ublas::sparse_matrix_element<M>::size_typ e, boost::numeric::ublas::sparse_matrix_element<M>::size_typ e) [with M=boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>]" at line 4048 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::reference boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::operator()(boost::numeric::ublas::coordinate_matrix< T, F, IB, IA, TA>::size_type, boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::size_type) [with T=double, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<double>]" at line 35 of "..\..\..\libs\numeric\ublas\test3/test3.hpp" instantiation of "void initialize_matrix(M &) [with M=boost::numeric::ublas::coordinate_matrix<double, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<double>>]" "C:\Comeau\libcomo\concept_checks.h", line 423: error #349: no operator "!=" matches these operands operand types are: boost::numeric::ublas::index_triple<boost::numeric::ublas ::index_triple_array<boost::numeric::ublas::coordinate_ma trix<std::complex<double>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::index_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::index_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::value_array_type>::self_type> != boost::numeric::ublas::index_triple<boost::numeric::ublas ::index_triple_array<boost::numeric::ublas::coordinate_ma trix<std::complex<double>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::index_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::index_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::value_array_type>::self_type> if (__a == __b || __a != __b) return __a; ^ detected during: instantiation of "_Type _STL_ERROR::__equality_comparable_requirement_violation(_ Type, _Type) [with _Type=boost::numeric::ublas::index_triple<boost::numeric: :ublas::index_triple_array<boost::numeric::ublas::coordin ate_matrix<std::complex<double>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::index_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::index_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::value_array_type>::self_type>]" at line 577 instantiation of "void _EqualityComparable_concept_specification<_Type>::_Equali tyComparable_requirement_violation(_Type) [with _Type=std::iterator_traits<boost::numeric::ublas::indexed _iterator<boost::numeric::ublas::index_triple_array<boost ::numeric::ublas::coordinate_matrix<std::complex<double>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::index_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::index_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::value_array_type>::self_type, std::random_access_iterator_tag>>::value_type]" at line 824 of "C:\Comeau\libcomo\stl_algo.h" instantiation of "_ForwardIter std::unique(_ForwardIter, _ForwardIter) [with _ForwardIter=boost::numeric::ublas::indexed_iterator<boos t::numeric::ublas::index_triple_array<boost::numeric::ubl as::coordinate_matrix<std::complex<double>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::index_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::index_array_type, boost::numeric::ublas::coordinate_matrix<std::complex<dou ble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>::value_array_type>::self_type, std::random_access_iterator_tag>]" at line 4174 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "void boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::sort() const [with T=std::complex<double>, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<std::complex<do uble>>]" at line 3987 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::pointer boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::find_element(boost::numeric::ublas::coordinate_matri x<T, F, IB, IA, TA>::size_type, boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::size_type) [with T=std::complex<double>, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<std::complex<do uble>>]" at line 54 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::sparse_matrix_element<M>::sparse_ matrix_element(boost::numeric::ublas::sparse_matrix_eleme nt<M>::matrix_type &, boost::numeric::ublas::sparse_matrix_element<M>::size_typ e, boost::numeric::ublas::sparse_matrix_element<M>::size_typ e) [with M=boost::numeric::ublas::coordinate_matrix<std::complex<d ouble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>]" at line 4048 of "C:\MinGW\Bronek\regression\boost\boost/numeric/ublas/mat rix_sparse.hpp" instantiation of "boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::reference boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::operator()(boost::numeric::ublas::coordinate_matrix< T, F, IB, IA, TA>::size_type, boost::numeric::ublas::coordinate_matrix<T, F, IB, IA, TA>::size_type) [with T=std::complex<double>, F=boost::numeric::ublas::row_major, IB=0U, IA=boost::numeric::ublas::unbounded_array<size_t>, TA=boost::numeric::ublas::unbounded_array<std::complex<do uble>>]" at line 35 of "..\..\..\libs\numeric\ublas\test3/test3.hpp" instantiation of "void initialize_matrix(M &) [with M=boost::numeric::ublas::coordinate_matrix<std::complex<d ouble>, boost::numeric::ublas::row_major, 0U, boost::numeric::ublas::unbounded_array<size_t>, boost::numeric::ublas::unbounded_array<std::complex<doubl e>>>]" 2 errors detected in the compilation of "..\..\..\libs\numeric\ublas\test3/test33.cpp".
participants (3)
-
Bronek Kozicki
-
Jonathan Wakely
-
Michael Stevens