This is just to be sure my previous email was received

Can anyone acknowledge receipt?

Riccardo

On 24 Jun 2016 3:49 p.m., "Riccardo Rossi" <rrossi@cimne.upc.edu> wrote:

Dear all,

Right now the following code

#include <iostream>
#include <iostream>
#include <boost/numeric/ublas/matrix.hpp>

void f(
    const boost::numeric::ublas::bounded_matrix<double,10,1>& should_be_10by1
     )

}

int main() {
    boost::numeric::ublas::bounded_matrix<double,10,1> correct;
    boost::numeric::ublas::bounded_matrix<double,1,10> wrong;
    f(correct);
    f(wrong); //how can this be compiled??? - i expect the type of wrong to be ...wrong for f!!
}

Does compile, effectively bypassing type safety.

Essentially if I use a reference in defining a function it is because I don t want to pass by value.
In this case a copy is being done...allowed by the fact that the reference I pass is constant.

Couldn't t the conversion be made explicit? That would potentially uncover many bugs...

Regards
Riccardo