diff --git a/wrap/Class.cpp b/wrap/Class.cpp index cd7dd4ca6..7aa4cd72a 100644 --- a/wrap/Class.cpp +++ b/wrap/Class.cpp @@ -832,9 +832,11 @@ void Class::emit_cython_pyx(FileWriter& pyxFile, const std::vector& allCl << pyxClassName() << "_" << i << "(*args, **kwargs):\n pass\n"; } - if (constructor.nrOverloads()>0) + if (constructor.nrOverloads()>0) { + pyxFile.oss << " elif len(args)+len(kwargs)==0:\n return\n"; pyxFile.oss << " else:\n raise TypeError('" << pyxClassName() << " construction failed!')\n"; + } pyxInitParentObj(pyxFile, " self", "self." + shared_pxd_obj_in_pyx(), allClasses); pyxFile.oss << "\n";