Boost logo

Boost :

From: by way of Kresimir Fresl (fresl_at_[hidden])
Date: 2001-08-25 07:37:04


Hi,

I am using gcc 3.0. Attempt to compile 'test11.cpp'
(with -USE_GCC) results in more than a thousand lines of
error messages and warnings.

Lots of them are caused by missing typenames
in declarations of nested types.

Furthermore, in exception.h:

../exception.h:28: looser throw specifier for `virtual const char*
   numerics::divide_by_zero::what() const'
/usr/include/g++-v3/exception:56: overriding `virtual const char*
   std::exception::what() const throw ()'

and similarly for other exception classes.

With all typenames added (3 hours work) and with throw specifiers,
test11.cpp can be compiled.

But in compilation of test12.cpp and test13.cpp I stumbled upon
an unsurmountable (at least for my knowledge) problem:

/usr/include/g++-v3/bits/stl_iterator.h: In constructor
   `std::__normal_iterator<_Iterator, _Container>::__normal_iterator(const
   std::__normal_iterator<_Iter, _Container>&) [with _Iter = const float*,
   _Iterator = float*, _Container = std::vector<float, std::allocator<float>
>]':
../matrix.h:1067: instantiated from `size_t numerics::matrix<T, F,
A>::iterator1::index1() const [...]'
../matrix.h:1055: instantiated from `numerics::matrix<T, F, A>::iterator2
numerics::matrix<T, F, A>::iterator1::begin() [...]'
../matrix.h:438: instantiated from `void
numerics::matrix_assign<F>::operator()(M&, const
numerics::matrix_expression<E2>&, numerics::dense_tag) [...]'
../matrix.h:589: instantiated from `void
numerics::matrix_assign<F>::operator()(M&, const
numerics::matrix_expression<E2>&) [...]'
../matrix.h:745: instantiated from `numerics::matrix<T, F, A>::matrix(const
numerics::matrix_expression<E1>&) [...]'
../matrix.h:816: instantiated from `numerics::matrix<T, F, A>&
numerics::matrix<T, F, A>::operator=(const numerics::matrix_expression<E1>&)
[...]'
test12.cpp:40: instantiated from `void test_my_matrix_vector<V, M,
N>::operator()(VP&, VP&, MP&) const [...]'
test12.cpp:63: instantiated from `void test_my_matrix_vector<V, M,
N>::operator()() const [...]'
test12.cpp:127: instantiated from here
/usr/include/g++-v3/bits/stl_iterator.h:474: cannot convert `const float*
   const' to `float*' in initialization

(And there were three similar error messages for double*,
complex<float>* and complex<double>*).

Sincerely,

fres


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk