Hi all,

Can vnl_copy be modified to include an instantiation for copying between two vectors/matrices of the same type? For example, vnl_copy(A,B) will work with a vnl_matrix<float> and vnl_matrix<double>, but not if A and B are the same type. The file vnl_copy.cxx contains the instantiation:

VNL_COPY_INSTANTIATE_twoway(float, double);

But it would be good to also have:

VNL_COPY_INSTANTIATE(float, float);
VNL_COPY_INSTANTIATE(double, double);


After all, the function is called vnl_copy, not vnl_convert.

(Although operator= can be used to copy objects of the same type, it cannot be used if one of the objects is templated, in which case vnl_copy seems like the obvious solution.)

Regards,
David.