What happens if I pass a vector of a different element type than the c++ code expects? For example, what if: F (numpy_vector<double>) is called from python with zeros (10, dtype=int)? How about other conversions (double vs complex?) What I'd like to happen is I'd get an error, and that if I wanted I could overload F: F (numpy_vector<int>)...