On 2/12/06, Sascha Volkenandt (ML) <lists@magoa.net> wrote:
Klaus Schmidinger wrote:
> This would allow anybody to do
>
> cThread t;
> StartThread(&t);
>
> which I don't think would be a good thing to do.
>
> Any ideas how to prevent this from happening?
It's perfectly okay to declare StartThread
extern "C" static void *StartThread(cThread *Thread);
Shouldn't a nameless namepsace be used here? gcc 3.4.3 does not like extern "C" static
at all (error: multiple storage classes in declaration of ...). i.e., in thread.c:
namespace {
extern "C" void *StartThread(cThread *Thread)
{
....
}
}