This change breaks my module Object::InsideOut. I have determined the cause to be that using 'weaken' in combination with threads and objects is broken. The attached self-contained script replicates the bug. On Thu, May 20, 2010 at 16:56, Nicholas Clark <nick@ccl4.org> wrote: > In perl.git, the branch blead has been updated > > <http://perl5.git.perl.org/perl.git/commitdiff/39f3f7f442aed93239540238d19a15f6020da747?hp=e77da3b2183d0f9c5ea81dc5780d9a480fc4fa88> > > - Log ----------------------------------------------------------------- > commit 39f3f7f442aed93239540238d19a15f6020da747 > Author: Nicholas Clark <nick@ccl4.org> > Date: Tue Feb 23 20:35:29 2010 +0000 > > PL_endav can be NULL, so in S_ithread_create() no need to set it to newAV(). > > M dist/threads/threads.xs > > commit b1faab355535118c9fb99fcc343501012923ece2 > Author: Nicholas Clark <nick@ccl4.org> > Date: Sat Feb 13 09:05:18 2010 +0000 > > Remove redundant hv_exists() calls from ithread_create()'s spec parser. > > hv_fetch(..., 0) won't create the element if it doesn't exist, returning a NULL > pointer, so hv_exists() and hv_fetch() is doing two hash lookups where one would > suffice. > > On this machine, reduces the object code by 3K, about 7%. Everyone's a winner. > > M dist/threads/threads.xs > > commit 4cf5eae5e58faebb6ae9e68e493cd85343f7a76c > Author: Nicholas Clark <nick@ccl4.org> > Date: Sat Feb 13 08:31:55 2010 +0000 > > Change S_ithread_create() params from a single AV* to a pair of SV** pointers. > > This saves creating, duplicating and freeing and AV, which is only ever used for > an internal calling convention. > > M dist/threads/threads.xs > > commit 78b7eff23b1757f7fccef902e7e706080a997e2c > Author: Nicholas Clark <nick@ccl4.org> > Date: Sat Feb 13 08:01:45 2010 +0000 > > In threads.xs, convert thread->params from RV to AV. > > Pass around and store the array directly, rather than creating, holding and > dereferencing a reference to it. > > M dist/threads/threads.xs > -----------------------------------------------------------------------