Abstract *correct* initialisation of CLONE_PARAMS into Perl_clone_params_new().
authorNicholas Clark <nick@ccl4.org>
Wed, 24 Feb 2010 11:47:08 +0000 (11:47 +0000)
committerNicholas Clark <nick@ccl4.org>
Mon, 24 May 2010 14:15:26 +0000 (15:15 +0100)
commitf7abe70be985cb9179c2e728a593cb8a5c8e049d
treecaa50831f19cd6adb6b56628295289b526e4acb1
parenta09252eb79f700c93c37322c1ad831cf3193571b
Abstract *correct* initialisation of CLONE_PARAMS into Perl_clone_params_new().

As it allocates memory dynamically, add Perl_clone_params_del(). This will
allow CLONE_PARAMS to be expand in future in a source and binary compatible
fashion.

These implementations of Perl_clone_params_new()/Perl_clone_params_del() jump
through hoops to remain source and binary compatible, in particular, by not
assuming that the structure member is present and correctly initialised. Hence
they should be suitable for inclusion into Devel::PPPort.

Convert threads.xs to use them, resolving RT #73046.
dist/threads/threads.xs
embed.fnc
embed.h
global.sym
proto.h
sv.c
t/op/threads.t