Hi, One more bug. Consider an overloaded virtual function that is implemented in the base class and not overridden in the derived class. // --------- overload.hpp -------- namespace test { class Base { public: virtual void f() {} virtual void f(const int i){} }; class A : public Base { public: void f(){} }; } // --------- overload.hpp -------- Running Pyste on this produces this wrapper code: // ---------- wrapper code ---------- struct test_A_Wrapper: test::A { [...] void f(const int p0) { call_method< void >(self, "f", p0); } void default_f(const int p0) { test::A::f(p0); // <<=========== ERROR. test::Base::f(p0); // <<=========== Should be this. } [...] // ---------- wrapper code ---------- Attached is a patch (two lines) for the _current_ CVS code that fixes this. cheers, prabhu