The documentation of boost::python::make_constructor should be fixed. It shows the synopsis: template <class T, class ArgList, class Generator> object make_constructor(); template <class ArgList, class Generator, class Policies> object make_constructor(Policies const& policies); This is obviously not correct.