$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Peter Dimov (pdimov_at_[hidden])
Date: 2008-05-21 09:05:17
Markus Schöpflin:
> Anthony Williams wrote:
>
>> Could you try adding the following overload of the thread constructor
>> to boost/thread/pthread/thread.hpp
>>
>> template <class T,class R,class P1,class A1>
>> thread(R (T::*f)(P1),A1 a1):
>>
>> thread_info(make_thread_info(boost::bind<void>(boost::mem_fn(f),a1)))
>> {
>> start_thread();
>> }
>>
>> If that makes the problem go away, I'll commit the change.
>
> I tried, but the compiler prefers the other constructor when resolving the
> overload, so the error persists.
Try
template <class T, class R, class A1>
thread(R (T::*f)(),A1 a1):
without the P1. This would only work for no-argument non-const member
functions though. More overloads are needed to cover all cases. I'll think
about fixing that somehow on the bind side. A more systematic thread::thread
test that covers all possibilities would be nice to have.