%module template_virtual // Submitted by Marcelo Matus // assertion emitted with templates + derivation + pure virtual member // allocate.cxx:47: int Allocate::is_abstract_inherit(Node*, Node*): // Assertion `dn' failed. %inline %{ template <class T> class A { public: virtual ~A() { } virtual void say_hi() = 0; // only fails with pure virtual methods virtual void say_hello() {} // this works fine protected: A() { } // defined protected as swig generates constructor by default }; template <class T> class B : public A<T> { protected: B() { } // defined protected as swig generates constructor by default }; %} %template(A_int) A<int>; %template(B_int) B<int>; // !!!! it crashes right here !!!!!
Generated by dwww version 1.15 on Tue Jul 2 00:33:36 CEST 2024.