in reply to Coro woes

The problem is related to this change.

I think you also need this patch.

Fixed patch: (The linked ones had line breaks inserted.)

diff --git a/Coro-6.49/Coro/State.xs b/Coro-6.49/Coro/State.xs index 6d631bd..c2cbe7b 100644 --- a/Coro-6.49/Coro/State.xs +++ b/Coro-6.49/Coro/State.xs @@ -1395,7 +1395,18 @@ runops_trace (pTHX) PUSHMARK (SP); PUSHs (&PL_sv_yes); PUSHs (fullname); - PUSHs (CxHASARGS (cx) ? sv_2mortal (newRV_i +nc ((SV *)cx->blk_sub.argarray)) : &PL_sv_undef); + { + AV *aa; +# if PERL_VERSION_ATLEAST(5,23,8) + aa = ((AV*)(AvARRAY(MUTABLE_AV( + PadlistARRAY(CvPADLIST(cx->blk_su +b.cv))[ + CvDEPTH(cx->blk_sub.cv)]))[0])); +#else + aa = cx->blk_sub.argarray; +#endif + + PUSHs (CxHASARGS (cx) ? sv_2mortal (newRV +_inc ((SV *)aa)) : &PL_sv_undef); + } PUTBACK; cb = hv_fetch ((HV *)SvRV (coro_current), " +_trace_sub_cb", sizeof ("_trace_sub_cb") - 1, 0); if (cb) call_sv (*cb, G_KEEPERR | G_EVAL | +G_VOID | G_DISCARD);

I tested with:

cd /tmp curl -sSL 'http://search.cpan.org/CPAN/authors/id/M/ML/MLEHMANN/Coro-6 +.49.tar.gz' | tar xz cd Coro-6.49 curl -sSL 'http://markmail.org/download.xqy?id=a5n4rqivzbn5zsqp&number +=1' | patch -p1 curl -sSL 'http://www.perlmonks.org/?abspart=1;displaytype=displaycode +;node_id=1165171;part=1' | patch -p2 perl Makefile.PL make test

I now get:

... t/07_eval.t ........... 1/5 *** glibc detected *** /home/ikegami/usr/p +erlbrew/perls/5.24.0t/bin/perl: realloc(): invalid next size: 0x00000 +00000a476d0 *** ...

Replies are listed 'Best First'.
Re^2: Coro woes
by dave_the_m (Monsignor) on Jun 08, 2016 at 22:15 UTC
    I think you also need this patch
    Note that that patch of mine was purely a blind proof of concept: the minimum required to make Coro compile under 5.24.0. I made no promise that it was either correct or sufficient.

    Dave.