Hello, I'm using boost::bind for binding parameters to a method for calling a thread group: myclass::mymethod( const mysuperclass& myobj ) { bost::threadgroup mythreads; mythreads.create_thread( boost::bind( &myclass::mythreadmethod, this, boost::ref(myobj) ) ); } myclass::mythreadmethod( const mysuperclass myobj ) {} // I need a copy of the object, so I don't set the reference operator & mysuperclass is a pure virtual class. Now I create a derivate class with class myderivate : public mysuperclass {} and call myderivate y; myclass x; x.mymethod( y ); The compiler breaks with the error, that myobj is a class with pure virtual methods. How I can call the bind methods with the correct object? myobj is an object of the derivated class so I would "send them" to the methods. Thanks Phil