This is just to report that an added constructor for the class vnl_cross_product_matrix in revision r28992:
line 35: vnl_cross_product_matrix(const vnl_double_3& v) { set(v.data_block()); }
caused an implicit conversion problem:
error: call of overloaded ‘vnl_cross_product_matrix(vnl_vector_fixed<double, 3u>)’ is ambiguous
note: candidates are: vnl_cross_product_matrix::vnl_cross_product_matrix(const vnl_vector<double>&)
note: vnl_cross_product_matrix::vnl_cross_product_matrix(const vnl_double_3&)
This may cause a problem to users relying on the implicit conversion between vnl_vector_fixed and vnl_vector when the code goes to final release.
Possible fix may be to introduce an explicit constructor with vnl_vector_fixed doing the conversion within it, or just a vnl_vector_fixed version of the constructor.
Dominic |