Boost logo

Boost :

From: rwgk (rwgk_at_[hidden])
Date: 2002-03-12 17:40:44

--- In boost_at_y..., "jhrwalter" <walter_at_g...> wrote:
> You seem to need element-wise multiplication. We currently do not
> support this in ublas.

Oh, sorry for being so stubborn about operator*. I should
have figured that one out ...

The latest cvs snapshot works great with gcc 3.0.4.
For the EDG240 based Compaq cxx compiler I added
a new #ifdef __EDG__ block in config.h which is
identical to the USE_GCC block, but with "__restrict__"
removed. The new code + error message is attached.
Could you please advise?

#include <vector>
#include <boost/numeric/ublas/config.h>
#include <boost/numeric/ublas/vector.h>

int main()
  numerics::vector<float, std::vector<float> > ua(1000);
  numerics::vector<float, std::vector<float> > ub(1000);
  numerics::vector<float, std::vector<float> > uc(1000);
  uc = ua + ub;
  return 0;

cxx -I"/net/cci/rwgk/boost"/boost/compatibility/cpp_c_headers -std
strict_ansi -msg_display_number -msg_disable 186,450,1115 -O2 -
I"/net/cci/rwgk/boost" -c ublas_shared.cpp
cxx: Error: /net/cci/rwgk/boost/boost/numeric/ublas/vector.h, line
430: #461
          initial value of reference to non-const must be an lvalue
          detected during instantiation of "numerics::vector<T, A>
                    &numerics::vector<T, A>::operator=(const
                    numerics::vector_expression<E> &) [with T=float,
                    A=std::vector<float, std::allocator<float>>,
                    float>::result_type>>]" at line 10
of "ublas_shared.cpp"
            return assign_temporary (self_type (ae));
cxx: Info: 1 error detected in the compilation of "ublas_shared.cpp".

Boost list run by bdawes at, gregod at, cpdaniel at, john at